diff options
author | arcadia-devtools <arcadia-devtools@yandex-team.ru> | 2022-04-01 14:26:09 +0300 |
---|---|---|
committer | arcadia-devtools <arcadia-devtools@yandex-team.ru> | 2022-04-01 14:26:09 +0300 |
commit | ce595f945b861180f6b229905dfd6e5f49fe19fe (patch) | |
tree | 89af7824eeba43d73d0ca09fccb6f05c2984ed84 | |
parent | 0e85e9e3a7daeae8354364dff1241ed2511d1461 (diff) | |
download | ydb-ce595f945b861180f6b229905dfd6e5f49fe19fe.tar.gz |
intermediate changes
ref:04088b5ce70b83f5eaf307a1743e0179beaeb170
28 files changed, 5631 insertions, 177 deletions
diff --git a/build/rules/autocheck.blacklist b/build/rules/autocheck.blacklist index 21f7237942..b58222bb99 100644 --- a/build/rules/autocheck.blacklist +++ b/build/rules/autocheck.blacklist @@ -32,3 +32,5 @@ metrika/analytics hrtech/frontend ci/registry market/front/apps +classifieds/verticals-backend +classifieds/schema-registry diff --git a/contrib/libs/re2/re2/prefilter_tree.cc b/contrib/libs/re2/re2/prefilter_tree.cc index fdf4e083c9..1e4eaffcae 100644 --- a/contrib/libs/re2/re2/prefilter_tree.cc +++ b/contrib/libs/re2/re2/prefilter_tree.cc @@ -8,7 +8,6 @@ #include <algorithm> #include <map> #include <memory> -#include <set> #include <string> #include <utility> #include <vector> @@ -36,9 +35,6 @@ PrefilterTree::PrefilterTree(int min_atom_len) PrefilterTree::~PrefilterTree() { for (size_t i = 0; i < prefilter_vec_.size(); i++) delete prefilter_vec_[i]; - - for (size_t i = 0; i < entries_.size(); i++) - delete entries_[i].parents; } void PrefilterTree::Add(Prefilter* prefilter) { @@ -67,7 +63,6 @@ void PrefilterTree::Compile(std::vector<std::string>* atom_vec) { compiled_ = true; - // TODO(junyer): Use std::unordered_set<Prefilter*> instead? NodeMap nodes; AssignUniqueIds(&nodes, atom_vec); @@ -78,25 +73,21 @@ void PrefilterTree::Compile(std::vector<std::string>* atom_vec) { // not miss out on any regexps triggering by getting rid of a // prefilter node. for (size_t i = 0; i < entries_.size(); i++) { - StdIntMap* parents = entries_[i].parents; - if (parents->size() > 8) { + std::vector<int>& parents = entries_[i].parents; + if (parents.size() > 8) { // This one triggers too many things. If all the parents are AND // nodes and have other things guarding them, then get rid of // this trigger. TODO(vsri): Adjust the threshold appropriately, // make it a function of total number of nodes? bool have_other_guard = true; - for (StdIntMap::iterator it = parents->begin(); - it != parents->end(); ++it) { + for (int parent : parents) { have_other_guard = have_other_guard && - (entries_[it->first].propagate_up_at_count > 1); + (entries_[parent].propagate_up_at_count > 1); } - if (have_other_guard) { - for (StdIntMap::iterator it = parents->begin(); - it != parents->end(); ++it) - entries_[it->first].propagate_up_at_count -= 1; - - parents->clear(); // Forget the parents + for (int parent : parents) + entries_[parent].propagate_up_at_count -= 1; + parents.clear(); // Forget the parents } } } @@ -217,20 +208,7 @@ void PrefilterTree::AssignUniqueIds(NodeMap* nodes, node->set_unique_id(canonical->unique_id()); } } - entries_.resize(nodes->size()); - - // Create parent StdIntMap for the entries. - for (int i = static_cast<int>(v.size()) - 1; i >= 0; i--) { - Prefilter* prefilter = v[i]; - if (prefilter == NULL) - continue; - - if (CanonicalNode(nodes, prefilter) != prefilter) - continue; - - Entry* entry = &entries_[prefilter->unique_id()]; - entry->parents = new StdIntMap(); - } + entries_.resize(unique_id); // Fill the entries. for (int i = static_cast<int>(v.size()) - 1; i >= 0; i--) { @@ -241,41 +219,34 @@ void PrefilterTree::AssignUniqueIds(NodeMap* nodes, if (CanonicalNode(nodes, prefilter) != prefilter) continue; - Entry* entry = &entries_[prefilter->unique_id()]; + int id = prefilter->unique_id(); switch (prefilter->op()) { default: - case Prefilter::ALL: LOG(DFATAL) << "Unexpected op: " << prefilter->op(); return; case Prefilter::ATOM: - entry->propagate_up_at_count = 1; + entries_[id].propagate_up_at_count = 1; break; case Prefilter::OR: case Prefilter::AND: { - std::set<int> uniq_child; + // For each child, we append our id to the child's list of + // parent ids... unless we happen to have done so already. + // The number of appends is the number of unique children, + // which allows correct upward propagation from AND nodes. + int up_count = 0; for (size_t j = 0; j < prefilter->subs()->size(); j++) { - Prefilter* child = (*prefilter->subs())[j]; - Prefilter* canonical = CanonicalNode(nodes, child); - if (canonical == NULL) { - LOG(DFATAL) << "Null canonical node"; - return; - } - int child_id = canonical->unique_id(); - uniq_child.insert(child_id); - // To the child, we want to add to parent indices. - Entry* child_entry = &entries_[child_id]; - if (child_entry->parents->find(prefilter->unique_id()) == - child_entry->parents->end()) { - (*child_entry->parents)[prefilter->unique_id()] = 1; + int child_id = (*prefilter->subs())[j]->unique_id(); + std::vector<int>& parents = entries_[child_id].parents; + if (parents.empty() || parents.back() != id) { + parents.push_back(id); + up_count++; } } - entry->propagate_up_at_count = prefilter->op() == Prefilter::AND - ? static_cast<int>(uniq_child.size()) - : 1; - + entries_[id].propagate_up_at_count = + prefilter->op() == Prefilter::AND ? up_count : 1; break; } } @@ -336,10 +307,7 @@ void PrefilterTree::PropagateMatch(const std::vector<int>& atom_ids, regexps->set(entry.regexps[i], 1); int c; // Pass trigger up to parents. - for (StdIntMap::iterator it = entry.parents->begin(); - it != entry.parents->end(); - ++it) { - int j = it->first; + for (int j : entry.parents) { const Entry& parent = entries_[j]; // Delay until all the children have succeeded. if (parent.propagate_up_at_count > 1) { @@ -369,12 +337,12 @@ void PrefilterTree::PrintDebugInfo(NodeMap* nodes) { LOG(ERROR) << "#Unique Nodes: " << entries_.size(); for (size_t i = 0; i < entries_.size(); i++) { - StdIntMap* parents = entries_[i].parents; + const std::vector<int>& parents = entries_[i].parents; const std::vector<int>& regexps = entries_[i].regexps; LOG(ERROR) << "EntryId: " << i - << " N: " << parents->size() << " R: " << regexps.size(); - for (StdIntMap::iterator it = parents->begin(); it != parents->end(); ++it) - LOG(ERROR) << it->first; + << " N: " << parents.size() << " R: " << regexps.size(); + for (int parent : parents) + LOG(ERROR) << parent; } LOG(ERROR) << "Map:"; for (NodeMap::const_iterator iter = nodes->begin(); diff --git a/contrib/libs/re2/re2/prefilter_tree.h b/contrib/libs/re2/re2/prefilter_tree.h index 5d73074d97..6de1c38eb5 100644 --- a/contrib/libs/re2/re2/prefilter_tree.h +++ b/contrib/libs/re2/re2/prefilter_tree.h @@ -59,7 +59,8 @@ class PrefilterTree { private: typedef SparseArray<int> IntMap; - typedef std::map<int, int> StdIntMap; + // TODO(junyer): Use std::unordered_set<Prefilter*> instead? + // It should be trivial to get rid of the stringification... typedef std::map<std::string, Prefilter*> NodeMap; // Each unique node has a corresponding Entry that helps in @@ -77,7 +78,7 @@ class PrefilterTree { // are two different nodes, but they share the atom 'def'. So when // 'def' matches, it triggers two parents, corresponding to the two // different OR nodes. - StdIntMap* parents; + std::vector<int> parents; // When this node is ready to trigger the parent, what are the // regexps that are triggered. diff --git a/contrib/libs/re2/re2/prog.h b/contrib/libs/re2/re2/prog.h index 4af012ab6f..72c9856dc1 100644 --- a/contrib/libs/re2/re2/prog.h +++ b/contrib/libs/re2/re2/prog.h @@ -361,7 +361,6 @@ class Prog { // Returns true on success, false on error. bool PossibleMatchRange(std::string* min, std::string* max, int maxlen); - // EXPERIMENTAL! SUBJECT TO CHANGE! // Outputs the program fanout into the given sparse array. void Fanout(SparseArray<int>* fanout); diff --git a/contrib/libs/re2/re2/stringpiece.h b/contrib/libs/re2/re2/stringpiece.h index ef7cef99e6..f09d141053 100644 --- a/contrib/libs/re2/re2/stringpiece.h +++ b/contrib/libs/re2/re2/stringpiece.h @@ -19,18 +19,13 @@ // // Arghh! I wish C++ literals were "string". -// Doing this simplifies the logic below. -#ifndef __has_include -#define __has_include(x) 0 -#endif - #include <stddef.h> #include <string.h> #include <algorithm> #include <iosfwd> #include <iterator> #include <string> -#if __has_include(<string_view>) && __cplusplus >= 201703L +#ifdef __cpp_lib_string_view #include <string_view> #endif #include <util/generic/string.h> @@ -58,7 +53,7 @@ class StringPiece { // expected. StringPiece() : data_(NULL), size_(0) {} -#if __has_include(<string_view>) && __cplusplus >= 201703L +#ifdef __cpp_lib_string_view StringPiece(const std::string_view& str) : data_(str.data()), size_(str.size()) {} #endif @@ -106,6 +101,14 @@ class StringPiece { size_ = len; } +#ifdef __cpp_lib_string_view + // Converts to `std::basic_string_view`. + operator std::basic_string_view<char, traits_type>() const { + if (!data_) return {}; + return std::basic_string_view<char, traits_type>(data_, size_); + } +#endif + // Converts to `std::basic_string`. template <typename A> explicit operator std::basic_string<char, traits_type, A>() const { diff --git a/contrib/libs/re2/util/mutex.h b/contrib/libs/re2/util/mutex.h index 158046bb5c..4b6772ae22 100644 --- a/contrib/libs/re2/util/mutex.h +++ b/contrib/libs/re2/util/mutex.h @@ -33,8 +33,8 @@ typedef SRWLOCK MutexType; #include <stdlib.h> typedef pthread_rwlock_t MutexType; #else -#include <mutex> -typedef std::mutex MutexType; +#include <shared_mutex> +typedef std::shared_mutex MutexType; #endif namespace re2 { @@ -95,8 +95,8 @@ Mutex::Mutex() { } Mutex::~Mutex() { } void Mutex::Lock() { mutex_.lock(); } void Mutex::Unlock() { mutex_.unlock(); } -void Mutex::ReaderLock() { Lock(); } // C++11 doesn't have std::shared_mutex. -void Mutex::ReaderUnlock() { Unlock(); } +void Mutex::ReaderLock() { mutex_.lock_shared(); } +void Mutex::ReaderUnlock() { mutex_.unlock_shared(); } #endif diff --git a/contrib/python/boto3/py3/.dist-info/METADATA b/contrib/python/boto3/py3/.dist-info/METADATA index 6125dbf1fd..78a95a7492 100644 --- a/contrib/python/boto3/py3/.dist-info/METADATA +++ b/contrib/python/boto3/py3/.dist-info/METADATA @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: boto3 -Version: 1.21.30 +Version: 1.21.31 Summary: The AWS SDK for Python Home-page: https://github.com/boto/boto3 Author: Amazon Web Services @@ -22,7 +22,7 @@ Classifier: Programming Language :: Python :: 3.10 Requires-Python: >= 3.6 License-File: LICENSE License-File: NOTICE -Requires-Dist: botocore (<1.25.0,>=1.24.30) +Requires-Dist: botocore (<1.25.0,>=1.24.31) Requires-Dist: jmespath (<2.0.0,>=0.7.1) Requires-Dist: s3transfer (<0.6.0,>=0.5.0) Provides-Extra: crt diff --git a/contrib/python/boto3/py3/boto3/__init__.py b/contrib/python/boto3/py3/boto3/__init__.py index 2c510da48c..02d5258cc5 100644 --- a/contrib/python/boto3/py3/boto3/__init__.py +++ b/contrib/python/boto3/py3/boto3/__init__.py @@ -17,7 +17,7 @@ from boto3.compat import _warn_deprecated_python from boto3.session import Session __author__ = 'Amazon Web Services' -__version__ = '1.21.30' +__version__ = '1.21.31' # The default Boto3 session; autoloaded when needed. diff --git a/contrib/python/botocore/py3/.dist-info/METADATA b/contrib/python/botocore/py3/.dist-info/METADATA index bf92ec3de4..0cc195c515 100644 --- a/contrib/python/botocore/py3/.dist-info/METADATA +++ b/contrib/python/botocore/py3/.dist-info/METADATA @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: botocore -Version: 1.24.29 +Version: 1.24.31 Summary: Low-level, data-driven core of boto 3. Home-page: https://github.com/boto/botocore Author: Amazon Web Services diff --git a/contrib/python/botocore/py3/botocore/__init__.py b/contrib/python/botocore/py3/botocore/__init__.py index a7d12d5158..efe005d931 100644 --- a/contrib/python/botocore/py3/botocore/__init__.py +++ b/contrib/python/botocore/py3/botocore/__init__.py @@ -16,7 +16,7 @@ import logging import os import re -__version__ = '1.24.29' +__version__ = '1.24.31' class NullHandler(logging.Handler): diff --git a/contrib/python/botocore/py3/botocore/data/auditmanager/2017-07-25/service-2.json b/contrib/python/botocore/py3/botocore/data/auditmanager/2017-07-25/service-2.json index c7fd62b070..9e74cdc7ba 100644 --- a/contrib/python/botocore/py3/botocore/data/auditmanager/2017-07-25/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/auditmanager/2017-07-25/service-2.json @@ -266,7 +266,7 @@ {"shape":"InternalServerException"}, {"shape":"ResourceNotFoundException"} ], - "documentation":"<p> Deregisters an account in Audit Manager. </p>" + "documentation":"<p> Deregisters an account in Audit Manager. </p> <note> <p>When you deregister your account from Audit Manager, your data isn’t deleted. If you want to delete your resource data, you must perform that task separately before you deregister your account. Either, you can do this in the Audit Manager console. Or, you can use one of the delete API operations that are provided by Audit Manager. </p> <p>To delete your Audit Manager resource data, see the following instructions: </p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessment.html\">DeleteAssessment</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/delete-assessment.html\">Deleting an assessment</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFramework.html\">DeleteAssessmentFramework</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/delete-custom-framework.html\">Deleting a custom framework</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFrameworkShare.html\">DeleteAssessmentFrameworkShare</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/deleting-shared-framework-requests.html\">Deleting a share request</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentReport.html\">DeleteAssessmentReport</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/generate-assessment-report.html#delete-assessment-report-steps\">Deleting an assessment report</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteControl.html\">DeleteControl</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/delete-controls.html\">Deleting a custom control</a> in the <i>Audit Manager User Guide</i>)</p> </li> </ul> <p>At this time, Audit Manager doesn't provide an option to delete evidence. All available delete operations are listed above.</p> </note>" }, "DeregisterOrganizationAdminAccount":{ "name":"DeregisterOrganizationAdminAccount", @@ -282,7 +282,7 @@ {"shape":"InternalServerException"}, {"shape":"ResourceNotFoundException"} ], - "documentation":"<p>Removes the specified member Amazon Web Services account as a delegated administrator for Audit Manager. </p> <important> <p>When you remove a delegated administrator from your Audit Manager settings, you continue to have access to the evidence that you previously collected under that account. This is also the case when you deregister a delegated administrator from Audit Manager. However, Audit Manager will stop collecting and attaching evidence to that delegated administrator account moving forward.</p> </important>" + "documentation":"<p>Removes the specified Amazon Web Services account as a delegated administrator for Audit Manager. </p> <important> <p>When you remove a delegated administrator from your Audit Manager settings, you continue to have access to the evidence that you previously collected under that account. This is also the case when you deregister a delegated administrator from Organizations. However, Audit Manager will stop collecting and attaching evidence to that delegated administrator account moving forward.</p> </important> <note> <p>When you deregister a delegated administrator account for Audit Manager, the data for that account isn’t deleted. If you want to delete resource data for a delegated administrator account, you must perform that task separately before you deregister the account. Either, you can do this in the Audit Manager console. Or, you can use one of the delete API operations that are provided by Audit Manager. </p> <p>To delete your Audit Manager resource data, see the following instructions: </p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessment.html\">DeleteAssessment</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/delete-assessment.html\">Deleting an assessment</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFramework.html\">DeleteAssessmentFramework</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/delete-custom-framework.html\">Deleting a custom framework</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFrameworkShare.html\">DeleteAssessmentFrameworkShare</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/deleting-shared-framework-requests.html\">Deleting a share request</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentReport.html\">DeleteAssessmentReport</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/generate-assessment-report.html#delete-assessment-report-steps\">Deleting an assessment report</a> in the <i>Audit Manager User Guide</i>)</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteControl.html\">DeleteControl</a> (see also: <a href=\"https://docs.aws.amazon.com/audit-manager/latest/userguide/delete-controls.html\">Deleting a custom control</a> in the <i>Audit Manager User Guide</i>)</p> </li> </ul> <p>At this time, Audit Manager doesn't provide an option to delete evidence. All available delete operations are listed above.</p> </note>" }, "DisassociateAssessmentReportEvidenceFolder":{ "name":"DisassociateAssessmentReportEvidenceFolder", diff --git a/contrib/python/botocore/py3/botocore/data/cloudcontrol/2021-09-30/service-2.json b/contrib/python/botocore/py3/botocore/data/cloudcontrol/2021-09-30/service-2.json index 2be6e4f7be..73367e6623 100644 --- a/contrib/python/botocore/py3/botocore/data/cloudcontrol/2021-09-30/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/cloudcontrol/2021-09-30/service-2.json @@ -26,7 +26,7 @@ {"shape":"RequestTokenNotFoundException"}, {"shape":"ConcurrentModificationException"} ], - "documentation":"<p>Cancels the specified resource operation request. For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-manage-requests.html#resource-operations-manage-requests-cancel\">Canceling resource operation requests</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>Only resource operations requests with a status of <code>PENDING</code> or <code>IN_PROGRESS</code> can be cancelled.</p>", + "documentation":"<p>Cancels the specified resource operation request. For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-manage-requests.html#resource-operations-manage-requests-cancel\">Canceling resource operation requests</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>Only resource operations requests with a status of <code>PENDING</code> or <code>IN_PROGRESS</code> can be canceled.</p>", "idempotent":true }, "CreateResource":{ @@ -118,7 +118,7 @@ {"shape":"PrivateTypeException"}, {"shape":"HandlerFailureException"} ], - "documentation":"<p>Returns information about the current state of the specified resource. For details, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-read.html\">Reading a resource's current state</a>.</p> <p>You can use this action to return information about an existing resource in your account and Amazon Web Services Region, whether or not those resources were provisioned using Cloud Control API.</p>" + "documentation":"<p>Returns information about the current state of the specified resource. For details, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-read.html\">Reading a resource's current state</a>.</p> <p>You can use this action to return information about an existing resource in your account and Amazon Web Services Region, whether those resources were provisioned using Cloud Control API.</p>" }, "GetResourceRequestStatus":{ "name":"GetResourceRequestStatus", @@ -141,7 +141,7 @@ }, "input":{"shape":"ListResourceRequestsInput"}, "output":{"shape":"ListResourceRequestsOutput"}, - "documentation":"<p>Returns existing resource operation requests. This includes requests of all status types. For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-manage-requests.html#resource-operations-manage-requests-list\">Listing active resource operation requests</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <note> <p>Resource operation requests expire after seven days.</p> </note>" + "documentation":"<p>Returns existing resource operation requests. This includes requests of all status types. For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-manage-requests.html#resource-operations-manage-requests-list\">Listing active resource operation requests</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <note> <p>Resource operation requests expire after 7 days.</p> </note>" }, "ListResources":{ "name":"ListResources", @@ -170,7 +170,7 @@ {"shape":"PrivateTypeException"}, {"shape":"HandlerFailureException"} ], - "documentation":"<p>Returns information about the specified resources. For more information, see <a href=\"cloudcontrolapi/latest/userguide/resource-operations-list.html\">Discovering resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>You can use this action to return information about existing resources in your account and Amazon Web Services Region, whether or not those resources were provisioned using Cloud Control API.</p>" + "documentation":"<p>Returns information about the specified resources. For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html\">Discovering resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>You can use this action to return information about existing resources in your account and Amazon Web Services Region, whether those resources were provisioned using Cloud Control API.</p>" }, "UpdateResource":{ "name":"UpdateResource", @@ -201,7 +201,7 @@ {"shape":"PrivateTypeException"}, {"shape":"HandlerFailureException"} ], - "documentation":"<p>Updates the specified property values in the resource.</p> <p>You specify your resource property updates as a list of patch operations contained in a JSON patch document that adheres to the <a href=\"https://datatracker.ietf.org/doc/html/rfc6902\"> <i>RFC 6902 - JavaScript Object Notation (JSON) Patch</i> </a> standard.</p> <p>For details on how Cloud Control API performs resource update operations, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-update.html\">Updating a resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>After you have initiated a resource update request, you can monitor the progress of your request by calling <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/APIReference/API_GetResourceRequestStatus.html\">GetResourceRequestStatus</a> using the <code>RequestToken</code> of the <code>ProgressEvent</code> returned by <code>UpdateResource</code>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the <a href=\"https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html\">Resource and property types reference</a> in the <i>Amazon Web Services CloudFormation Users Guide</i>.</p>" + "documentation":"<p>Updates the specified property values in the resource.</p> <p>You specify your resource property updates as a list of patch operations contained in a JSON patch document that adheres to the <a href=\"https://datatracker.ietf.org/doc/html/rfc6902\"> <i>RFC 6902 - JavaScript Object Notation (JSON) Patch</i> </a> standard.</p> <p>For details on how Cloud Control API performs resource update operations, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-update.html\">Updating a resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>After you have initiated a resource update request, you can monitor the progress of your request by calling <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/APIReference/API_GetResourceRequestStatus.html\">GetResourceRequestStatus</a> using the <code>RequestToken</code> of the <code>ProgressEvent</code> returned by <code>UpdateResource</code>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the <a href=\"https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html\">Resource and property types reference</a> in the <i>CloudFormation Users Guide</i>.</p>" } }, "shapes":{ @@ -240,7 +240,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>The specified client token has already been used in another resource request.</p> <p>It is best practice for client tokens to be unique for each resource operation request. However, client token expire after 36 hours.</p>", + "documentation":"<p>The specified client token has already been used in another resource request.</p> <p>It's best practice for client tokens to be unique for each resource operation request. However, client token expire after 36 hours.</p>", "exception":true }, "ConcurrentModificationException":{ @@ -276,7 +276,7 @@ }, "RoleArn":{ "shape":"RoleArn", - "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" }, "ClientToken":{ "shape":"ClientToken", @@ -285,7 +285,7 @@ }, "DesiredState":{ "shape":"Properties", - "documentation":"<p>Structured data format representing the desired state of the resource, consisting of that resource's properties and their desired values. </p> <note> <p>Cloud Control API currently supports JSON as a structured data format.</p> </note> <p>Specify the desired state as one of the following:</p> <ul> <li> <p>A JSON blob</p> </li> <li> <p>A local path containing the desired state in JSON data format</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html#resource-operations-create-desiredstate\">Composing the desired state of the resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the <a href=\"https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html\">Resource and property types reference</a> in the <i>Amazon Web Services CloudFormation Users Guide</i>.</p>" + "documentation":"<p>Structured data format representing the desired state of the resource, consisting of that resource's properties and their desired values.</p> <note> <p>Cloud Control API currently supports JSON as a structured data format.</p> </note> <p>Specify the desired state as one of the following:</p> <ul> <li> <p>A JSON blob</p> </li> <li> <p>A local path containing the desired state in JSON data format</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html#resource-operations-create-desiredstate\">Composing the desired state of the resource</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p> <p>For more information about the properties of a specific resource, refer to the related topic for the resource in the <a href=\"https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html\">Resource and property types reference</a> in the <i>CloudFormation Users Guide</i>.</p>" } } }, @@ -315,7 +315,7 @@ }, "RoleArn":{ "shape":"RoleArn", - "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" }, "ClientToken":{ "shape":"ClientToken", @@ -324,7 +324,7 @@ }, "Identifier":{ "shape":"Identifier", - "documentation":"<p>The identifier for the resource.</p> <p>You can specify the primary identifier, or any secondary identifier defined for the resource type in its resource schema. You can only specify one identifier. Primary identifiers can be specified as a string or JSON; secondary identifiers must be specified as JSON.</p> <p>For compound primary identifiers (that is, one that consists of multiple resource properties strung together), to specify the primary identifier as a string, list the property values <i>in the order they are specified</i> in the primary identifier definition, separated by <code>|</code>. </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-identifier.html\">Identifying resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The identifier for the resource.</p> <p>You can specify the primary identifier, or any secondary identifier defined for the resource type in its resource schema. You can only specify one identifier. Primary identifiers can be specified as a string or JSON; secondary identifiers must be specified as JSON.</p> <p>For compound primary identifiers (that is, one that consists of multiple resource properties strung together), to specify the primary identifier as a string, list the property values <i>in the order they are specified</i> in the primary identifier definition, separated by <code>|</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-identifier.html\">Identifying resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" } } }, @@ -347,7 +347,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>The resource handler has returned that the downstream service generated an error that does not map to any other handler error code.</p>", + "documentation":"<p>The resource handler has returned that the downstream service generated an error that doesn't map to any other handler error code.</p>", "exception":true }, "GetResourceInput":{ @@ -367,11 +367,11 @@ }, "RoleArn":{ "shape":"RoleArn", - "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" }, "Identifier":{ "shape":"Identifier", - "documentation":"<p>The identifier for the resource.</p> <p>You can specify the primary identifier, or any secondary identifier defined for the resource type in its resource schema. You can only specify one identifier. Primary identifiers can be specified as a string or JSON; secondary identifiers must be specified as JSON.</p> <p>For compound primary identifiers (that is, one that consists of multiple resource properties strung together), to specify the primary identifier as a string, list the property values <i>in the order they are specified</i> in the primary identifier definition, separated by <code>|</code>. </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-identifier.html\">Identifying resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The identifier for the resource.</p> <p>You can specify the primary identifier, or any secondary identifier defined for the resource type in its resource schema. You can only specify one identifier. Primary identifiers can be specified as a string or JSON; secondary identifiers must be specified as JSON.</p> <p>For compound primary identifiers (that is, one that consists of multiple resource properties strung together), to specify the primary identifier as a string, list the property values <i>in the order they are specified</i> in the primary identifier definition, separated by <code>|</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-identifier.html\">Identifying resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" } } }, @@ -512,7 +512,7 @@ }, "RoleArn":{ "shape":"RoleArn", - "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" }, "NextToken":{ "shape":"HandlerNextToken", @@ -520,7 +520,7 @@ }, "MaxResults":{ "shape":"MaxResults", - "documentation":"<p>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 <code>NextToken</code> value that you can assign to the <code>NextToken</code> request parameter to get the next set of results.</p> <p>The default is <code>20</code>.</p>" + "documentation":"<p>Reserved.</p>" }, "ResourceModel":{ "shape":"Properties", @@ -555,7 +555,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>The resource handler has returned that the request could not be completed due to networking issues, such as a failure to receive a response from the server.</p>", + "documentation":"<p>The resource handler has returned that the request couldn't be completed due to networking issues, such as a failure to receive a response from the server.</p>", "exception":true }, "NextToken":{ @@ -577,7 +577,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>One or more properties included in this resource operation are defined as create-only, and therefore cannot be updated.</p>", + "documentation":"<p>One or more properties included in this resource operation are defined as create-only, and therefore can't be updated.</p>", "exception":true }, "Operation":{ @@ -611,7 +611,6 @@ "type":"string", "max":65536, "min":1, - "pattern":"(.|\\s)*", "sensitive":true }, "PrivateTypeException":{ @@ -619,7 +618,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>Cloud Control API has not received a valid response from the resource handler, due to a configuration error. This includes issues such as the resource handler returning an invalid response, or timing out.</p>", + "documentation":"<p>Cloud Control API hasn't received a valid response from the resource handler, due to a configuration error. This includes issues such as the resource handler returning an invalid response, or timing out.</p>", "exception":true }, "ProgressEvent":{ @@ -643,7 +642,7 @@ }, "OperationStatus":{ "shape":"OperationStatus", - "documentation":"<p>The current status of the resource operation request.</p> <ul> <li> <p> <code>PENDING</code>: The resource operation has not yet started.</p> </li> <li> <p> <code>IN_PROGRESS</code>: The resource operation is currently in progress.</p> </li> <li> <p> <code>SUCCESS</code>: The resource operation has successfully completed.</p> </li> <li> <p> <code>FAILED</code>: The resource operation has failed. Refer to the error code and status message for more information.</p> </li> <li> <p> <code>CANCEL_IN_PROGRESS</code>: The resource operation is in the process of being canceled.</p> </li> <li> <p> <code>CANCEL_COMPLETE</code>: The resource operation has been canceled.</p> </li> </ul>" + "documentation":"<p>The current status of the resource operation request.</p> <ul> <li> <p> <code>PENDING</code>: The resource operation hasn't yet started.</p> </li> <li> <p> <code>IN_PROGRESS</code>: The resource operation is currently in progress.</p> </li> <li> <p> <code>SUCCESS</code>: The resource operation has successfully completed.</p> </li> <li> <p> <code>FAILED</code>: The resource operation has failed. Refer to the error code and status message for more information.</p> </li> <li> <p> <code>CANCEL_IN_PROGRESS</code>: The resource operation is in the process of being canceled.</p> </li> <li> <p> <code>CANCEL_COMPLETE</code>: The resource operation has been canceled.</p> </li> </ul>" }, "EventTime":{ "shape":"Timestamp", @@ -672,7 +671,6 @@ "type":"string", "max":16384, "min":1, - "pattern":"(.|\\s)*", "sensitive":true }, "RequestToken":{ @@ -686,7 +684,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>A resource operation with the specified request token cannot be found.</p>", + "documentation":"<p>A resource operation with the specified request token can't be found.</p>", "exception":true }, "ResourceConflictException":{ @@ -694,7 +692,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>The resource is temporarily unavailable to be acted upon. For example, if the resource is currently undergoing an operation and cannot be acted upon until that operation is finished.</p>", + "documentation":"<p>The resource is temporarily unavailable to be acted upon. For example, if the resource is currently undergoing an operation and can't be acted upon until that operation is finished.</p>", "exception":true }, "ResourceDescription":{ @@ -720,7 +718,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>A resource with the specified identifier cannot be found.</p>", + "documentation":"<p>A resource with the specified identifier can't be found.</p>", "exception":true }, "ResourceRequestStatusFilter":{ @@ -732,7 +730,7 @@ }, "OperationStatuses":{ "shape":"OperationStatuses", - "documentation":"<p>The operation statuses to include in the filter.</p> <ul> <li> <p> <code>PENDING</code>: The operation has been requested, but not yet initiated.</p> </li> <li> <p> <code>IN_PROGRESS</code>: The operation is currently in progress.</p> </li> <li> <p> <code>SUCCESS</code>: The operation has successfully completed.</p> </li> <li> <p> <code>FAILED</code>: The operation has failed.</p> </li> <li> <p> <code>CANCEL_IN_PROGRESS</code>: The operation is currently in the process of being canceled.</p> </li> <li> <p> <code>CANCEL_COMPLETE</code>: The operation has been canceled.</p> </li> </ul>" + "documentation":"<p>The operation statuses to include in the filter.</p> <ul> <li> <p> <code>PENDING</code>: The operation has been requested, but not yet initiated.</p> </li> <li> <p> <code>IN_PROGRESS</code>: The operation is in progress.</p> </li> <li> <p> <code>SUCCESS</code>: The operation completed.</p> </li> <li> <p> <code>FAILED</code>: The operation failed.</p> </li> <li> <p> <code>CANCEL_IN_PROGRESS</code>: The operation is in the process of being canceled.</p> </li> <li> <p> <code>CANCEL_COMPLETE</code>: The operation has been canceled.</p> </li> </ul>" } }, "documentation":"<p>The filter criteria to use in determining the requests returned.</p>" @@ -765,8 +763,7 @@ }, "StatusMessage":{ "type":"string", - "max":1024, - "pattern":"(.|\\s)*" + "max":1024 }, "ThrottlingException":{ "type":"structure", @@ -788,7 +785,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>The specified extension does not exist in the CloudFormation registry.</p>", + "documentation":"<p>The specified extension doesn't exist in the CloudFormation registry.</p>", "exception":true }, "TypeVersionId":{ @@ -802,7 +799,7 @@ "members":{ "Message":{"shape":"ErrorMessage"} }, - "documentation":"<p>The specified resource does not support this resource operation.</p>", + "documentation":"<p>The specified resource doesn't support this resource operation.</p>", "exception":true }, "UpdateResourceInput":{ @@ -823,7 +820,7 @@ }, "RoleArn":{ "shape":"RoleArn", - "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role for Cloud Control API to use when performing this resource operation. The role specified must have the permissions required for this operation. The necessary permissions for each event handler are defined in the <code> <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-handlers\">handlers</a> </code> section of the <a href=\"https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html\">resource type definition schema</a>.</p> <p>If you do not specify a role, Cloud Control API uses a temporary session created using your Amazon Web Services user credentials.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations.html#resource-operations-permissions\">Specifying credentials</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" }, "ClientToken":{ "shape":"ClientToken", @@ -832,7 +829,7 @@ }, "Identifier":{ "shape":"Identifier", - "documentation":"<p>The identifier for the resource.</p> <p>You can specify the primary identifier, or any secondary identifier defined for the resource type in its resource schema. You can only specify one identifier. Primary identifiers can be specified as a string or JSON; secondary identifiers must be specified as JSON.</p> <p>For compound primary identifiers (that is, one that consists of multiple resource properties strung together), to specify the primary identifier as a string, list the property values <i>in the order they are specified</i> in the primary identifier definition, separated by <code>|</code>. </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-identifier.html\">Identifying resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" + "documentation":"<p>The identifier for the resource.</p> <p>You can specify the primary identifier, or any secondary identifier defined for the resource type in its resource schema. You can only specify one identifier. Primary identifiers can be specified as a string or JSON; secondary identifiers must be specified as JSON.</p> <p>For compound primary identifiers (that is, one that consists of multiple resource properties strung together), to specify the primary identifier as a string, list the property values <i>in the order they are specified</i> in the primary identifier definition, separated by <code>|</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-identifier.html\">Identifying resources</a> in the <i>Amazon Web Services Cloud Control API User Guide</i>.</p>" }, "PatchDocument":{ "shape":"PatchDocument", @@ -850,5 +847,5 @@ } } }, - "documentation":"<p>Use Amazon Web Services Cloud Control API to create, read, update, delete, and list (CRUD-L) your cloud resources that belong to a wide range of services--both Amazon Web Services and third-party. With the Cloud Control API standardized set of application programming interfaces (APIs), you can perform CRUD-L operations on any supported resources in your Amazon Web Services account. Using Cloud Control API, you won't have to generate code or scripts specific to each individual service responsible for those resources.</p> <p>For more information about Amazon Web Services Cloud Control API, see the <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/what-is-cloudcontrolapi.html\">Amazon Web Services Cloud Control API User Guide</a>.</p>" + "documentation":"<p>For more information about Amazon Web Services Cloud Control API, see the <a href=\"https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/what-is-cloudcontrolapi.html\">Amazon Web Services Cloud Control API User Guide</a>.</p>" } diff --git a/contrib/python/botocore/py3/botocore/data/databrew/2017-07-25/service-2.json b/contrib/python/botocore/py3/botocore/data/databrew/2017-07-25/service-2.json index dc91cb861e..e36dc43969 100644 --- a/contrib/python/botocore/py3/botocore/data/databrew/2017-07-25/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/databrew/2017-07-25/service-2.json @@ -1479,7 +1479,7 @@ "documentation":"<p>The optional filter expression structure to apply additional matching criteria to the parameter.</p>" } }, - "documentation":"<p>Represents a dataset paramater that defines type and conditions for a parameter in the Amazon S3 path of the dataset.</p>" + "documentation":"<p>Represents a dataset parameter that defines type and conditions for a parameter in the Amazon S3 path of the dataset.</p>" }, "Date":{"type":"timestamp"}, "DatetimeFormat":{ @@ -2274,7 +2274,7 @@ }, "Order":{ "shape":"Order", - "documentation":"<p>A criteria to use for Amazon S3 files sorting before their selection. By default uses DESCENDING order, i.e. most recent files are selected first. Anotherpossible value is ASCENDING.</p>" + "documentation":"<p>A criteria to use for Amazon S3 files sorting before their selection. By default uses DESCENDING order, i.e. most recent files are selected first. Another possible value is ASCENDING.</p>" } }, "documentation":"<p>Represents a limit imposed on number of Amazon S3 files that should be selected for a dataset from a connected Amazon S3 path.</p>" @@ -2353,7 +2353,8 @@ "CSV", "JSON", "PARQUET", - "EXCEL" + "EXCEL", + "ORC" ] }, "InternalServerException":{ @@ -3437,7 +3438,7 @@ }, "CheckExpression":{ "shape":"Expression", - "documentation":"<p>The expression which includes column references, condition names followed by variable references, possibly grouped and combined with other conditions. For example, <code>(:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and (:col1 ends_with :suffix1 or :col1 ends_with :suffix2)</code>. Column and value references are substitution variables that should start with the ':' symbol. Depending on the context, substitution variables' values can be either an actual value or a column name. These values are defined in the SubstitutionMap. If a CheckExpression starts with a column reference, then ColumnSelectors in the rule should be null. If ColumnSelectors has been defined, then there should be no columnn reference in the left side of a condition, for example, <code>is_between :val1 and :val2</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/databrew/latest/dg/profile.data-quality-available-checks.html\">Available checks</a> </p>" + "documentation":"<p>The expression which includes column references, condition names followed by variable references, possibly grouped and combined with other conditions. For example, <code>(:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and (:col1 ends_with :suffix1 or :col1 ends_with :suffix2)</code>. Column and value references are substitution variables that should start with the ':' symbol. Depending on the context, substitution variables' values can be either an actual value or a column name. These values are defined in the SubstitutionMap. If a CheckExpression starts with a column reference, then ColumnSelectors in the rule should be null. If ColumnSelectors has been defined, then there should be no column reference in the left side of a condition, for example, <code>is_between :val1 and :val2</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/databrew/latest/dg/profile.data-quality-available-checks.html\">Available checks</a> </p>" }, "SubstitutionMap":{ "shape":"ValuesMap", diff --git a/contrib/python/botocore/py3/botocore/data/ec2/2016-11-15/service-2.json b/contrib/python/botocore/py3/botocore/data/ec2/2016-11-15/service-2.json index ce669bdd6f..9b0af1a8ff 100644 --- a/contrib/python/botocore/py3/botocore/data/ec2/2016-11-15/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/ec2/2016-11-15/service-2.json @@ -4172,6 +4172,16 @@ "output":{"shape":"ModifyInstanceEventWindowResult"}, "documentation":"<p>Modifies the specified event window.</p> <p>You can define either a set of time ranges or a cron expression when modifying the event window, but not both.</p> <p>To modify the targets associated with the event window, use the <a>AssociateInstanceEventWindow</a> and <a>DisassociateInstanceEventWindow</a> API.</p> <p>If Amazon Web Services has already scheduled an event, modifying an event window won't change the time of the scheduled event.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/event-windows.html\">Define event windows for scheduled events</a> in the <i>Amazon EC2 User Guide</i>.</p>" }, + "ModifyInstanceMaintenanceOptions":{ + "name":"ModifyInstanceMaintenanceOptions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ModifyInstanceMaintenanceOptionsRequest"}, + "output":{"shape":"ModifyInstanceMaintenanceOptionsResult"}, + "documentation":"<p>Modifies the recovery behavior of your instance to disable simplified automatic recovery or set the recovery behavior to default. The default configuration will not enable simplified automatic recovery for an unsupported instance type. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery\">Simplified automatic recovery</a>.</p>" + }, "ModifyInstanceMetadataOptions":{ "name":"ModifyInstanceMetadataOptions", "http":{ @@ -28919,6 +28929,11 @@ "shape":"String", "documentation":"<p>The IPv6 address assigned to the instance.</p>", "locationName":"ipv6Address" + }, + "MaintenanceOptions":{ + "shape":"InstanceMaintenanceOptions", + "documentation":"<p>Provides information on the recovery and maintenance options of your instance.</p>", + "locationName":"maintenanceOptions" } }, "documentation":"<p>Describes an instance.</p>" @@ -29029,6 +29044,13 @@ "enclaveOptions" ] }, + "InstanceAutoRecoveryState":{ + "type":"string", + "enum":[ + "disabled", + "default" + ] + }, "InstanceBlockDeviceMapping":{ "type":"structure", "members":{ @@ -29560,6 +29582,27 @@ "locationName":"item" } }, + "InstanceMaintenanceOptions":{ + "type":"structure", + "members":{ + "AutoRecovery":{ + "shape":"InstanceAutoRecoveryState", + "documentation":"<p>Provides information on the current automatic recovery behavior of your instance.</p>", + "locationName":"autoRecovery" + } + }, + "documentation":"<p>The maintenance options for the instance.</p>" + }, + "InstanceMaintenanceOptionsRequest":{ + "type":"structure", + "members":{ + "AutoRecovery":{ + "shape":"InstanceAutoRecoveryState", + "documentation":"<p>Disables the automatic recovery behavior of your instance or sets it to default. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery\">Simplified automatic recovery</a>.</p>" + } + }, + "documentation":"<p>The maintenance options for the instance.</p>" + }, "InstanceMarketOptionsRequest":{ "type":"structure", "members":{ @@ -32643,6 +32686,13 @@ }, "documentation":"<p>Describes a launch template and overrides.</p>" }, + "LaunchTemplateAutoRecoveryState":{ + "type":"string", + "enum":[ + "default", + "disabled" + ] + }, "LaunchTemplateBlockDeviceMapping":{ "type":"structure", "members":{ @@ -33019,6 +33069,27 @@ "locationName":"item" } }, + "LaunchTemplateInstanceMaintenanceOptions":{ + "type":"structure", + "members":{ + "AutoRecovery":{ + "shape":"LaunchTemplateAutoRecoveryState", + "documentation":"<p>Disables the automatic recovery behavior of your instance or sets it to default.</p>", + "locationName":"autoRecovery" + } + }, + "documentation":"<p>The maintenance options of your instance.</p>" + }, + "LaunchTemplateInstanceMaintenanceOptionsRequest":{ + "type":"structure", + "members":{ + "AutoRecovery":{ + "shape":"LaunchTemplateAutoRecoveryState", + "documentation":"<p>Disables the automatic recovery behavior of your instance or sets it to default. For more information, see <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery\">Simplified automatic recovery</a>.</p>" + } + }, + "documentation":"<p>The maintenance options of your instance.</p>" + }, "LaunchTemplateInstanceMarketOptions":{ "type":"structure", "members":{ @@ -34882,7 +34953,7 @@ "members":{ "Return":{ "shape":"Boolean", - "documentation":"<p>Is <code>true</code> if the request succeeds, and an error otherwise.</p>", + "documentation":"<p>If the request succeeds, the response returns <code>true</code>. If the request fails, no response is returned, and instead an error message is returned.</p>", "locationName":"return" } } @@ -35314,6 +35385,39 @@ } } }, + "ModifyInstanceMaintenanceOptionsRequest":{ + "type":"structure", + "required":["InstanceId"], + "members":{ + "InstanceId":{ + "shape":"InstanceId", + "documentation":"<p>The ID of the instance.</p>" + }, + "AutoRecovery":{ + "shape":"InstanceAutoRecoveryState", + "documentation":"<p>Disables the automatic recovery behavior of your instance or sets it to default.</p>" + }, + "DryRun":{ + "shape":"Boolean", + "documentation":"<p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>" + } + } + }, + "ModifyInstanceMaintenanceOptionsResult":{ + "type":"structure", + "members":{ + "InstanceId":{ + "shape":"String", + "documentation":"<p>The ID of the instance.</p>", + "locationName":"instanceId" + }, + "AutoRecovery":{ + "shape":"InstanceAutoRecoveryState", + "documentation":"<p>Provides information on the current automatic recovery behavior of your instance.</p>", + "locationName":"autoRecovery" + } + } + }, "ModifyInstanceMetadataOptionsRequest":{ "type":"structure", "required":["InstanceId"], @@ -35916,7 +36020,7 @@ "members":{ "Return":{ "shape":"Boolean", - "documentation":"<p>Is <code>true</code> if the request succeeds, and an error otherwise.</p>", + "documentation":"<p>If the request succeeds, the response returns <code>true</code>. If the request fails, no response is returned, and instead an error message is returned.</p>", "locationName":"return" } }, @@ -41207,6 +41311,10 @@ "PrivateDnsNameOptions":{ "shape":"LaunchTemplatePrivateDnsNameOptionsRequest", "documentation":"<p>The options for the instance hostname. The default values are inherited from the subnet.</p>" + }, + "MaintenanceOptions":{ + "shape":"LaunchTemplateInstanceMaintenanceOptionsRequest", + "documentation":"<p>The maintenance options for the instance.</p>" } }, "documentation":"<p>The information to include in the launch template.</p>" @@ -42113,7 +42221,7 @@ "members":{ "Attribute":{ "shape":"InstanceAttributeName", - "documentation":"<p>The attribute to reset.</p> <important> <p>You can only reset the following attributes: <code>kernel</code> | <code>ramdisk</code> | <code>sourceDestCheck</code>. To change an instance attribute, use <a>ModifyInstanceAttribute</a>.</p> </important>", + "documentation":"<p>The attribute to reset.</p> <important> <p>You can only reset the following attributes: <code>kernel</code> | <code>ramdisk</code> | <code>sourceDestCheck</code>.</p> </important>", "locationName":"attribute" }, "DryRun":{ @@ -42470,6 +42578,11 @@ "shape":"LaunchTemplatePrivateDnsNameOptions", "documentation":"<p>The options for the instance hostname.</p>", "locationName":"privateDnsNameOptions" + }, + "MaintenanceOptions":{ + "shape":"LaunchTemplateInstanceMaintenanceOptions", + "documentation":"<p>The maintenance options for your instance.</p>", + "locationName":"maintenanceOptions" } }, "documentation":"<p>The information for a launch template. </p>" @@ -43310,6 +43423,10 @@ "PrivateDnsNameOptions":{ "shape":"PrivateDnsNameOptionsRequest", "documentation":"<p>The options for the instance hostname. The default values are inherited from the subnet.</p>" + }, + "MaintenanceOptions":{ + "shape":"InstanceMaintenanceOptionsRequest", + "documentation":"<p>The maintenance and recovery options for the instance.</p>" } } }, diff --git a/contrib/python/botocore/py3/botocore/data/endpoints.json b/contrib/python/botocore/py3/botocore/data/endpoints.json index 9c70d4a8f2..1a56fa3ff8 100644 --- a/contrib/python/botocore/py3/botocore/data/endpoints.json +++ b/contrib/python/botocore/py3/botocore/data/endpoints.json @@ -2866,6 +2866,94 @@ "us-east-1" : { } } }, + "data-ats.iot" : { + "defaults" : { + "credentialScope" : { + "service" : "iotdata" + }, + "protocols" : [ "https" ] + }, + "endpoints" : { + "ap-east-1" : { }, + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "data.iot-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.ca-central-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.us-west-2.amazonaws.com" + }, + "me-south-1" : { }, + "sa-east-1" : { }, + "us-east-1" : { + "variants" : [ { + "hostname" : "data.iot-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "data.iot-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "data.iot-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "data.iot-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "data.iot" : { "defaults" : { "credentialScope" : { @@ -10899,6 +10987,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, @@ -13131,6 +13220,12 @@ "isRegionalized" : false, "partitionEndpoint" : "aws-cn-global" }, + "cloudcontrolapi" : { + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "cloudformation" : { "endpoints" : { "cn-north-1" : { }, @@ -13212,6 +13307,18 @@ "cn-northwest-1" : { } } }, + "data-ats.iot" : { + "defaults" : { + "credentialScope" : { + "service" : "iotdata" + }, + "protocols" : [ "https" ] + }, + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "data.iot" : { "defaults" : { "credentialScope" : { @@ -14773,6 +14880,42 @@ "us-gov-west-1" : { } } }, + "data-ats.iot" : { + "defaults" : { + "credentialScope" : { + "service" : "iotdata" + }, + "protocols" : [ "https" ] + }, + "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "service" : "iotdata" + }, + "deprecated" : true, + "hostname" : "data.iot-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "data.iot-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "data.iot-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "data.iot" : { "defaults" : { "credentialScope" : { diff --git a/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/paginators-1.json b/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/paginators-1.json index 36c11f63de..b43fb08067 100644 --- a/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/paginators-1.json +++ b/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/paginators-1.json @@ -29,6 +29,12 @@ "limit_key": "MaxResults", "output_token": "NextToken", "result_key": "ProtocolsLists" + }, + "ListThirdPartyFirewallFirewallPolicies": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "ThirdPartyFirewallFirewallPolicies" } } } diff --git a/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/service-2.json b/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/service-2.json index 20d53ae454..4de07c42c9 100644 --- a/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/fms/2018-01-01/service-2.json @@ -29,6 +29,22 @@ ], "documentation":"<p>Sets the Firewall Manager administrator account. The account must be a member of the organization in Organizations whose resources you want to protect. Firewall Manager sets the permissions that allow the account to administer your Firewall Manager policies.</p> <p>The account that you associate with Firewall Manager is called the Firewall Manager administrator account. </p>" }, + "AssociateThirdPartyFirewall":{ + "name":"AssociateThirdPartyFirewall", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AssociateThirdPartyFirewallRequest"}, + "output":{"shape":"AssociateThirdPartyFirewallResponse"}, + "errors":[ + {"shape":"InvalidOperationException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"} + ], + "documentation":"<p>Sets the Firewall Manager policy administrator as a tenant administrator of a third-party firewall service. A tenant is an instance of the third-party firewall service that's associated with your Amazon Web Services customer account.</p>" + }, "DeleteAppsList":{ "name":"DeleteAppsList", "http":{ @@ -101,6 +117,22 @@ ], "documentation":"<p>Disassociates the account that has been set as the Firewall Manager administrator account. To set a different account as the administrator account, you must submit an <code>AssociateAdminAccount</code> request.</p>" }, + "DisassociateThirdPartyFirewall":{ + "name":"DisassociateThirdPartyFirewall", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisassociateThirdPartyFirewallRequest"}, + "output":{"shape":"DisassociateThirdPartyFirewallResponse"}, + "errors":[ + {"shape":"InvalidOperationException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"} + ], + "documentation":"<p>Disassociates a Firewall Manager policy administrator from a third-party firewall tenant. When you call <code>DisassociateThirdPartyFirewall</code>, the third-party firewall vendor deletes all of the firewalls that are associated with the account.</p>" + }, "GetAdminAccount":{ "name":"GetAdminAccount", "http":{ @@ -208,6 +240,22 @@ ], "documentation":"<p>Returns information about the specified Firewall Manager protocols list.</p>" }, + "GetThirdPartyFirewallAssociationStatus":{ + "name":"GetThirdPartyFirewallAssociationStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetThirdPartyFirewallAssociationStatusRequest"}, + "output":{"shape":"GetThirdPartyFirewallAssociationStatusResponse"}, + "errors":[ + {"shape":"InvalidOperationException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"} + ], + "documentation":"<p>The onboarding status of a Firewall Manager admin account to third-party firewall vendor tenant.</p>" + }, "GetViolationDetails":{ "name":"GetViolationDetails", "http":{ @@ -314,6 +362,22 @@ ], "documentation":"<p>Retrieves the list of tags for the specified Amazon Web Services resource. </p>" }, + "ListThirdPartyFirewallFirewallPolicies":{ + "name":"ListThirdPartyFirewallFirewallPolicies", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListThirdPartyFirewallFirewallPoliciesRequest"}, + "output":{"shape":"ListThirdPartyFirewallFirewallPoliciesResponse"}, + "errors":[ + {"shape":"InvalidOperationException"}, + {"shape":"InvalidInputException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalErrorException"} + ], + "documentation":"<p>Retrieves a list of all of the third-party firewall policies that are associated with the third-party firewall administrator's account.</p>" + }, "PutAppsList":{ "name":"PutAppsList", "http":{ @@ -546,6 +610,25 @@ } } }, + "AssociateThirdPartyFirewallRequest":{ + "type":"structure", + "required":["ThirdPartyFirewall"], + "members":{ + "ThirdPartyFirewall":{ + "shape":"ThirdPartyFirewall", + "documentation":"<p>The name of the third-party firewall vendor.</p>" + } + } + }, + "AssociateThirdPartyFirewallResponse":{ + "type":"structure", + "members":{ + "ThirdPartyFirewallStatus":{ + "shape":"ThirdPartyFirewallAssociationStatus", + "documentation":"<p>The current status for setting a Firewall Manager policy administrator's account as an administrator of the third-party firewall tenant.</p> <ul> <li> <p> <code>ONBOARDING</code> - The Firewall Manager policy administrator is being designated as a tenant administrator.</p> </li> <li> <p> <code>ONBOARD_COMPLETE</code> - The Firewall Manager policy administrator is designated as a tenant administrator.</p> </li> <li> <p> <code>OFFBOARDING</code> - The Firewall Manager policy administrator is being removed as a tenant administrator.</p> </li> <li> <p> <code>OFFBOARD_COMPLETE</code> - The Firewall Manager policy administrator has been removed as a tenant administrator.</p> </li> <li> <p> <code>NOT_EXIST</code> - The Firewall Manager policy administrator doesn't exist as a tenant administrator.</p> </li> </ul>" + } + } + }, "AwsEc2InstanceViolation":{ "type":"structure", "members":{ @@ -732,6 +815,25 @@ "members":{ } }, + "DisassociateThirdPartyFirewallRequest":{ + "type":"structure", + "required":["ThirdPartyFirewall"], + "members":{ + "ThirdPartyFirewall":{ + "shape":"ThirdPartyFirewall", + "documentation":"<p>The name of the third-party firewall vendor.</p>" + } + } + }, + "DisassociateThirdPartyFirewallResponse":{ + "type":"structure", + "members":{ + "ThirdPartyFirewallStatus":{ + "shape":"ThirdPartyFirewallAssociationStatus", + "documentation":"<p>The current status for the disassociation of a Firewall Manager administrators account with a third-party firewall.</p>" + } + } + }, "DnsDuplicateRuleGroupViolation":{ "type":"structure", "members":{ @@ -1047,7 +1149,22 @@ }, "FirewallDeploymentModel":{ "type":"string", - "enum":["CENTRALIZED"] + "enum":[ + "CENTRALIZED", + "DISTRIBUTED" + ] + }, + "FirewallPolicyId":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" + }, + "FirewallPolicyName":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" }, "FirewallSubnetIsOutOfScopeViolation":{ "type":"structure", @@ -1075,6 +1192,28 @@ }, "documentation":"<p>Contains details about the firewall subnet that violates the policy scope.</p>" }, + "FirewallSubnetMissingVPCEndpointViolation":{ + "type":"structure", + "members":{ + "FirewallSubnetId":{ + "shape":"ResourceId", + "documentation":"<p>The ID of the firewall that this VPC endpoint is associated with.</p>" + }, + "VpcId":{ + "shape":"ResourceId", + "documentation":"<p>The resource ID of the VPC associated with the deleted VPC subnet.</p>" + }, + "SubnetAvailabilityZone":{ + "shape":"LengthBoundedString", + "documentation":"<p>The name of the Availability Zone of the deleted VPC subnet.</p>" + }, + "SubnetAvailabilityZoneId":{ + "shape":"LengthBoundedString", + "documentation":"<p>The ID of the Availability Zone of the deleted VPC subnet.</p>" + } + }, + "documentation":"<p>The violation details for a firewall subnet's VPC endpoint that's deleted or missing.</p>" + }, "GetAdminAccountRequest":{ "type":"structure", "members":{ @@ -1265,6 +1404,29 @@ } } }, + "GetThirdPartyFirewallAssociationStatusRequest":{ + "type":"structure", + "required":["ThirdPartyFirewall"], + "members":{ + "ThirdPartyFirewall":{ + "shape":"ThirdPartyFirewall", + "documentation":"<p>The name of the third-party firewall vendor.</p>" + } + } + }, + "GetThirdPartyFirewallAssociationStatusResponse":{ + "type":"structure", + "members":{ + "ThirdPartyFirewallStatus":{ + "shape":"ThirdPartyFirewallAssociationStatus", + "documentation":"<p>The current status for setting a Firewall Manager policy administrators account as an administrator of the third-party firewall tenant.</p> <ul> <li> <p> <code>ONBOARDING</code> - The Firewall Manager policy administrator is being designated as a tenant administrator.</p> </li> <li> <p> <code>ONBOARD_COMPLETE</code> - The Firewall Manager policy administrator is designated as a tenant administrator.</p> </li> <li> <p> <code>OFFBOARDING</code> - The Firewall Manager policy administrator is being removed as a tenant administrator.</p> </li> <li> <p> <code>OFFBOARD_COMPLETE</code> - The Firewall Manager policy administrator has been removed as a tenant administrator.</p> </li> <li> <p> <code>NOT_EXIST</code> - The Firewall Manager policy administrator doesn't exist as a tenant administrator.</p> </li> </ul>" + }, + "MarketplaceOnboardingStatus":{ + "shape":"MarketplaceSubscriptionOnboardingStatus", + "documentation":"<p>The status for subscribing to the third-party firewall vendor in the AWS Marketplace.</p> <ul> <li> <p> <code>NO_SUBSCRIPTION</code> - The Firewall Manager policy administrator isn't subscribed to the third-party firewall service in the AWS Marketplace.</p> </li> <li> <p> <code>NOT_COMPLETE</code> - The Firewall Manager policy administrator is in the process of subscribing to the third-party firewall service in the Amazon Web Services Marketplace, but doesn't yet have an active subscription.</p> </li> <li> <p> <code>COMPLETE</code> - The Firewall Manager policy administrator has an active subscription to the third-party firewall service in the Amazon Web Services Marketplace.</p> </li> </ul>" + } + } + }, "GetViolationDetailsRequest":{ "type":"structure", "required":[ @@ -1530,12 +1692,54 @@ } } }, + "ListThirdPartyFirewallFirewallPoliciesRequest":{ + "type":"structure", + "required":[ + "ThirdPartyFirewall", + "MaxResults" + ], + "members":{ + "ThirdPartyFirewall":{ + "shape":"ThirdPartyFirewall", + "documentation":"<p>The name of the third-party firewall vendor.</p>" + }, + "NextToken":{ + "shape":"PaginationToken", + "documentation":"<p>If the previous response included a <code>NextToken</code> element, the specified third-party firewall vendor is associated with more third-party firewall policies. To get more third-party firewall policies, submit another <code>ListThirdPartyFirewallFirewallPoliciesRequest</code> request.</p> <p> For the value of <code>NextToken</code>, specify the value of <code>NextToken</code> from the previous response. If the previous response didn't include a <code>NextToken</code> element, there are no more third-party firewall policies to get. </p>" + }, + "MaxResults":{ + "shape":"PaginationMaxResults", + "documentation":"<p>The maximum number of third-party firewall policies that you want Firewall Manager to return. If the specified third-party firewall vendor is associated with more than <code>MaxResults</code> firewall policies, the response includes a <code>NextToken</code> element. <code>NextToken</code> contains an encrypted token that identifies the first third-party firewall policies that Firewall Manager will return if you submit another request.</p>" + } + } + }, + "ListThirdPartyFirewallFirewallPoliciesResponse":{ + "type":"structure", + "members":{ + "ThirdPartyFirewallFirewallPolicies":{ + "shape":"ThirdPartyFirewallFirewallPolicies", + "documentation":"<p>A list that contains one <code>ThirdPartyFirewallFirewallPolicies</code> element for each third-party firewall policies that the specified third-party firewall vendor is associated with. Each <code>ThirdPartyFirewallFirewallPolicies</code> element contains the firewall policy name and ID.</p>" + }, + "NextToken":{ + "shape":"PaginationToken", + "documentation":"<p>The value that you will use for <code>NextToken</code> in the next <code>ListThirdPartyFirewallFirewallPolicies</code> request.</p>" + } + } + }, "ManagedServiceData":{ "type":"string", "max":8192, "min":1, "pattern":"^((?!\\\\[nr]).)+" }, + "MarketplaceSubscriptionOnboardingStatus":{ + "type":"string", + "enum":[ + "NO_SUBSCRIPTION", + "NOT_COMPLETE", + "COMPLETE" + ] + }, "MemberAccounts":{ "type":"list", "member":{"shape":"AWSAccountId"} @@ -1977,7 +2181,7 @@ }, "ExcludeResourceTags":{ "shape":"Boolean", - "documentation":"<p>If set to <code>True</code>, resources with the tags that are specified in the <code>ResourceTag</code> array are not in scope of the policy. If set to <code>False</code>, and the <code>ResourceTag</code> array is not null, only resources with the specified tags are in scope of the policy.</p> <p> This option isn't available for the centralized deployment model when creating policies to configure Network Firewall. </p>" + "documentation":"<p>If set to <code>True</code>, resources with the tags that are specified in the <code>ResourceTag</code> array are not in scope of the policy. If set to <code>False</code>, and the <code>ResourceTag</code> array is not null, only resources with the specified tags are in scope of the policy.</p>" }, "RemediationEnabled":{ "shape":"Boolean", @@ -1989,11 +2193,11 @@ }, "IncludeMap":{ "shape":"CustomerPolicyScopeMap", - "documentation":"<p>Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to include in the policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.</p> <p>You can specify inclusions or exclusions, but not both. If you specify an <code>IncludeMap</code>, Firewall Manager applies the policy to all accounts specified by the <code>IncludeMap</code>, and does not evaluate any <code>ExcludeMap</code> specifications. If you do not specify an <code>IncludeMap</code>, then Firewall Manager applies the policy to all accounts except for those specified by the <code>ExcludeMap</code>.</p> <p>You can specify account IDs, OUs, or a combination: </p> <ul> <li> <p>Specify account IDs by setting the key to <code>ACCOUNT</code>. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”]}</code>.</p> </li> <li> <p>Specify OUs by setting the key to <code>ORG_UNIT</code>. For example, the following is a valid map: <code>{“ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> <li> <p>Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> </ul> <p> This option isn't available for the centralized deployment model when creating policies to configure Network Firewall. </p>" + "documentation":"<p>Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to include in the policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.</p> <p>You can specify inclusions or exclusions, but not both. If you specify an <code>IncludeMap</code>, Firewall Manager applies the policy to all accounts specified by the <code>IncludeMap</code>, and does not evaluate any <code>ExcludeMap</code> specifications. If you do not specify an <code>IncludeMap</code>, then Firewall Manager applies the policy to all accounts except for those specified by the <code>ExcludeMap</code>.</p> <p>You can specify account IDs, OUs, or a combination: </p> <ul> <li> <p>Specify account IDs by setting the key to <code>ACCOUNT</code>. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”]}</code>.</p> </li> <li> <p>Specify OUs by setting the key to <code>ORG_UNIT</code>. For example, the following is a valid map: <code>{“ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> <li> <p>Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> </ul>" }, "ExcludeMap":{ "shape":"CustomerPolicyScopeMap", - "documentation":"<p>Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to exclude from the policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.</p> <p>You can specify inclusions or exclusions, but not both. If you specify an <code>IncludeMap</code>, Firewall Manager applies the policy to all accounts specified by the <code>IncludeMap</code>, and does not evaluate any <code>ExcludeMap</code> specifications. If you do not specify an <code>IncludeMap</code>, then Firewall Manager applies the policy to all accounts except for those specified by the <code>ExcludeMap</code>.</p> <p>You can specify account IDs, OUs, or a combination: </p> <ul> <li> <p>Specify account IDs by setting the key to <code>ACCOUNT</code>. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”]}</code>.</p> </li> <li> <p>Specify OUs by setting the key to <code>ORG_UNIT</code>. For example, the following is a valid map: <code>{“ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> <li> <p>Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> </ul> <p> This option isn't available for the centralized deployment model when creating policies to configure Network Firewall. </p>" + "documentation":"<p>Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to exclude from the policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.</p> <p>You can specify inclusions or exclusions, but not both. If you specify an <code>IncludeMap</code>, Firewall Manager applies the policy to all accounts specified by the <code>IncludeMap</code>, and does not evaluate any <code>ExcludeMap</code> specifications. If you do not specify an <code>IncludeMap</code>, then Firewall Manager applies the policy to all accounts except for those specified by the <code>ExcludeMap</code>.</p> <p>You can specify account IDs, OUs, or a combination: </p> <ul> <li> <p>Specify account IDs by setting the key to <code>ACCOUNT</code>. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”]}</code>.</p> </li> <li> <p>Specify OUs by setting the key to <code>ORG_UNIT</code>. For example, the following is a valid map: <code>{“ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> <li> <p>Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: <code>{“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}</code>.</p> </li> </ul>" } }, "documentation":"<p>An Firewall Manager policy.</p>" @@ -2089,6 +2293,10 @@ "NetworkFirewallPolicy":{ "shape":"NetworkFirewallPolicy", "documentation":"<p>Defines the deployment model to use for the firewall policy.</p>" + }, + "ThirdPartyFirewallPolicy":{ + "shape":"ThirdPartyFirewallPolicy", + "documentation":"<p>Defines the policy options for a third-party firewall policy.</p>" } }, "documentation":"<p>Contains the Network Firewall firewall policy options to configure a centralized deployment model.</p>" @@ -2584,6 +2792,22 @@ "RouteHasOutOfScopeEndpointViolation":{ "shape":"RouteHasOutOfScopeEndpointViolation", "documentation":"<p>Contains details about the route endpoint that violates the policy scope.</p>" + }, + "ThirdPartyFirewallMissingFirewallViolation":{ + "shape":"ThirdPartyFirewallMissingFirewallViolation", + "documentation":"<p>The violation details for a third-party firewall that's been deleted.</p>" + }, + "ThirdPartyFirewallMissingSubnetViolation":{ + "shape":"ThirdPartyFirewallMissingSubnetViolation", + "documentation":"<p>The violation details for a third-party firewall's subnet that's been deleted.</p>" + }, + "ThirdPartyFirewallMissingExpectedRouteTableViolation":{ + "shape":"ThirdPartyFirewallMissingExpectedRouteTableViolation", + "documentation":"<p>The violation details for a third-party firewall that has the Firewall Manager managed route table that was associated with the third-party firewall has been deleted.</p>" + }, + "FirewallSubnetMissingVPCEndpointViolation":{ + "shape":"FirewallSubnetMissingVPCEndpointViolation", + "documentation":"<p>The violation details for a third-party firewall's VPC endpoint subnet that was deleted.</p>" } }, "documentation":"<p>Violation detail based on resource type.</p>" @@ -2738,7 +2962,7 @@ }, "ManagedServiceData":{ "shape":"ManagedServiceData", - "documentation":"<p>Details about the service that are specific to the service type, in JSON format. </p> <ul> <li> <p>Example: <code>DNS_FIREWALL</code> </p> <p> <code>\"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"</code> </p> <note> <p>Valid values for <code>preProcessRuleGroups</code> are between 1 and 99. Valid values for <code>postProcessRuleGroups</code> are between 9901 and 10000.</p> </note> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Centralized deployment model.</p> <p> <code>\"{\\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"awsNetworkFirewallConfig\\\":{\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}],\\\"networkFirewallStatelessDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessFragmentDefaultActions\\\":[\\\"aws:forward_to_sfe\\\",\\\"customActionName\\\"],\\\"networkFirewallStatelessCustomActions\\\":[{\\\"actionName\\\":\\\"customActionName\\\",\\\"actionDefinition\\\":{\\\"publishMetricAction\\\":{\\\"dimensions\\\":[{\\\"value\\\":\\\"metricdimensionvalue\\\"}]}}}],\\\"networkFirewallStatefulRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\"}],\\\"networkFirewallLoggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"ALERT\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}},{\\\"logDestinationType\\\":\\\"S3\\\",\\\"logType\\\":\\\"FLOW\\\",\\\"logDestination\\\":{\\\"bucketName\\\":\\\"s3-bucket-name\\\"}}],\\\"overrideExistingConfig\\\":true}},\\\"firewallDeploymentModel\\\":{\\\"centralizedFirewallDeploymentModel\\\":{\\\"centralizedFirewallOrchestrationConfig\\\":{\\\"inspectionVpcIds\\\":[{\\\"resourceId\\\":\\\"vpc-1234\\\",\\\"accountId\\\":\\\"123456789011\\\"}],\\\"firewallCreationConfig\\\":{\\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneId\\\":null,\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.0.0/28\\\"]}]}},\\\"allowedIPV4CidrList\\\":[]}}}}\"</code> </p> <p> To use the centralized deployment model, you must set <a href=\"https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_PolicyOption.html\">PolicyOption</a> to <code>CENTRALIZED</code>. </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with automatic Availability Zone configuration. With automatic Availbility Zone configuration, Firewall Manager chooses which Availability Zones to create the endpoints in. </p> <p> <code>\"{ \\\"type\\\": \\\"NETWORK_FIREWALL\\\", \\\"networkFirewallStatelessRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\", \\\"priority\\\": 1 } ], \\\"networkFirewallStatelessDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessCustomActions\\\": [ { \\\"actionName\\\": \\\"customActionName\\\", \\\"actionDefinition\\\": { \\\"publishMetricAction\\\": { \\\"dimensions\\\": [ { \\\"value\\\": \\\"metricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\": { \\\"singleFirewallEndpointPerVPC\\\": false, \\\"allowedIPV4CidrList\\\": [ \\\"10.0.0.0/28\\\", \\\"192.168.0.0/28\\\" ], \\\"routeManagementAction\\\": \\\"OFF\\\" }, \\\"networkFirewallLoggingConfiguration\\\": { \\\"logDestinationConfigs\\\": [ { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"ALERT\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"FLOW\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\": true } }\"</code> </p> <p> To use the distributed deployment model, you must set <a href=\"https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_PolicyOption.html\">PolicyOption</a> to <code>NULL</code>. </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with automatic Availability Zone configuration, and route management. </p> <p> <code>\"{ \\\"type\\\": \\\"NETWORK_FIREWALL\\\", \\\"networkFirewallStatelessRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\", \\\"priority\\\": 1 } ], \\\"networkFirewallStatelessDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessCustomActions\\\": [ { \\\"actionName\\\": \\\"customActionName\\\", \\\"actionDefinition\\\": { \\\"publishMetricAction\\\": { \\\"dimensions\\\": [ { \\\"value\\\": \\\"metricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\": { \\\"singleFirewallEndpointPerVPC\\\": false, \\\"allowedIPV4CidrList\\\": [ \\\"10.0.0.0/28\\\", \\\"192.168.0.0/28\\\" ], \\\"routeManagementAction\\\": \\\"MONITOR\\\", \\\"routeManagementTargetTypes\\\": [ \\\"InternetGateway\\\" ] }, \\\"networkFirewallLoggingConfiguration\\\": { \\\"logDestinationConfigs\\\": [ { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"ALERT\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"FLOW\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\": true } }\"</code> </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with custom Availability Zone configuration. With custom Availability Zone configuration, you define which specific Availability Zones to create endpoints in by configuring <code>firewallCreationConfig</code>. </p> <p> <code>\"{ \\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}], \\\"networkFirewallStatelessDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"fragmentcustomactionname\\\" ], \\\"networkFirewallStatelessCustomActions\\\":[ { \\\"actionName\\\":\\\"customActionName\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"metricdimensionvalue\\\" } ] } } }, { \\\"actionName\\\":\\\"fragmentcustomactionname\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"fragmentmetricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\":[ { \\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\":{ \\\"firewallCreationConfig\\\":{ \\\"endpointLocation\\\":{ \\\"availabilityZoneConfigList\\\":[ { \\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1a\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] }, { ¯\\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1b\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] } ] } }, \\\"singleFirewallEndpointPerVPC\\\":false, \\\"allowedIPV4CidrList\\\":null, \\\"routeManagementAction\\\":\\\"OFF\\\", \\\"networkFirewallLoggingConfiguration\\\":{ \\\"logDestinationConfigs\\\":[ { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"ALERT\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"FLOW\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\":boolean } }\"</code> </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with custom Availability Zone configuration, and route management. </p> <p> <code>\"{ \\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}], \\\"networkFirewallStatelessDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"fragmentcustomactionname\\\" ], \\\"networkFirewallStatelessCustomActions\\\":[ { \\\"actionName\\\":\\\"customActionName\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"metricdimensionvalue\\\" } ] } } }, { \\\"actionName\\\":\\\"fragmentcustomactionname\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"fragmentmetricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\":[ { \\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\":{ \\\"firewallCreationConfig\\\":{ \\\"endpointLocation\\\":{ \\\"availabilityZoneConfigList\\\":[ { \\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1a\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] }, { ¯\\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1b\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] } ] } }, \\\"singleFirewallEndpointPerVPC\\\":false, \\\"allowedIPV4CidrList\\\":null, \\\"routeManagementAction\\\":\\\"MONITOR\\\", \\\"routeManagementTargetTypes\\\":[ \\\"InternetGateway\\\" ], \\\"routeManagementConfig\\\":{ \\\"allowCrossAZTrafficIfNoEndpoint\\\":true } }, \\\"networkFirewallLoggingConfiguration\\\":{ \\\"logDestinationConfigs\\\":[ { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"ALERT\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"FLOW\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\":boolean } }\"</code> </p> </li> <li> <p>Specification for <code>SHIELD_ADVANCED</code> for Amazon CloudFront distributions </p> <p> <code>\"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED|IGNORED|DISABLED\\\", \\\"automaticResponseAction\\\":\\\"BLOCK|COUNT\\\"}, \\\"overrideCustomerWebaclClassic\\\":true|false}\"</code> </p> <p>For example: <code>\"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED\\\", \\\"automaticResponseAction\\\":\\\"COUNT\\\"}}\"</code> </p> <p>The default value for <code>automaticResponseStatus</code> is <code>IGNORED</code>. The value for <code>automaticResponseAction</code> is only required when <code>automaticResponseStatus</code> is set to <code>ENABLED</code>. The default value for <code>overrideCustomerWebaclClassic</code> is <code>false</code>.</p> <p>For other resource types that you can protect with a Shield Advanced policy, this <code>ManagedServiceData</code> configuration is an empty string.</p> </li> <li> <p>Example: <code>WAFV2</code> </p> <p> <code>\"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAmazonIpReputationList\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[{\\\"name\\\":\\\"NoUserAgent_HEADER\\\"}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[\\\"arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination\\\"],\\\"redactedFields\\\":[{\\\"redactedFieldType\\\":\\\"SingleHeader\\\",\\\"redactedFieldValue\\\":\\\"Cookies\\\"},{\\\"redactedFieldType\\\":\\\"Method\\\"}]}}\"</code> </p> <p>In the <code>loggingConfiguration</code>, you can specify one <code>logDestinationConfigs</code>, you can optionally provide up to 20 <code>redactedFields</code>, and the <code>RedactedFieldType</code> must be one of <code>URI</code>, <code>QUERY_STRING</code>, <code>HEADER</code>, or <code>METHOD</code>.</p> </li> <li> <p>Example: <code>WAF Classic</code> </p> <p> <code>\"{\\\"type\\\": \\\"WAF\\\", \\\"ruleGroups\\\": [{\\\"id\\\":\\\"12345678-1bcd-9012-efga-0987654321ab\\\", \\\"overrideAction\\\" : {\\\"type\\\": \\\"COUNT\\\"}}], \\\"defaultAction\\\": {\\\"type\\\": \\\"BLOCK\\\"}}\"</code> </p> </li> <li> <p>Example: <code>SECURITY_GROUPS_COMMON</code> </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"</code> </p> </li> <li> <p>Example: Shared VPCs. Apply the preceding policy to resources in shared VPCs as well as to those in VPCs that the account owns </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"includeSharedVPC\\\":true,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"</code> </p> </li> <li> <p>Example: <code>SECURITY_GROUPS_CONTENT_AUDIT</code> </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_CONTENT_AUDIT\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\"sg-000e55995d61a06bd\\\"}],\\\"securityGroupAction\\\":{\\\"type\\\":\\\"ALLOW\\\"}}\"</code> </p> <p>The security group action for content audit can be <code>ALLOW</code> or <code>DENY</code>. For <code>ALLOW</code>, all in-scope security group rules must be within the allowed range of the policy's security group rules. For <code>DENY</code>, all in-scope security group rules must not contain a value or a range that matches a rule value or range in the policy security group.</p> </li> <li> <p>Example: <code>SECURITY_GROUPS_USAGE_AUDIT</code> </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_USAGE_AUDIT\\\",\\\"deleteUnusedSecurityGroups\\\":true,\\\"coalesceRedundantSecurityGroups\\\":true}\"</code> </p> </li> </ul>" + "documentation":"<p>Details about the service that are specific to the service type, in JSON format. </p> <ul> <li> <p>Example: <code>DNS_FIREWALL</code> </p> <p> <code>\"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"</code> </p> <note> <p>Valid values for <code>preProcessRuleGroups</code> are between 1 and 99. Valid values for <code>postProcessRuleGroups</code> are between 9901 and 10000.</p> </note> </li> <li> <p>Example: <code>DNS_FIREWALL</code> </p> <p> <code>\"{\\\"type\\\":\\\"DNS_FIREWALL\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-1\\\",\\\"priority\\\":10}],\\\"postProcessRuleGroups\\\":[{\\\"ruleGroupId\\\":\\\"rslvr-frg-2\\\",\\\"priority\\\":9911}]}\"</code> </p> <note> <p>Valid values for <code>preProcessRuleGroups</code> are between 1 and 99. Valid values for <code>postProcessRuleGroups</code> are between 9901 and 10000.</p> </note> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with automatic Availability Zone configuration. With automatic Availbility Zone configuration, Firewall Manager chooses which Availability Zones to create the endpoints in. </p> <p> <code>\"{ \\\"type\\\": \\\"NETWORK_FIREWALL\\\", \\\"networkFirewallStatelessRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\", \\\"priority\\\": 1 } ], \\\"networkFirewallStatelessDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessCustomActions\\\": [ { \\\"actionName\\\": \\\"customActionName\\\", \\\"actionDefinition\\\": { \\\"publishMetricAction\\\": { \\\"dimensions\\\": [ { \\\"value\\\": \\\"metricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\": { \\\"singleFirewallEndpointPerVPC\\\": false, \\\"allowedIPV4CidrList\\\": [ \\\"10.0.0.0/28\\\", \\\"192.168.0.0/28\\\" ], \\\"routeManagementAction\\\": \\\"OFF\\\" }, \\\"networkFirewallLoggingConfiguration\\\": { \\\"logDestinationConfigs\\\": [ { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"ALERT\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"FLOW\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\": true } }\"</code> </p> <p> To use the distributed deployment model, you must set <a href=\"https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_PolicyOption.html\">PolicyOption</a> to <code>NULL</code>. </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with automatic Availability Zone configuration, and route management. </p> <p> <code>\"{ \\\"type\\\": \\\"NETWORK_FIREWALL\\\", \\\"networkFirewallStatelessRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\", \\\"priority\\\": 1 } ], \\\"networkFirewallStatelessDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\": [ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessCustomActions\\\": [ { \\\"actionName\\\": \\\"customActionName\\\", \\\"actionDefinition\\\": { \\\"publishMetricAction\\\": { \\\"dimensions\\\": [ { \\\"value\\\": \\\"metricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\": [ { \\\"resourceARN\\\": \\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\": { \\\"singleFirewallEndpointPerVPC\\\": false, \\\"allowedIPV4CidrList\\\": [ \\\"10.0.0.0/28\\\", \\\"192.168.0.0/28\\\" ], \\\"routeManagementAction\\\": \\\"MONITOR\\\", \\\"routeManagementTargetTypes\\\": [ \\\"InternetGateway\\\" ] }, \\\"networkFirewallLoggingConfiguration\\\": { \\\"logDestinationConfigs\\\": [ { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"ALERT\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\": \\\"S3\\\", \\\"logType\\\": \\\"FLOW\\\", \\\"logDestination\\\": { \\\"bucketName\\\": \\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\": true } }\"</code> </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with custom Availability Zone configuration. With custom Availability Zone configuration, you define which specific Availability Zones to create endpoints in by configuring <code>firewallCreationConfig</code>. </p> <p> <code>\"{ \\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}], \\\"networkFirewallStatelessDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"fragmentcustomactionname\\\" ], \\\"networkFirewallStatelessCustomActions\\\":[ { \\\"actionName\\\":\\\"customActionName\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"metricdimensionvalue\\\" } ] } } }, { \\\"actionName\\\":\\\"fragmentcustomactionname\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"fragmentmetricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\":[ { \\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\":{ \\\"firewallCreationConfig\\\":{ \\\"endpointLocation\\\":{ \\\"availabilityZoneConfigList\\\":[ { \\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1a\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] }, { ¯\\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1b\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] } ] } }, \\\"singleFirewallEndpointPerVPC\\\":false, \\\"allowedIPV4CidrList\\\":null, \\\"routeManagementAction\\\":\\\"OFF\\\", \\\"networkFirewallLoggingConfiguration\\\":{ \\\"logDestinationConfigs\\\":[ { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"ALERT\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"FLOW\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\":boolean } }\"</code> </p> </li> <li> <p>Example: <code>NETWORK_FIREWALL</code> - Distributed deployment model with custom Availability Zone configuration, and route management. </p> <p> <code>\"{ \\\"type\\\":\\\"NETWORK_FIREWALL\\\",\\\"networkFirewallStatelessRuleGroupReferences\\\":[{\\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test\\\",\\\"priority\\\":1}], \\\"networkFirewallStatelessDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"customActionName\\\" ], \\\"networkFirewallStatelessFragmentDefaultActions\\\":[ \\\"aws:forward_to_sfe\\\", \\\"fragmentcustomactionname\\\" ], \\\"networkFirewallStatelessCustomActions\\\":[ { \\\"actionName\\\":\\\"customActionName\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"metricdimensionvalue\\\" } ] } } }, { \\\"actionName\\\":\\\"fragmentcustomactionname\\\", \\\"actionDefinition\\\":{ \\\"publishMetricAction\\\":{ \\\"dimensions\\\":[ { \\\"value\\\":\\\"fragmentmetricdimensionvalue\\\" } ] } } } ], \\\"networkFirewallStatefulRuleGroupReferences\\\":[ { \\\"resourceARN\\\":\\\"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test\\\" } ], \\\"networkFirewallOrchestrationConfig\\\":{ \\\"firewallCreationConfig\\\":{ \\\"endpointLocation\\\":{ \\\"availabilityZoneConfigList\\\":[ { \\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1a\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] }, { ¯\\\"availabilityZoneId\\\":null, \\\"availabilityZoneName\\\":\\\"us-east-1b\\\", \\\"allowedIPV4CidrList\\\":[ \\\"10.0.0.0/28\\\" ] } ] } }, \\\"singleFirewallEndpointPerVPC\\\":false, \\\"allowedIPV4CidrList\\\":null, \\\"routeManagementAction\\\":\\\"MONITOR\\\", \\\"routeManagementTargetTypes\\\":[ \\\"InternetGateway\\\" ], \\\"routeManagementConfig\\\":{ \\\"allowCrossAZTrafficIfNoEndpoint\\\":true } }, \\\"networkFirewallLoggingConfiguration\\\":{ \\\"logDestinationConfigs\\\":[ { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"ALERT\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } }, { \\\"logDestinationType\\\":\\\"S3\\\", \\\"logType\\\":\\\"FLOW\\\", \\\"logDestination\\\":{ \\\"bucketName\\\":\\\"s3-bucket-name\\\" } } ], \\\"overrideExistingConfig\\\":boolean } }\"</code> </p> </li> <li> <p>Example: <code>PARTNER_FIREWALL</code> for Firewall Manager</p> <p> <code>\"{\\\"type\\\":\\\"THIRD_PARTY_FIREWALL\\\",\\\"thirdPartyrFirewall\\\":\\\"PALO_ALTO_NETWORKS_CLOUD_NGFW\\\",\\\"thirdPartyFirewallConfig\\\":{\\\"thirdPartyFirewallPolicyList\\\":[\\\"global-123456789012-1\\\"],\\\"networkFirewallLoggingConfiguration\\\":null},\\\"firewallDeploymentModel\\\":{\\\"distributedFirewallDeploymentModel\\\":{\\\"distributedFirewallOrchestrationConfig\\\":{\\\"firewallCreationConfig\\\":{\\\"endpointLocation\\\":{\\\"availabilityZoneConfigList\\\":[{\\\"availabilityZoneId\\\":null,\\\"availabilityZoneName\\\":\\\"us-east-1a\\\",\\\"allowedIPV4CidrList\\\":[\\\"10.0.1.0/28\\\"]}]}},\\\"allowedIPV4CidrList\\\":null},\\\"distributedRouteManagementConfig\\\":null},\\\"centralizedFirewallDeploymentModel\\\":null}}\"\"</code> </p> </li> <li> <p>Specification for <code>SHIELD_ADVANCED</code> for Amazon CloudFront distributions </p> <p> <code>\"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED|IGNORED|DISABLED\\\", \\\"automaticResponseAction\\\":\\\"BLOCK|COUNT\\\"}, \\\"overrideCustomerWebaclClassic\\\":true|false}\"</code> </p> <p>For example: <code>\"{\\\"type\\\":\\\"SHIELD_ADVANCED\\\",\\\"automaticResponseConfiguration\\\": {\\\"automaticResponseStatus\\\":\\\"ENABLED\\\", \\\"automaticResponseAction\\\":\\\"COUNT\\\"}}\"</code> </p> <p>The default value for <code>automaticResponseStatus</code> is <code>IGNORED</code>. The value for <code>automaticResponseAction</code> is only required when <code>automaticResponseStatus</code> is set to <code>ENABLED</code>. The default value for <code>overrideCustomerWebaclClassic</code> is <code>false</code>.</p> <p>For other resource types that you can protect with a Shield Advanced policy, this <code>ManagedServiceData</code> configuration is an empty string.</p> </li> <li> <p>Example: <code>WAFV2</code> </p> <p> <code>\"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"version\\\":null,\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAmazonIpReputationList\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[{\\\"name\\\":\\\"NoUserAgent_HEADER\\\"}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[\\\"arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination\\\"],\\\"redactedFields\\\":[{\\\"redactedFieldType\\\":\\\"SingleHeader\\\",\\\"redactedFieldValue\\\":\\\"Cookies\\\"},{\\\"redactedFieldType\\\":\\\"Method\\\"}]}}\"</code> </p> <p>In the <code>loggingConfiguration</code>, you can specify one <code>logDestinationConfigs</code>, you can optionally provide up to 20 <code>redactedFields</code>, and the <code>RedactedFieldType</code> must be one of <code>URI</code>, <code>QUERY_STRING</code>, <code>HEADER</code>, or <code>METHOD</code>.</p> </li> <li> <p>Example: <code>WAF Classic</code> </p> <p> <code>\"{\\\"type\\\": \\\"WAF\\\", \\\"ruleGroups\\\": [{\\\"id\\\":\\\"12345678-1bcd-9012-efga-0987654321ab\\\", \\\"overrideAction\\\" : {\\\"type\\\": \\\"COUNT\\\"}}], \\\"defaultAction\\\": {\\\"type\\\": \\\"BLOCK\\\"}}\"</code> </p> </li> <li> <p>Example: <code>WAFV2</code> - Firewall Manager support for WAF managed rule group versioning </p> <p> <code>\"{\\\"type\\\":\\\"WAFV2\\\",\\\"preProcessRuleGroups\\\":[{\\\"ruleGroupArn\\\":null,\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"managedRuleGroupIdentifier\\\":{\\\"versionEnabled\\\":true,\\\"version\\\":\\\"Version_2.0\\\",\\\"vendorName\\\":\\\"AWS\\\",\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesCommonRuleSet\\\"},\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\",\\\"excludeRules\\\":[{\\\"name\\\":\\\"NoUserAgent_HEADER\\\"}]}],\\\"postProcessRuleGroups\\\":[],\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"overrideCustomerWebACLAssociation\\\":false,\\\"loggingConfiguration\\\":{\\\"logDestinationConfigs\\\":[\\\"arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination\\\"],\\\"redactedFields\\\":[{\\\"redactedFieldType\\\":\\\"SingleHeader\\\",\\\"redactedFieldValue\\\":\\\"Cookies\\\"},{\\\"redactedFieldType\\\":\\\"Method\\\"}]}}\"</code> </p> <p> To use a specific version of a WAF managed rule group in your Firewall Manager policy, you must set <code>versionEnabled</code> to <code>true</code>, and set <code>version</code> to the version you'd like to use. If you don't set <code>versionEnabled</code> to <code>true</code>, or if you omit <code>versionEnabled</code>, then Firewall Manager uses the default version of the WAF managed rule group. </p> </li> <li> <p>Example: <code>SECURITY_GROUPS_COMMON</code> </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"</code> </p> </li> <li> <p>Example: Shared VPCs. Apply the preceding policy to resources in shared VPCs as well as to those in VPCs that the account owns </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"includeSharedVPC\\\":true,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"</code> </p> </li> <li> <p>Example: <code>SECURITY_GROUPS_CONTENT_AUDIT</code> </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_CONTENT_AUDIT\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\"sg-000e55995d61a06bd\\\"}],\\\"securityGroupAction\\\":{\\\"type\\\":\\\"ALLOW\\\"}}\"</code> </p> <p>The security group action for content audit can be <code>ALLOW</code> or <code>DENY</code>. For <code>ALLOW</code>, all in-scope security group rules must be within the allowed range of the policy's security group rules. For <code>DENY</code>, all in-scope security group rules must not contain a value or a range that matches a rule value or range in the policy security group.</p> </li> <li> <p>Example: <code>SECURITY_GROUPS_USAGE_AUDIT</code> </p> <p> <code>\"{\\\"type\\\":\\\"SECURITY_GROUPS_USAGE_AUDIT\\\",\\\"deleteUnusedSecurityGroups\\\":true,\\\"coalesceRedundantSecurityGroups\\\":true}\"</code> </p> </li> </ul>" }, "PolicyOption":{ "shape":"PolicyOption", @@ -2757,7 +2981,8 @@ "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT", "NETWORK_FIREWALL", - "DNS_FIREWALL" + "DNS_FIREWALL", + "THIRD_PARTY_FIREWALL" ] }, "StatefulRuleGroup":{ @@ -2894,6 +3119,118 @@ "type":"list", "member":{"shape":"TargetViolationReason"} }, + "ThirdPartyFirewall":{ + "type":"string", + "enum":["PALO_ALTO_NETWORKS_CLOUD_NGFW"] + }, + "ThirdPartyFirewallAssociationStatus":{ + "type":"string", + "enum":[ + "ONBOARDING", + "ONBOARD_COMPLETE", + "OFFBOARDING", + "OFFBOARD_COMPLETE", + "NOT_EXIST" + ] + }, + "ThirdPartyFirewallFirewallPolicies":{ + "type":"list", + "member":{"shape":"ThirdPartyFirewallFirewallPolicy"} + }, + "ThirdPartyFirewallFirewallPolicy":{ + "type":"structure", + "members":{ + "FirewallPolicyId":{ + "shape":"FirewallPolicyId", + "documentation":"<p>The ID of the specified firewall policy.</p>" + }, + "FirewallPolicyName":{ + "shape":"FirewallPolicyName", + "documentation":"<p>The name of the specified firewall policy.</p>" + } + }, + "documentation":"<p>Configures the firewall policy deployment model for a third-party firewall. The deployment model can either be distributed or centralized.</p>" + }, + "ThirdPartyFirewallMissingExpectedRouteTableViolation":{ + "type":"structure", + "members":{ + "ViolationTarget":{ + "shape":"ViolationTarget", + "documentation":"<p>The ID of the third-party firewall or VPC resource that's causing the violation.</p>" + }, + "VPC":{ + "shape":"ResourceId", + "documentation":"<p>The resource ID of the VPC associated with a fireawll subnet that's causing the violation.</p>" + }, + "AvailabilityZone":{ + "shape":"LengthBoundedString", + "documentation":"<p>The Availability Zone of the firewall subnet that's causing the violation.</p>" + }, + "CurrentRouteTable":{ + "shape":"ResourceId", + "documentation":"<p>The resource ID of the current route table that's associated with the subnet, if one is available.</p>" + }, + "ExpectedRouteTable":{ + "shape":"ResourceId", + "documentation":"<p>The resource ID of the route table that should be associated with the subnet.</p>" + } + }, + "documentation":"<p>The violation details for a third-party firewall that's not associated with an Firewall Manager managed route table.</p>" + }, + "ThirdPartyFirewallMissingFirewallViolation":{ + "type":"structure", + "members":{ + "ViolationTarget":{ + "shape":"ViolationTarget", + "documentation":"<p>The ID of the third-party firewall that's causing the violation.</p>" + }, + "VPC":{ + "shape":"ResourceId", + "documentation":"<p>The resource ID of the VPC associated with a third-party firewall.</p>" + }, + "AvailabilityZone":{ + "shape":"LengthBoundedString", + "documentation":"<p>The Availability Zone of the third-party firewall that's causing the violation.</p>" + }, + "TargetViolationReason":{ + "shape":"TargetViolationReason", + "documentation":"<p>The reason the resource is causing this violation, if a reason is available.</p>" + } + }, + "documentation":"<p>The violation details about a third-party firewall's subnet that doesn't have a Firewall Manager managed firewall in its VPC.</p>" + }, + "ThirdPartyFirewallMissingSubnetViolation":{ + "type":"structure", + "members":{ + "ViolationTarget":{ + "shape":"ViolationTarget", + "documentation":"<p>The ID of the third-party firewall or VPC resource that's causing the violation.</p>" + }, + "VPC":{ + "shape":"ResourceId", + "documentation":"<p>The resource ID of the VPC associated with a subnet that's causing the violation.</p>" + }, + "AvailabilityZone":{ + "shape":"LengthBoundedString", + "documentation":"<p>The Availability Zone of a subnet that's causing the violation.</p>" + }, + "TargetViolationReason":{ + "shape":"TargetViolationReason", + "documentation":"<p>The reason the resource is causing the violation, if a reason is available.</p>" + } + }, + "documentation":"<p>The violation details for a third-party firewall for an Availability Zone that's missing the Firewall Manager managed subnet.</p>" + }, + "ThirdPartyFirewallPolicy":{ + "type":"structure", + "members":{ + "FirewallDeploymentModel":{ + "shape":"FirewallDeploymentModel", + "documentation":"<p>Defines the deployment model to use for the third-party firewall.</p>" + } + }, + "documentation":"<p>Configures the policy for the third-party firewall.</p>" + }, "TimeStamp":{"type":"timestamp"}, "UntagResourceRequest":{ "type":"structure", @@ -2955,7 +3292,7 @@ }, "ResourceTags":{ "shape":"TagList", - "documentation":"<p>The <code>ResourceTag</code> objects associated with the resource.</p> <p> This option isn't available for the centralized deployment model when creating policies to configure Network Firewall. </p>" + "documentation":"<p>The <code>ResourceTag</code> objects associated with the resource.</p>" }, "ResourceDescription":{ "shape":"LengthBoundedString", @@ -2981,6 +3318,7 @@ "MISSING_FIREWALL_SUBNET_IN_AZ", "MISSING_EXPECTED_ROUTE_TABLE", "NETWORK_FIREWALL_POLICY_MODIFIED", + "FIREWALL_SUBNET_IS_OUT_OF_SCOPE", "INTERNET_GATEWAY_MISSING_EXPECTED_ROUTE", "FIREWALL_SUBNET_MISSING_EXPECTED_ROUTE", "UNEXPECTED_FIREWALL_ROUTES", @@ -2992,8 +3330,8 @@ "BLACK_HOLE_ROUTE_DETECTED", "BLACK_HOLE_ROUTE_DETECTED_IN_FIREWALL_SUBNET", "RESOURCE_MISSING_DNS_FIREWALL", - "FIREWALL_SUBNET_IS_OUT_OF_SCOPE", - "ROUTE_HAS_OUT_OF_SCOPE_ENDPOINT" + "ROUTE_HAS_OUT_OF_SCOPE_ENDPOINT", + "FIREWALL_SUBNET_MISSING_VPCE_ENDPOINT" ] }, "ViolationTarget":{ diff --git a/contrib/python/botocore/py3/botocore/data/fsx/2018-03-01/service-2.json b/contrib/python/botocore/py3/botocore/data/fsx/2018-03-01/service-2.json index 1a2ab9e18e..9a34cdb1f4 100644 --- a/contrib/python/botocore/py3/botocore/data/fsx/2018-03-01/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/fsx/2018-03-01/service-2.json @@ -150,7 +150,7 @@ {"shape":"InternalServerError"}, {"shape":"MissingFileSystemConfiguration"} ], - "documentation":"<p>Creates a new, empty Amazon FSx file system. You can create the following supported Amazon FSx file systems using the <code>CreateFileSystem</code> API operation:</p> <ul> <li> <p>Amazon FSx for Lustre</p> </li> <li> <p>Amazon FSx for NetApp ONTAP</p> </li> <li> <p>Amazon FSx for OpenZFS</p> </li> <li> <p>Amazon FSx for Windows File Server</p> </li> </ul> <p>This operation requires a client request token in the request that Amazon FSx uses to ensure idempotent creation. This means that calling the operation multiple times with the same client request token has no effect. By using the idempotent operation, you can retry a <code>CreateFileSystem</code> operation without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives success as long as the parameters are the same.</p> <p>If a file system with the specified client request token exists and the parameters match, <code>CreateFileSystem</code> returns the description of the existing file system. If a file system with the specified client request token exists and the parameters don't match, this call returns <code>IncompatibleParameterError</code>. If a file system with the specified client request token doesn't exist, <code>CreateFileSystem</code> does the following: </p> <ul> <li> <p>Creates a new, empty Amazon FSx file system with an assigned ID, and an initial lifecycle state of <code>CREATING</code>.</p> </li> <li> <p>Returns the description of the file system.</p> </li> </ul> <p>This operation requires a client request token in the request that Amazon FSx uses to ensure idempotent creation. This means that calling the operation multiple times with the same client request token has no effect. By using the idempotent operation, you can retry a <code>CreateFileSystem</code> operation without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport-level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives a success message as long as the parameters are the same.</p> <note> <p>The <code>CreateFileSystem</code> call returns while the file system's lifecycle state is still <code>CREATING</code>. You can check the file-system creation status by calling the <a href=\"https://docs.aws.amazon.com/fsx/latest/APIReference/API_DescribeFileSystems.html\">DescribeFileSystems</a> operation, which returns the file system state along with other information.</p> </note>" + "documentation":"<p>Creates a new, empty Amazon FSx file system. You can create the following supported Amazon FSx file systems using the <code>CreateFileSystem</code> API operation:</p> <ul> <li> <p>Amazon FSx for Lustre</p> </li> <li> <p>Amazon FSx for NetApp ONTAP</p> </li> <li> <p>Amazon FSx for OpenZFS</p> </li> <li> <p>Amazon FSx for Windows File Server</p> </li> </ul> <p>This operation requires a client request token in the request that Amazon FSx uses to ensure idempotent creation. This means that calling the operation multiple times with the same client request token has no effect. By using the idempotent operation, you can retry a <code>CreateFileSystem</code> operation without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives success as long as the parameters are the same.</p> <p>If a file system with the specified client request token exists and the parameters match, <code>CreateFileSystem</code> returns the description of the existing file system. If a file system with the specified client request token exists and the parameters don't match, this call returns <code>IncompatibleParameterError</code>. If a file system with the specified client request token doesn't exist, <code>CreateFileSystem</code> does the following: </p> <ul> <li> <p>Creates a new, empty Amazon FSx file system with an assigned ID, and an initial lifecycle state of <code>CREATING</code>.</p> </li> <li> <p>Returns the description of the file system in JSON format.</p> </li> </ul> <p>This operation requires a client request token in the request that Amazon FSx uses to ensure idempotent creation. This means that calling the operation multiple times with the same client request token has no effect. By using the idempotent operation, you can retry a <code>CreateFileSystem</code> operation without the risk of creating an extra file system. This approach can be useful when an initial call fails in a way that makes it unclear whether a file system was created. Examples are if a transport-level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a file system, the client receives a success message as long as the parameters are the same.</p> <note> <p>The <code>CreateFileSystem</code> call returns while the file system's lifecycle state is still <code>CREATING</code>. You can check the file-system creation status by calling the <a href=\"https://docs.aws.amazon.com/fsx/latest/APIReference/API_DescribeFileSystems.html\">DescribeFileSystems</a> operation, which returns the file system state along with other information.</p> </note>" }, "CreateFileSystemFromBackup":{ "name":"CreateFileSystemFromBackup", @@ -616,7 +616,7 @@ {"shape":"MissingFileSystemConfiguration"}, {"shape":"ServiceLimitExceeded"} ], - "documentation":"<p>Use this operation to update the configuration of an existing Amazon FSx file system. You can update multiple properties in a single request.</p> <p>For Amazon FSx for Windows File Server file systems, you can update the following properties:</p> <ul> <li> <p> <code>AuditLogConfiguration</code> </p> </li> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>SelfManagedActiveDirectoryConfiguration</code> </p> </li> <li> <p> <code>StorageCapacity</code> </p> </li> <li> <p> <code>ThroughputCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul> <p>For Amazon FSx for Lustre file systems, you can update the following properties:</p> <ul> <li> <p> <code>AutoImportPolicy</code> </p> </li> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>DataCompressionType</code> </p> </li> <li> <p> <code>StorageCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul> <p>For Amazon FSx for NetApp ONTAP file systems, you can update the following properties:</p> <ul> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>DiskIopsConfiguration</code> </p> </li> <li> <p> <code>FsxAdminPassword</code> </p> </li> <li> <p> <code>StorageCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul> <p>For the Amazon FSx for OpenZFS file systems, you can update the following properties:</p> <ul> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>CopyTagsToBackups</code> </p> </li> <li> <p> <code>CopyTagsToVolumes</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>ThroughputCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul>" + "documentation":"<p>Use this operation to update the configuration of an existing Amazon FSx file system. You can update multiple properties in a single request.</p> <p>For Amazon FSx for Windows File Server file systems, you can update the following properties:</p> <ul> <li> <p> <code>AuditLogConfiguration</code> </p> </li> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>SelfManagedActiveDirectoryConfiguration</code> </p> </li> <li> <p> <code>StorageCapacity</code> </p> </li> <li> <p> <code>ThroughputCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul> <p>For Amazon FSx for Lustre file systems, you can update the following properties:</p> <ul> <li> <p> <code>AutoImportPolicy</code> </p> </li> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>DataCompressionType</code> </p> </li> <li> <p> <code>StorageCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul> <p>For Amazon FSx for NetApp ONTAP file systems, you can update the following properties:</p> <ul> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>DiskIopsConfiguration</code> </p> </li> <li> <p> <code>FsxAdminPassword</code> </p> </li> <li> <p> <code>StorageCapacity</code> </p> </li> <li> <p> <code>ThroughputCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul> <p>For the Amazon FSx for OpenZFS file systems, you can update the following properties:</p> <ul> <li> <p> <code>AutomaticBackupRetentionDays</code> </p> </li> <li> <p> <code>CopyTagsToBackups</code> </p> </li> <li> <p> <code>CopyTagsToVolumes</code> </p> </li> <li> <p> <code>DailyAutomaticBackupStartTime</code> </p> </li> <li> <p> <code>ThroughputCapacity</code> </p> </li> <li> <p> <code>WeeklyMaintenanceStartTime</code> </p> </li> </ul>" }, "UpdateSnapshot":{ "name":"UpdateSnapshot", @@ -2838,11 +2838,11 @@ }, "KmsKeyId":{ "shape":"KmsKeyId", - "documentation":"<p>The ID of the Key Management Service (KMS) key used to encrypt the file system's data for Amazon FSx for Windows File Server file systems, Amazon FSx for NetApp ONTAP file systems, and <code>PERSISTENT</code> Amazon FSx for Lustre file systems at rest. If this ID isn't specified, the Amazon FSx-managed key for your account is used. The scratch Amazon FSx for Lustre file systems are always encrypted at rest using the Amazon FSx-managed key for your account. For more information, see <a href=\"https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html\">Encrypt</a> in the <i>Key Management Service API Reference</i>.</p>" + "documentation":"<p>The ID of the Key Management Service (KMS) key used to encrypt Amazon FSx file system data. Used as follows with Amazon FSx file system types:</p> <ul> <li> <p>Amazon FSx for Lustre <code>PERSISTENT_1</code> and <code>PERSISTENT_2</code> deployment types only.</p> <p> <code>SCRATCH_1</code> and <code>SCRATCH_2</code> types are encrypted using the Amazon FSx service KMS key for your account.</p> </li> <li> <p>Amazon FSx for NetApp ONTAP</p> </li> <li> <p>Amazon FSx for OpenZFS</p> </li> <li> <p>Amazon FSx for Windows File Server</p> </li> </ul>" }, "ResourceARN":{ "shape":"ResourceARN", - "documentation":"<p>The Amazon Resource Name (ARN) for the file system resource.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the file system resource.</p>" }, "Tags":{ "shape":"Tags", @@ -2850,7 +2850,7 @@ }, "WindowsConfiguration":{ "shape":"WindowsFileSystemConfiguration", - "documentation":"<p>The configuration for this FSx for Windows File Server file system.</p>" + "documentation":"<p>The configuration for this Amazon FSx for Windows File Server file system.</p>" }, "LustreConfiguration":{"shape":"LustreFileSystemConfiguration"}, "AdministrativeActions":{ @@ -2859,7 +2859,7 @@ }, "OntapConfiguration":{ "shape":"OntapFileSystemConfiguration", - "documentation":"<p>The configuration for this FSx for ONTAP file system.</p>" + "documentation":"<p>The configuration for this Amazon FSx for NetApp ONTAP file system.</p>" }, "FileSystemTypeVersion":{ "shape":"FileSystemTypeVersion", @@ -2979,7 +2979,7 @@ "FileSystems":{ "type":"list", "member":{"shape":"FileSystem"}, - "documentation":"<p>A list of file systems.</p>", + "documentation":"<p>A list of file system resource descriptions.</p>", "max":50 }, "Filter":{ @@ -3190,7 +3190,7 @@ }, "KmsKeyId":{ "type":"string", - "documentation":"<p>The ID of the Key Management Service (KMS) key used to encrypt the file system's data for Amazon FSx for Windows File Server file systems, Amazon FSx for NetApp ONTAP file systems, and Amazon FSx for Lustre <code>PERSISTENT_1</code> and <code>PERSISTENT_2</code> file systems at rest. If this ID isn't specified, the key managed by Amazon FSx is used. The Amazon FSx for Lustre <code>SCRATCH_1</code> and <code>SCRATCH_2</code> file systems are always encrypted at rest using Amazon FSx-managed keys. For more information, see <a href=\"https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html\">Encrypt</a> in the <i>Key Management Service API Reference</i>.</p>", + "documentation":"<p>Specifies the ID of the Key Management Service (KMS) key to use for encrypting data on Amazon FSx file systems, as follows:</p> <ul> <li> <p>Amazon FSx for Lustre <code>PERSISTENT_1</code> and <code>PERSISTENT_2</code> deployment types only.</p> <p> <code>SCRATCH_1</code> and <code>SCRATCH_2</code> types are encrypted using the Amazon FSx service KMS key for your account.</p> </li> <li> <p>Amazon FSx for NetApp ONTAP</p> </li> <li> <p>Amazon FSx for OpenZFS</p> </li> <li> <p>Amazon FSx for Windows File Server</p> </li> </ul> <p>If a <code>KmsKeyId</code> isn't specified, the Amazon FSx-managed KMS key for your account is used. For more information, see <a href=\"https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html\">Encrypt</a> in the <i>Key Management Service API Reference</i>.</p>", "max":2048, "min":1, "pattern":"^.{1,2048}$" @@ -3349,7 +3349,7 @@ }, "MegabytesPerSecond":{ "type":"integer", - "documentation":"<p>The sustained throughput of an Amazon FSx file system in MBps.</p>", + "documentation":"<p>The sustained throughput of an Amazon FSx file system in Megabytes per second (MBps).</p>", "max":4096, "min":8 }, @@ -3525,7 +3525,7 @@ "documentation":"<p>The options to use when mounting the file system. For a list of options that you can use with Network File System (NFS), see the <a href=\"https://linux.die.net/man/5/exports\">exports(5) - Linux man page</a>. When choosing your options, consider the following:</p> <ul> <li> <p> <code>crossmnt</code> is used by default. If you don't specify <code>crossmnt</code> when changing the client configuration, you won't be able to see or access snapshots in your file system's snapshot directory.</p> </li> <li> <p> <code>sync</code> is used by default. If you instead specify <code>async</code>, the system acknowledges writes before writing to disk. If the system crashes before the writes are finished, you lose the unwritten data. </p> </li> </ul>" } }, - "documentation":"<p>Specifies who can mount the file system and the options that can be used while mounting the file system.</p>" + "documentation":"<p>Specifies who can mount an OpenZFS file system and the options available while mounting the file system.</p>" }, "OpenZFSClientConfigurations":{ "type":"list", @@ -4230,7 +4230,7 @@ "documentation":"<p>The security style of the root volume of the SVM.</p>" } }, - "documentation":"<p>Describes the Amazon FSx for NetApp ONTAP storage virtual machine (SVM) configuraton.</p>" + "documentation":"<p>Describes the Amazon FSx for NetApp ONTAP storage virtual machine (SVM) configuration.</p>" }, "StorageVirtualMachineFilter":{ "type":"structure", @@ -4592,6 +4592,10 @@ "DiskIopsConfiguration":{ "shape":"DiskIopsConfiguration", "documentation":"<p>The SSD IOPS (input/output operations per second) configuration for an Amazon FSx for NetApp ONTAP file system. The default is 3 IOPS per GB of storage capacity, but you can provision additional IOPS per GB of storage. The configuration consists of an IOPS mode (<code>AUTOMATIC</code> or <code>USER_PROVISIONED</code>), and in the case of <code>USER_PROVISIONED</code> IOPS, the total number of SSD IOPS provisioned.</p>" + }, + "ThroughputCapacity":{ + "shape":"MegabytesPerSecond", + "documentation":"<p>Specifies the throughput of an FSx for NetApp ONTAP file system, measured in megabytes per second (MBps). Valid values are 64, 128, 256, 512, 1024, 2048, 3072, or 4096 MB/s.</p>" } }, "documentation":"<p>The configuration updates for an Amazon FSx for NetApp ONTAP file system.</p>" diff --git a/contrib/python/botocore/py3/botocore/data/grafana/2020-08-18/service-2.json b/contrib/python/botocore/py3/botocore/data/grafana/2020-08-18/service-2.json index 1bdc083bdd..f6e92d894c 100644 --- a/contrib/python/botocore/py3/botocore/data/grafana/2020-08-18/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/grafana/2020-08-18/service-2.json @@ -142,6 +142,24 @@ ], "documentation":"<p>Lists the users and groups who have the Grafana <code>Admin</code> and <code>Editor</code> roles in this workspace. If you use this operation without specifying <code>userId</code> or <code>groupId</code>, the operation returns the roles of all users and groups. If you specify a <code>userId</code> or a <code>groupId</code>, only the roles for that user or group are returned. If you do this, you can specify only one <code>userId</code> or one <code>groupId</code>.</p>" }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>The <code>ListTagsForResource</code> operation returns the tags that are associated with the Amazon Managed Service for Grafana resource specified by the <code>resourceArn</code>. Currently, the only resource that can be tagged is a workspace. </p>" + }, "ListWorkspaces":{ "name":"ListWorkspaces", "http":{ @@ -158,6 +176,43 @@ ], "documentation":"<p>Returns a list of Amazon Managed Grafana workspaces in the account, with some information about each workspace. For more complete information about one workspace, use <a href=\"https://docs.aws.amazon.com/AAMG/latest/APIReference/API_DescribeWorkspace.html\">DescribeWorkspace</a>.</p>" }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>The <code>TagResource</code> operation associates tags with an Amazon Managed Grafana resource. Currently, the only resource that can be tagged is workspaces. </p> <p>If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.</p>" + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{resourceArn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>The <code>UntagResource</code> operation removes the association of the tag with the Amazon Managed Grafana resource. </p>", + "idempotent":true + }, "UpdatePermissions":{ "name":"UpdatePermissions", "http":{ @@ -429,19 +484,23 @@ }, "permissionType":{ "shape":"PermissionType", - "documentation":"<p>If you specify <code>Service Managed</code>, Amazon Managed Grafana automatically creates the IAM roles and provisions the permissions that the workspace needs to use Amazon Web Services data sources and notification channels.</p> <p>If you specify <code>CUSTOMER_MANAGED</code>, you will manage those roles and permissions yourself. If you are creating this workspace in a member account of an organization that is not a delegated administrator account, and you want the workspace to access data sources in other Amazon Web Services accounts in the organization, you must choose <code>CUSTOMER_MANAGED</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/grafana/latest/userguide/AMG-manage-permissions.html\">Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels</a> </p>" + "documentation":"<p>If you specify <code>SERVICE_MANAGED</code> on AWS Grafana console, Amazon Managed Grafana automatically creates the IAM roles and provisions the permissions that the workspace needs to use Amazon Web Services data sources and notification channels. In CLI mode, the permissionType <code>SERVICE_MANAGED</code> will not create the IAM role for you.</p> <p>If you specify <code>CUSTOMER_MANAGED</code>, you will manage those roles and permissions yourself. If you are creating this workspace in a member account of an organization that is not a delegated administrator account, and you want the workspace to access data sources in other Amazon Web Services accounts in the organization, you must choose <code>CUSTOMER_MANAGED</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/grafana/latest/userguide/AMG-manage-permissions.html\">Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels</a>.</p>" }, "stackSetName":{ "shape":"StackSetName", "documentation":"<p>The name of the CloudFormation stack set to use to generate IAM roles to be used for this workspace.</p>" }, + "tags":{ + "shape":"TagMap", + "documentation":"<p>The list of tags associated with the workspace.</p>" + }, "workspaceDataSources":{ "shape":"DataSourceTypesList", "documentation":"<p>Specify the Amazon Web Services data sources that you want to be queried in this workspace. Specifying these data sources here enables Amazon Managed Grafana to create IAM roles and permissions that allow Amazon Managed Grafana to read data from these sources. You must still add them as data sources in the Grafana console in the workspace.</p> <p>If you don't specify a data source here, you can still add it as a data source in the workspace console later. However, you will then have to manually configure permissions for it.</p>" }, "workspaceDescription":{ "shape":"Description", - "documentation":"<p>A description for the workspace. This is used only to help you identify this workspace.</p>" + "documentation":"<p>A description for the workspace. This is used only to help you identify this workspace.</p> <p>Pattern: <code>^[\\\\p{L}\\\\p{Z}\\\\p{N}\\\\p{P}]{0,2048}$</code> </p>" }, "workspaceName":{ "shape":"WorkspaceName", @@ -457,7 +516,7 @@ }, "workspaceRoleArn":{ "shape":"IamRoleArn", - "documentation":"<p>The workspace needs an IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from. If you already have a role that you want to use, specify it here. If you omit this field and you specify some Amazon Web Services resources in <code>workspaceDataSources</code> or <code>workspaceNotificationDestinations</code>, a new IAM role with the necessary permissions is automatically created.</p>" + "documentation":"<p>The workspace needs an IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from. If you already have a role that you want to use, specify it here. The permission type should be set to <code>CUSTOMER_MANAGED</code>.</p>" } } }, @@ -479,7 +538,9 @@ "PROMETHEUS", "XRAY", "TIMESTREAM", - "SITEWISE" + "SITEWISE", + "ATHENA", + "REDSHIFT" ] }, "DataSourceTypesList":{ @@ -719,6 +780,27 @@ } } }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{ + "shape":"String", + "documentation":"<p>The ARN of the resource the list of tags are associated with.</p>", + "location":"uri", + "locationName":"resourceArn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{ + "shape":"TagMap", + "documentation":"<p>The list of tags that are associated with the resource.</p>" + } + } + }, "ListWorkspacesRequest":{ "type":"structure", "members":{ @@ -960,6 +1042,51 @@ }, "StackSetName":{"type":"string"}, "String":{"type":"string"}, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeys":{ + "type":"list", + "member":{"shape":"TagKey"} + }, + "TagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":50, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "documentation":"<p>The ARN of the resource the tag is associated with.</p>", + "location":"uri", + "locationName":"resourceArn" + }, + "tags":{ + "shape":"TagMap", + "documentation":"<p>The list of tag keys and values to associate with the resource. You can associate tag keys only, tags (key and values) only or a combination of tag keys and tags.</p>" + } + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, "ThrottlingException":{ "type":"structure", "required":["message"], @@ -992,6 +1119,32 @@ "retryable":{"throttling":false} }, "Timestamp":{"type":"timestamp"}, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{ + "shape":"String", + "documentation":"<p>The ARN of the resource the tag association is removed from. </p>", + "location":"uri", + "locationName":"resourceArn" + }, + "tagKeys":{ + "shape":"TagKeys", + "documentation":"<p>The key values of the tag to be removed from the resource.</p>", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateAction":{ "type":"string", "enum":[ @@ -1194,7 +1347,7 @@ "members":{ "id":{ "shape":"SsoId", - "documentation":"<p>The ID of the user or group.</p>" + "documentation":"<p>The ID of the user or group.</p> <p>Pattern: <code>^([0-9a-fA-F]{10}-|)[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}$</code> </p>" }, "type":{ "shape":"UserType", @@ -1365,6 +1518,10 @@ "shape":"WorkspaceStatus", "documentation":"<p>The current status of the workspace.</p>" }, + "tags":{ + "shape":"TagMap", + "documentation":"<p>The list of tags associated with the workspace.</p>" + }, "workspaceRoleArn":{ "shape":"IamRoleArn", "documentation":"<p>The IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from. This role must already exist.</p>" @@ -1452,6 +1609,10 @@ "status":{ "shape":"WorkspaceStatus", "documentation":"<p>The current status of the workspace.</p>" + }, + "tags":{ + "shape":"TagMap", + "documentation":"<p>The list of tags associated with the workspace.</p>" } }, "documentation":"<p>A structure that contains some information about one workspace in the account.</p>" diff --git a/contrib/python/botocore/py3/botocore/data/iot-data/2015-05-28/service-2.json b/contrib/python/botocore/py3/botocore/data/iot-data/2015-05-28/service-2.json index 1227a9f7a2..f6f3ab6625 100644 --- a/contrib/python/botocore/py3/botocore/data/iot-data/2015-05-28/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/iot-data/2015-05-28/service-2.json @@ -2,7 +2,7 @@ "version":"2.0", "metadata":{ "apiVersion":"2015-05-28", - "endpointPrefix":"data.iot", + "endpointPrefix":"data-ats.iot", "protocol":"rest-json", "serviceFullName":"AWS IoT Data Plane", "serviceId":"IoT Data Plane", @@ -48,7 +48,7 @@ {"shape":"InternalFailureException"}, {"shape":"MethodNotAllowedException"} ], - "documentation":"<p>Gets the details of a single retained message for the specified topic.</p> <p>This action returns the message payload of the retained message, which can incur messaging costs. To list only the topic names of the retained messages, call <a href=\"/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html\">ListRetainedMessages</a>.</p> <p>Requires permission to access the <a href=\"https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions\">GetRetainedMessage</a> action.</p> <p>For more information about messaging costs, see <a href=\"http://aws.amazon.com/iot-core/pricing/#Messaging\">IoT Core pricing - Messaging</a>.</p>" + "documentation":"<p>Gets the details of a single retained message for the specified topic.</p> <p>This action returns the message payload of the retained message, which can incur messaging costs. To list only the topic names of the retained messages, call <a href=\"/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html\">ListRetainedMessages</a>.</p> <p>Requires permission to access the <a href=\"https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions\">GetRetainedMessage</a> action.</p> <p>For more information about messaging costs, see <a href=\"http://aws.amazon.com/iot-core/pricing/#Messaging\">Amazon Web Services IoT Core pricing - Messaging</a>.</p>" }, "GetThingShadow":{ "name":"GetThingShadow", @@ -105,7 +105,7 @@ {"shape":"InternalFailureException"}, {"shape":"MethodNotAllowedException"} ], - "documentation":"<p>Lists summary information about the retained messages stored for the account.</p> <p>This action returns only the topic names of the retained messages. It doesn't return any message payloads. Although this action doesn't return a message payload, it can still incur messaging costs.</p> <p>To get the message payload of a retained message, call <a href=\"https://docs.aws.amazon.com/iot/latest/developerguide/API_iotdata_GetRetainedMessage.html\">GetRetainedMessage</a> with the topic name of the retained message.</p> <p>Requires permission to access the <a href=\"https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions\">ListRetainedMessages</a> action.</p> <p>For more information about messaging costs, see <a href=\"http://aws.amazon.com/iot-core/pricing/#Messaging\">IoT Core pricing - Messaging</a>.</p>" + "documentation":"<p>Lists summary information about the retained messages stored for the account.</p> <p>This action returns only the topic names of the retained messages. It doesn't return any message payloads. Although this action doesn't return a message payload, it can still incur messaging costs.</p> <p>To get the message payload of a retained message, call <a href=\"https://docs.aws.amazon.com/iot/latest/developerguide/API_iotdata_GetRetainedMessage.html\">GetRetainedMessage</a> with the topic name of the retained message.</p> <p>Requires permission to access the <a href=\"https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions\">ListRetainedMessages</a> action.</p> <p>For more information about messaging costs, see <a href=\"http://aws.amazon.com/iot-core/pricing/#Messaging\">Amazon Web Services IoT Core pricing - Messaging</a>.</p>" }, "Publish":{ "name":"Publish", @@ -120,7 +120,7 @@ {"shape":"UnauthorizedException"}, {"shape":"MethodNotAllowedException"} ], - "documentation":"<p>Publishes an MQTT message.</p> <p>Requires permission to access the <a href=\"https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions\">Publish</a> action.</p> <p>For more information about MQTT messages, see <a href=\"http://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html\">MQTT Protocol</a> in the IoT Developer Guide.</p> <p>For more information about messaging costs, see <a href=\"http://aws.amazon.com/iot-core/pricing/#Messaging\">IoT Core pricing - Messaging</a>.</p>" + "documentation":"<p>Publishes an MQTT message.</p> <p>Requires permission to access the <a href=\"https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions\">Publish</a> action.</p> <p>For more information about MQTT messages, see <a href=\"http://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html\">MQTT Protocol</a> in the IoT Developer Guide.</p> <p>For more information about messaging costs, see <a href=\"http://aws.amazon.com/iot-core/pricing/#Messaging\">Amazon Web Services IoT Core pricing - Messaging</a>.</p>" }, "UpdateThingShadow":{ "name":"UpdateThingShadow", @@ -403,7 +403,7 @@ }, "payload":{ "shape":"Payload", - "documentation":"<p>The message body. MQTT accepts text, binary, and empty (null) message payloads.</p> <p>Publishing an empty (null) payload with <b>retain</b> = <code>true</code> deletes the retained message identified by <b>topic</b> from IoT Core.</p>" + "documentation":"<p>The message body. MQTT accepts text, binary, and empty (null) message payloads.</p> <p>Publishing an empty (null) payload with <b>retain</b> = <code>true</code> deletes the retained message identified by <b>topic</b> from Amazon Web Services IoT Core.</p>" } }, "documentation":"<p>The input for the Publish operation.</p>", diff --git a/contrib/python/botocore/py3/botocore/data/iot/2015-05-28/service-2.json b/contrib/python/botocore/py3/botocore/data/iot/2015-05-28/service-2.json index d588fd7932..0d70cad2f5 100644 --- a/contrib/python/botocore/py3/botocore/data/iot/2015-05-28/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/iot/2015-05-28/service-2.json @@ -6431,17 +6431,17 @@ "members":{ "metricName":{ "shape":"MetricName", - "documentation":"<p> The name of the custom metric. This will be used in the metric report submitted from the device/thing. Shouldn't begin with <code>aws:</code>. Cannot be updated once defined.</p>", + "documentation":"<p> The name of the custom metric. This will be used in the metric report submitted from the device/thing. The name can't begin with <code>aws:</code>. You can't change the name after you define it.</p>", "location":"uri", "locationName":"metricName" }, "displayName":{ "shape":"CustomMetricDisplayName", - "documentation":"<p> Field represents a friendly name in the console for the custom metric; it doesn't have to be unique. Don't use this name as the metric identifier in the device metric report. Can be updated once defined.</p>" + "documentation":"<p> The friendly name in the console for the custom metric. This name doesn't have to be unique. Don't use this name as the metric identifier in the device metric report. You can update the friendly name after you define it.</p>" }, "metricType":{ "shape":"CustomMetricType", - "documentation":"<p> The type of the custom metric. Types include <code>string-list</code>, <code>ip-address-list</code>, <code>number-list</code>, and <code>number</code>. </p>" + "documentation":"<p> The type of the custom metric. </p> <important> <p>The type <code>number</code> only takes a single metric value as an input, but when you submit the metrics value in the DeviceMetrics report, you must pass it as an array with a single value.</p> </important>" }, "tags":{ "shape":"TagList", @@ -6463,7 +6463,7 @@ }, "metricArn":{ "shape":"CustomMetricArn", - "documentation":"<p> The Amazon Resource Number (ARN) of the custom metric, e.g. <code>arn:<i>aws-partition</i>:iot:<i>region</i>:<i>accountId</i>:custommetric/<i>metricName</i> </code> </p>" + "documentation":"<p> The Amazon Resource Number (ARN) of the custom metric. For example, <code>arn:<i>aws-partition</i>:iot:<i>region</i>:<i>accountId</i>:custommetric/<i>metricName</i> </code> </p>" } } }, @@ -7250,7 +7250,7 @@ }, "credentialDurationSeconds":{ "shape":"CredentialDurationSeconds", - "documentation":"<p>How long (in seconds) the credentials will be valid. The default value is 3,600 seconds.</p>" + "documentation":"<p>How long (in seconds) the credentials will be valid. The default value is 3,600 seconds.</p> <p>This value must be less than or equal to the maximum session duration of the IAM role that the role alias references.</p>" }, "tags":{ "shape":"TagList", @@ -7609,11 +7609,11 @@ }, "hashAlgorithm":{ "shape":"HashAlgorithm", - "documentation":"<p>The hash algorithm used to code sign the file.</p>" + "documentation":"<p>The hash algorithm used to code sign the file. You can use a string as the algorithm name if the target over-the-air (OTA) update devices are able to verify the signature that was generated using the same signature algorithm. For example, FreeRTOS uses <code>SHA256</code> or <code>SHA1</code>, so you can pass either of them based on which was used for generating the signature.</p>" }, "signatureAlgorithm":{ "shape":"SignatureAlgorithm", - "documentation":"<p>The signature algorithm used to code sign the file.</p>" + "documentation":"<p>The signature algorithm used to code sign the file. You can use a string as the algorithm name if the target over-the-air (OTA) update devices are able to verify the signature that was generated using the same signature algorithm. For example, FreeRTOS uses <code>ECDSA</code> or <code>RSA</code>, so you can pass either of them based on which was used for generating the signature.</p>" } }, "documentation":"<p>Describes a custom method used to code sign a file.</p>" @@ -8614,7 +8614,7 @@ }, "metricType":{ "shape":"CustomMetricType", - "documentation":"<p> The type of the custom metric. Types include <code>string-list</code>, <code>ip-address-list</code>, <code>number-list</code>, and <code>number</code>. </p>" + "documentation":"<p> The type of the custom metric. </p> <important> <p>The type <code>number</code> only takes a single metric value as an input, but while submitting the metrics value in the DeviceMetrics report, it must be passed as an array with a single value.</p> </important>" }, "displayName":{ "shape":"CustomMetricDisplayName", @@ -15230,7 +15230,7 @@ }, "setAsActive":{ "shape":"SetAsActive", - "documentation":"<p>A boolean value that specifies if the CA certificate is set to active.</p>", + "documentation":"<p>A boolean value that specifies if the CA certificate is set to active.</p> <p>Valid values: <code>ACTIVE | INACTIVE</code> </p>", "location":"querystring", "locationName":"setAsActive" }, @@ -15279,14 +15279,14 @@ }, "setAsActive":{ "shape":"SetAsActiveFlag", - "documentation":"<p>A boolean value that specifies if the certificate is set to active.</p>", + "documentation":"<p>A boolean value that specifies if the certificate is set to active.</p> <p>Valid values: <code>ACTIVE | INACTIVE</code> </p>", "deprecated":true, "location":"querystring", "locationName":"setAsActive" }, "status":{ "shape":"CertificateStatus", - "documentation":"<p>The status of the register certificate request.</p>" + "documentation":"<p>The status of the register certificate request. Valid values that you can use include <code>ACTIVE</code>, <code>INACTIVE</code>, and <code>REVOKED</code>.</p>" } }, "documentation":"<p>The input to the RegisterCertificate operation.</p>" @@ -18055,7 +18055,7 @@ }, "metricType":{ "shape":"CustomMetricType", - "documentation":"<p> The type of the custom metric. Types include <code>string-list</code>, <code>ip-address-list</code>, <code>number-list</code>, and <code>number</code>. </p>" + "documentation":"<p> The type of the custom metric. </p> <important> <p>The type <code>number</code> only takes a single metric value as an input, but while submitting the metrics value in the DeviceMetrics report, it must be passed as an array with a single value.</p> </important>" }, "displayName":{ "shape":"CustomMetricDisplayName", @@ -18426,7 +18426,7 @@ }, "credentialDurationSeconds":{ "shape":"CredentialDurationSeconds", - "documentation":"<p>The number of seconds the credential will be valid.</p>" + "documentation":"<p>The number of seconds the credential will be valid.</p> <p>This value must be less than or equal to the maximum session duration of the IAM role that the role alias references.</p>" } } }, diff --git a/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json new file mode 100644 index 0000000000..ecdcd93a20 --- /dev/null +++ b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/paginators-1.json @@ -0,0 +1,70 @@ +{ + "pagination": { + "DescribeAccountAttributes": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "AccountAttributes" + }, + "DescribeAccountLimits": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "AccountLimits" + }, + "DescribeConfigurationSets": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ConfigurationSets" + }, + "DescribeKeywords": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Keywords" + }, + "DescribeOptOutLists": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "OptOutLists" + }, + "DescribeOptedOutNumbers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "OptedOutNumbers" + }, + "DescribePhoneNumbers": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "PhoneNumbers" + }, + "DescribePools": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "Pools" + }, + "DescribeSenderIds": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "SenderIds" + }, + "DescribeSpendLimits": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "SpendLimits" + }, + "ListPoolOriginationIdentities": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "OriginationIdentities" + } + } +} diff --git a/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/paginators-1.sdk-extras.json b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/paginators-1.sdk-extras.json new file mode 100644 index 0000000000..99d5293234 --- /dev/null +++ b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/paginators-1.sdk-extras.json @@ -0,0 +1,25 @@ +{ + "version": 1.0, + "merge": { + "pagination": { + "DescribeKeywords": { + "non_aggregate_keys": [ + "OriginationIdentity", + "OriginationIdentityArn" + ] + }, + "DescribeOptedOutNumbers": { + "non_aggregate_keys": [ + "OptOutListArn", + "OptOutListName" + ] + }, + "ListPoolOriginationIdentities": { + "non_aggregate_keys": [ + "PoolArn", + "PoolId" + ] + } + } + } +} diff --git a/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/service-2.json b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/service-2.json new file mode 100644 index 0000000000..b0df1c52ae --- /dev/null +++ b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/service-2.json @@ -0,0 +1,4116 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-03-31", + "endpointPrefix":"sms-voice", + "jsonVersion":"1.0", + "protocol":"json", + "serviceFullName":"Amazon Pinpoint SMS Voice V2", + "serviceId":"Pinpoint SMS Voice V2", + "signatureVersion":"v4", + "signingName":"sms-voice", + "targetPrefix":"PinpointSMSVoiceV2", + "uid":"pinpoint-sms-voice-v2-2022-03-31" + }, + "operations":{ + "AssociateOriginationIdentity":{ + "name":"AssociateOriginationIdentity", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AssociateOriginationIdentityRequest"}, + "output":{"shape":"AssociateOriginationIdentityResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Associates the specified origination identity with a pool.</p> <p>If the origination identity is a phone number and is already associated with another pool, an Error is returned. A sender ID can be associated with multiple pools.</p> <p>If the origination identity configuration doesn't match the pool's configuration, an Error is returned.</p>" + }, + "CreateConfigurationSet":{ + "name":"CreateConfigurationSet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateConfigurationSetRequest"}, + "output":{"shape":"CreateConfigurationSetResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates a new configuration set. After you create the configuration set, you can add one or more event destinations to it.</p> <p>A configuration set is a set of rules that you apply to the SMS and voice messages that you send.</p> <p>When you send a message, you can optionally specify a single configuration set.</p>" + }, + "CreateEventDestination":{ + "name":"CreateEventDestination", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateEventDestinationRequest"}, + "output":{"shape":"CreateEventDestinationResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates a new event destination in a configuration set.</p> <p>An event destination is a location where you send message events. The event options are Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon SNS. For example, when a message is delivered successfully, you can send information about that event to an event destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.</p> <p>Each configuration set can contain between 0 and 5 event destinations. Each event destination can contain a reference to a single destination, such as a CloudWatch or Kinesis Data Firehose destination.</p>" + }, + "CreateOptOutList":{ + "name":"CreateOptOutList", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateOptOutListRequest"}, + "output":{"shape":"CreateOptOutListResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates a new opt-out list.</p> <p>If the opt-out list name already exists, an Error is returned.</p> <p>An opt-out list is a list of phone numbers that are opted out, meaning you can't send SMS or voice messages to them. If end user replies with the keyword \"STOP,\" an entry for the phone number is added to the opt-out list. In addition to STOP, your recipients can use any supported opt-out keyword, such as CANCEL or OPTOUT. For a list of supported opt-out keywords, see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-manage.html#channels-sms-manage-optout\"> SMS opt out </a> in the <i>Amazon Pinpoint User Guide</i>.</p>" + }, + "CreatePool":{ + "name":"CreatePool", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreatePoolRequest"}, + "output":{"shape":"CreatePoolResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates a new pool and associates the specified origination identity to the pool. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.</p> <p>The new pool inherits its configuration from the specified origination identity. This includes keywords, message type, opt-out list, two-way configuration, and self-managed opt-out configuration. Deletion protection isn't inherited from the origination identity and defaults to false.</p> <p>If the origination identity is a phone number and is already associated with another pool, an Error is returned. A sender ID can be associated with multiple pools.</p>" + }, + "DeleteConfigurationSet":{ + "name":"DeleteConfigurationSet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteConfigurationSetRequest"}, + "output":{"shape":"DeleteConfigurationSetResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing configuration set.</p> <p>A configuration set is a set of rules that you apply to voice and SMS messages that you send. In a configuration set, you can specify a destination for specific types of events related to voice and SMS messages. </p>" + }, + "DeleteDefaultMessageType":{ + "name":"DeleteDefaultMessageType", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDefaultMessageTypeRequest"}, + "output":{"shape":"DeleteDefaultMessageTypeResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing default message type on a configuration set.</p> <p> A message type is a type of messages that you plan to send. If you send account-related messages or time-sensitive messages such as one-time passcodes, choose <b>Transactional</b>. If you plan to send messages that contain marketing material or other promotional content, choose <b>Promotional</b>. This setting applies to your entire Amazon Web Services account. </p>" + }, + "DeleteDefaultSenderId":{ + "name":"DeleteDefaultSenderId", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDefaultSenderIdRequest"}, + "output":{"shape":"DeleteDefaultSenderIdResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing default sender ID on a configuration set.</p> <p>A default sender ID is the identity that appears on recipients' devices when they receive SMS messages. Support for sender ID capabilities varies by country or region.</p>" + }, + "DeleteEventDestination":{ + "name":"DeleteEventDestination", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteEventDestinationRequest"}, + "output":{"shape":"DeleteEventDestinationResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing event destination.</p> <p>An event destination is a location where you send response information about the messages that you send. For example, when a message is delivered successfully, you can send information about that event to an Amazon CloudWatch destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.</p>" + }, + "DeleteKeyword":{ + "name":"DeleteKeyword", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteKeywordRequest"}, + "output":{"shape":"DeleteKeywordResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing keyword from an origination phone number or pool.</p> <p>A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.</p> <p>Keywords \"HELP\" and \"STOP\" can't be deleted or modified.</p>" + }, + "DeleteOptOutList":{ + "name":"DeleteOptOutList", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteOptOutListRequest"}, + "output":{"shape":"DeleteOptOutListResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing opt-out list. All opted out phone numbers in the opt-out list are deleted.</p> <p>If the specified opt-out list name doesn't exist or is in-use by an origination phone number or pool, an Error is returned.</p>" + }, + "DeleteOptedOutNumber":{ + "name":"DeleteOptedOutNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteOptedOutNumberRequest"}, + "output":{"shape":"DeleteOptedOutNumberResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing opted out destination phone number from the specified opt-out list.</p> <p>Each destination phone number can only be deleted once every 30 days.</p> <p>If the specified destination phone number doesn't exist or if the opt-out list doesn't exist, an Error is returned.</p>" + }, + "DeletePool":{ + "name":"DeletePool", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeletePoolRequest"}, + "output":{"shape":"DeletePoolResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an existing pool. Deleting a pool disassociates all origination identities from that pool.</p> <p>If the pool status isn't active or if deletion protection is enabled, an Error is returned.</p> <p>A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.</p>" + }, + "DeleteTextMessageSpendLimitOverride":{ + "name":"DeleteTextMessageSpendLimitOverride", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTextMessageSpendLimitOverrideRequest"}, + "output":{"shape":"DeleteTextMessageSpendLimitOverrideResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an account-level monthly spending limit override for sending text messages. Deleting a spend limit override will set the <code>EnforcedLimit</code> to equal the <code>MaxLimit</code>, which is controlled by Amazon Web Services. For more information on spend limits (quotas) see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html\">Amazon Pinpoint quotas </a> in the <i>Amazon Pinpoint Developer Guide</i>.</p>" + }, + "DeleteVoiceMessageSpendLimitOverride":{ + "name":"DeleteVoiceMessageSpendLimitOverride", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteVoiceMessageSpendLimitOverrideRequest"}, + "output":{"shape":"DeleteVoiceMessageSpendLimitOverrideResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Deletes an account level monthly spend limit override for sending voice messages. Deleting a spend limit override sets the <code>EnforcedLimit</code> equal to the <code>MaxLimit</code>, which is controlled by Amazon Web Services. For more information on spending limits (quotas) see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html\">Amazon Pinpoint quotas</a> in the <i>Amazon Pinpoint Developer Guide</i>.</p>" + }, + "DescribeAccountAttributes":{ + "name":"DescribeAccountAttributes", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeAccountAttributesRequest"}, + "output":{"shape":"DescribeAccountAttributesResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes attributes of your Amazon Web Services account. The supported account attributes include account tier, which indicates whether your account is in the sandbox or production environment. When you're ready to move your account out of the sandbox, create an Amazon Web Services Support case for a service limit increase request.</p> <p>New Amazon Pinpoint accounts are placed into an SMS or voice sandbox. The sandbox protects both Amazon Web Services end recipients and SMS or voice recipients from fraud and abuse. </p>" + }, + "DescribeAccountLimits":{ + "name":"DescribeAccountLimits", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeAccountLimitsRequest"}, + "output":{"shape":"DescribeAccountLimitsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the current Amazon Pinpoint SMS Voice V2 resource quotas for your account. The description for a quota includes the quota name, current usage toward that quota, and the quota's maximum value.</p> <p>When you establish an Amazon Web Services account, the account has initial quotas on the maximum number of configuration sets, opt-out lists, phone numbers, and pools that you can create in a given Region. For more information see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/developerguide/quotas.html\"> Amazon Pinpoint quotas </a> in the <i>Amazon Pinpoint Developer Guide</i>.</p>" + }, + "DescribeConfigurationSets":{ + "name":"DescribeConfigurationSets", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeConfigurationSetsRequest"}, + "output":{"shape":"DescribeConfigurationSetsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the specified configuration sets or all in your account.</p> <p>If you specify configuration set names, the output includes information for only the specified configuration sets. If you specify filters, the output includes information for only those configuration sets that meet the filter criteria. If you don't specify configuration set names or filters, the output includes information for all configuration sets.</p> <p>If you specify a configuration set name that isn't valid, an error is returned.</p>" + }, + "DescribeKeywords":{ + "name":"DescribeKeywords", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeKeywordsRequest"}, + "output":{"shape":"DescribeKeywordsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the specified keywords or all keywords on your origination phone number or pool.</p> <p>A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.</p> <p>If you specify a keyword that isn't valid, an Error is returned.</p>" + }, + "DescribeOptOutLists":{ + "name":"DescribeOptOutLists", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeOptOutListsRequest"}, + "output":{"shape":"DescribeOptOutListsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the specified opt-out list or all opt-out lists in your account.</p> <p>If you specify opt-out list names, the output includes information for only the specified opt-out lists. Opt-out lists include only those that meet the filter criteria. If you don't specify opt-out list names or filters, the output includes information for all opt-out lists.</p> <p>If you specify an opt-out list name that isn't valid, an Error is returned.</p>" + }, + "DescribeOptedOutNumbers":{ + "name":"DescribeOptedOutNumbers", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeOptedOutNumbersRequest"}, + "output":{"shape":"DescribeOptedOutNumbersResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the specified opted out destination numbers or all opted out destination numbers in an opt-out list.</p> <p>If you specify opted out numbers, the output includes information for only the specified opted out numbers. If you specify filters, the output includes information for only those opted out numbers that meet the filter criteria. If you don't specify opted out numbers or filters, the output includes information for all opted out destination numbers in your opt-out list.</p> <p>If you specify an opted out number that isn't valid, an Error is returned.</p>" + }, + "DescribePhoneNumbers":{ + "name":"DescribePhoneNumbers", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribePhoneNumbersRequest"}, + "output":{"shape":"DescribePhoneNumbersResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the specified origination phone number, or all the phone numbers in your account.</p> <p>If you specify phone number IDs, the output includes information for only the specified phone numbers. If you specify filters, the output includes information for only those phone numbers that meet the filter criteria. If you don't specify phone number IDs or filters, the output includes information for all phone numbers.</p> <p>If you specify a phone number ID that isn't valid, an Error is returned.</p>" + }, + "DescribePools":{ + "name":"DescribePools", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribePoolsRequest"}, + "output":{"shape":"DescribePoolsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Retrieves the specified pools or all pools associated with your Amazon Web Services account.</p> <p>If you specify pool IDs, the output includes information for only the specified pools. If you specify filters, the output includes information for only those pools that meet the filter criteria. If you don't specify pool IDs or filters, the output includes information for all pools.</p> <p>If you specify a pool ID that isn't valid, an Error is returned.</p> <p>A pool is a collection of phone numbers and SenderIds. A pool can include one or more phone numbers and SenderIds that are associated with your Amazon Web Services account.</p>" + }, + "DescribeSenderIds":{ + "name":"DescribeSenderIds", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeSenderIdsRequest"}, + "output":{"shape":"DescribeSenderIdsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the specified SenderIds or all SenderIds associated with your Amazon Web Services account.</p> <p>If you specify SenderIds, the output includes information for only the specified SenderIds. If you specify filters, the output includes information for only those SenderIds that meet the filter criteria. If you don't specify SenderIds or filters, the output includes information for all SenderIds.</p> <p>f you specify a sender ID that isn't valid, an Error is returned.</p>" + }, + "DescribeSpendLimits":{ + "name":"DescribeSpendLimits", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeSpendLimitsRequest"}, + "output":{"shape":"DescribeSpendLimitsResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Describes the current Amazon Pinpoint monthly spend limits for sending voice and text messages.</p> <p>When you establish an Amazon Web Services account, the account has initial monthly spend limit in a given Region. For more information on increasing your monthly spend limit, see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-awssupport-spend-threshold.html\"> Requesting increases to your monthly SMS spending quota for Amazon Pinpoint </a> in the <i>Amazon Pinpoint User Guide</i>.</p>" + }, + "DisassociateOriginationIdentity":{ + "name":"DisassociateOriginationIdentity", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisassociateOriginationIdentityRequest"}, + "output":{"shape":"DisassociateOriginationIdentityResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Removes the specified origination identity from an existing pool.</p> <p>If the origination identity isn't associated with the specified pool, an Error is returned.</p>" + }, + "ListPoolOriginationIdentities":{ + "name":"ListPoolOriginationIdentities", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListPoolOriginationIdentitiesRequest"}, + "output":{"shape":"ListPoolOriginationIdentitiesResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Lists all associated origination identities in your pool.</p> <p>If you specify filters, the output includes information for only those origination identities that meet the filter criteria.</p>" + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>List all tags associated with a resource.</p>" + }, + "PutKeyword":{ + "name":"PutKeyword", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutKeywordRequest"}, + "output":{"shape":"PutKeywordResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates or updates a keyword configuration on an origination phone number or pool.</p> <p> A keyword is a word that you can search for on a particular phone number or pool. It is also a specific word or phrase that an end user can send to your number to elicit a response, such as an informational message or a special offer. When your number receives a message that begins with a keyword, Amazon Pinpoint responds with a customizable message.</p> <p>If you specify a keyword that isn't valid, an Error is returned.</p>" + }, + "PutOptedOutNumber":{ + "name":"PutOptedOutNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutOptedOutNumberRequest"}, + "output":{"shape":"PutOptedOutNumberResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates an opted out destination phone number in the opt-out list.</p> <p>If the destination phone number isn't valid or if the specified opt-out list doesn't exist, an Error is returned.</p>" + }, + "ReleasePhoneNumber":{ + "name":"ReleasePhoneNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ReleasePhoneNumberRequest"}, + "output":{"shape":"ReleasePhoneNumberResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Releases an existing origination phone number in your account. Once released, a phone number is no longer available for sending messages.</p> <p>If the origination phone number has deletion protection enabled or is associated with a pool, an Error is returned.</p>" + }, + "RequestPhoneNumber":{ + "name":"RequestPhoneNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RequestPhoneNumberRequest"}, + "output":{"shape":"RequestPhoneNumberResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Request an origination phone number for use in your account. For more information on phone number request see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/settings-sms-request-number.html\"> Requesting a number </a> in the <i>Amazon Pinpoint User Guide</i>.</p>" + }, + "SendTextMessage":{ + "name":"SendTextMessage", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SendTextMessageRequest"}, + "output":{"shape":"SendTextMessageResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Creates a new text message and sends it to a recipient's phone number.</p> <p>SMS throughput limits are measured in Message Parts per Second (MPS). Your MPS limit depends on the destination country of your messages, as well as the type of phone number (origination number) that you use to send the message. For more information, see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-limitations-mps.html\">Message Parts per Second (MPS) limits</a> in the <i>Amazon Pinpoint User Guide</i>.</p>" + }, + "SendVoiceMessage":{ + "name":"SendVoiceMessage", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SendVoiceMessageRequest"}, + "output":{"shape":"SendVoiceMessageResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Allows you to send a request that sends a text message through Amazon Pinpoint. This operation uses <a href=\"http://aws.amazon.com/polly/\">Amazon Polly</a> to convert a text script into a voice message.</p>" + }, + "SetDefaultMessageType":{ + "name":"SetDefaultMessageType", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SetDefaultMessageTypeRequest"}, + "output":{"shape":"SetDefaultMessageTypeResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Sets the default message type on a configuration set.</p> <p>Choose the category of SMS messages that you plan to send from this account. If you send account-related messages or time-sensitive messages such as one-time passcodes, choose <b>Transactional</b>. If you plan to send messages that contain marketing material or other promotional content, choose <b>Promotional</b>. This setting applies to your entire Amazon Web Services account.</p>" + }, + "SetDefaultSenderId":{ + "name":"SetDefaultSenderId", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SetDefaultSenderIdRequest"}, + "output":{"shape":"SetDefaultSenderIdResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Sets default sender ID on a configuration set.</p> <p>When sending a text message to a destination country that supports sender IDs, the default sender ID on the configuration set specified will be used if no dedicated origination phone numbers or registered sender IDs are available in your account.</p>" + }, + "SetTextMessageSpendLimitOverride":{ + "name":"SetTextMessageSpendLimitOverride", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SetTextMessageSpendLimitOverrideRequest"}, + "output":{"shape":"SetTextMessageSpendLimitOverrideResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Sets an account level monthly spend limit override for sending text messages. The requested spend limit must be less than or equal to the <code>MaxLimit</code>, which is set by Amazon Web Services. </p>" + }, + "SetVoiceMessageSpendLimitOverride":{ + "name":"SetVoiceMessageSpendLimitOverride", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"SetVoiceMessageSpendLimitOverrideRequest"}, + "output":{"shape":"SetVoiceMessageSpendLimitOverrideResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Sets an account level monthly spend limit override for sending voice messages. The requested spend limit must be less than or equal to the <code>MaxLimit</code>, which is set by Amazon Web Services. </p>" + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResult"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Adds or overwrites only the specified tags for the specified Amazon Pinpoint SMS Voice, version 2 resource. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and an optional value. Tag keys must be unique per resource. For more information about tags, see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/developerguide/tagging-resources.html\"> Tagging Amazon Pinpoint resources</a> in the <i>Amazon Pinpoint Developer Guide</i>.</p>" + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Removes the association of the specified tags from an Amazon Pinpoint SMS Voice V2 resource. For more information on tags see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/developerguide/tagging-resources.html\"> Tagging Amazon Pinpoint resources</a> in the <i>Amazon Pinpoint Developer Guide</i>. </p>" + }, + "UpdateEventDestination":{ + "name":"UpdateEventDestination", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEventDestinationRequest"}, + "output":{"shape":"UpdateEventDestinationResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Updates an existing event destination in a configuration set. You can update the IAM role ARN for CloudWatch Logs and Kinesis Data Firehose. You can also enable or disable the event destination.</p> <p>You may want to update an event destination to change its matching event types or updating the destination resource ARN. You can't change an event destination's type between CloudWatch Logs, Kinesis Data Firehose, and Amazon SNS.</p>" + }, + "UpdatePhoneNumber":{ + "name":"UpdatePhoneNumber", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdatePhoneNumberRequest"}, + "output":{"shape":"UpdatePhoneNumberResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Updates the configuration of an existing origination phone number. You can update the opt-out list, enable or disable two-way messaging, change the TwoWayChannelArn, enable or disable self-managed opt-outs, and enable or disable deletion protection.</p> <p>If the origination phone number is associated with a pool, an Error is returned.</p>" + }, + "UpdatePool":{ + "name":"UpdatePool", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdatePoolRequest"}, + "output":{"shape":"UpdatePoolResult"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ], + "documentation":"<p>Updates the configuration of an existing pool. You can update the opt-out list, enable or disable two-way messaging, change the <code>TwoWayChannelArn</code>, enable or disable self-managed opt-outs, enable or disable deletion protection, and enable or disable shared routes.</p>" + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"}, + "Reason":{ + "shape":"AccessDeniedExceptionReason", + "documentation":"<p>The reason for the exception.</p>" + } + }, + "documentation":"<p>The request was denied because you don't have sufficient permissions to access the resource.</p>", + "exception":true + }, + "AccessDeniedExceptionReason":{ + "type":"string", + "enum":[ + "INSUFFICIENT_ACCOUNT_REPUTATION", + "ACCOUNT_DISABLED" + ] + }, + "AccountAttribute":{ + "type":"structure", + "required":[ + "Name", + "Value" + ], + "members":{ + "Name":{ + "shape":"AccountAttributeName", + "documentation":"<p>The name of the account attribute.</p>" + }, + "Value":{ + "shape":"String", + "documentation":"<p>The value associated with the account attribute name.</p>" + } + }, + "documentation":"<p>Displays the attributes associated with a single Amazon Web Services account.</p>" + }, + "AccountAttributeList":{ + "type":"list", + "member":{"shape":"AccountAttribute"} + }, + "AccountAttributeName":{ + "type":"string", + "enum":["ACCOUNT_TIER"] + }, + "AccountLimit":{ + "type":"structure", + "required":[ + "Name", + "Used", + "Max" + ], + "members":{ + "Name":{ + "shape":"AccountLimitName", + "documentation":"<p>The name of the attribute to apply the account limit to.</p>" + }, + "Used":{ + "shape":"PrimitiveLong", + "documentation":"<p>The current amount that has been spent, in US dollars.</p>" + }, + "Max":{ + "shape":"PrimitiveLong", + "documentation":"<p>The Amazon Web Services set limit for that resource type, in US dollars.</p>" + } + }, + "documentation":"<p>The current resource quotas associated with an Amazon Web Services account.</p>" + }, + "AccountLimitList":{ + "type":"list", + "member":{"shape":"AccountLimit"} + }, + "AccountLimitName":{ + "type":"string", + "enum":[ + "PHONE_NUMBERS", + "POOLS", + "CONFIGURATION_SETS", + "OPT_OUT_LISTS" + ] + }, + "AmazonResourceName":{ + "type":"string", + "max":256, + "min":20, + "pattern":"arn:[A-Za-z0-9_:/-]+" + }, + "AssociateOriginationIdentityRequest":{ + "type":"structure", + "required":[ + "PoolId", + "OriginationIdentity", + "IsoCountryCode" + ], + "members":{ + "PoolId":{ + "shape":"PoolIdOrArn", + "documentation":"<p>The pool to update with the new Identity. This value can be either the PoolId or PoolArn, and you can find these values using <a>DescribePools</a>.</p>" + }, + "OriginationIdentity":{ + "shape":"PhoneOrSenderIdOrArn", + "documentation":"<p>The origination identity to use, such as PhoneNumberId, PhoneNumberArn, SenderId, or SenderIdArn. You can use <a>DescribePhoneNumbers</a> to find the values for PhoneNumberId and PhoneNumberArn, while <a>DescribeSenderIds</a> can be used to get the values for SenderId and SenderIdArn.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region of the origination identity.</p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "AssociateOriginationIdentityResult":{ + "type":"structure", + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the pool that is now associated with the origination identity.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The PoolId of the pool that is now associated with the origination identity.</p>" + }, + "OriginationIdentityArn":{ + "shape":"String", + "documentation":"<p>The PhoneNumberArn or SenderIdArn of the origination identity.</p>" + }, + "OriginationIdentity":{ + "shape":"String", + "documentation":"<p>The PhoneNumberId or SenderId of the origination identity.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + } + } + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "ClientToken":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[!-~]+" + }, + "CloudWatchLogsDestination":{ + "type":"structure", + "required":[ + "IamRoleArn", + "LogGroupArn" + ], + "members":{ + "IamRoleArn":{ + "shape":"IamRoleArn", + "documentation":"<p>The Amazon Resource Name (ARN) of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon CloudWatch destination.</p>" + }, + "LogGroupArn":{ + "shape":"LogGroupArn", + "documentation":"<p>The name of the Amazon CloudWatch log group that you want to record events in. </p>" + } + }, + "documentation":"<p>Contains the destination configuration to use when publishing message sending events. </p>" + }, + "ConfigurationSetFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"ConfigurationSetFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array values to filter for.</p>" + } + }, + "documentation":"<p>The information for configuration sets that meet a specified criteria.</p>" + }, + "ConfigurationSetFilterList":{ + "type":"list", + "member":{"shape":"ConfigurationSetFilter"}, + "max":20, + "min":0 + }, + "ConfigurationSetFilterName":{ + "type":"string", + "enum":[ + "event-destination-name", + "matching-event-types", + "default-message-type", + "default-sender-id" + ] + }, + "ConfigurationSetInformation":{ + "type":"structure", + "required":[ + "ConfigurationSetArn", + "ConfigurationSetName", + "EventDestinations", + "CreatedTimestamp" + ], + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Resource Name (ARN) of the ConfigurationSet.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the ConfigurationSet.</p>" + }, + "EventDestinations":{ + "shape":"EventDestinationList", + "documentation":"<p>An array of EventDestination objects that describe any events to log and where to log them.</p>" + }, + "DefaultMessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "DefaultSenderId":{ + "shape":"SenderId", + "documentation":"<p>The default sender ID used by the ConfigurationSet.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the ConfigurationSet was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + }, + "documentation":"<p>Information related to a given configuration set in your Amazon Web Services account.</p>" + }, + "ConfigurationSetInformationList":{ + "type":"list", + "member":{"shape":"ConfigurationSetInformation"} + }, + "ConfigurationSetName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[A-Za-z0-9_-]+" + }, + "ConfigurationSetNameList":{ + "type":"list", + "member":{"shape":"ConfigurationSetNameOrArn"}, + "max":5, + "min":0 + }, + "ConfigurationSetNameOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "ConflictException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"}, + "Reason":{ + "shape":"ConflictExceptionReason", + "documentation":"<p>The reason for the exception.</p>" + }, + "ResourceType":{ + "shape":"ResourceType", + "documentation":"<p>The type of resource that caused the exception.</p>" + }, + "ResourceId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the request.</p>" + } + }, + "documentation":"<p>Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.</p>", + "exception":true + }, + "ConflictExceptionReason":{ + "type":"string", + "enum":[ + "DELETION_PROTECTION_ENABLED", + "DESTINATION_PHONE_NUMBER_NOT_VERIFIED", + "DESTINATION_PHONE_NUMBER_OPTED_OUT", + "EVENT_DESTINATION_MISMATCH", + "KEYWORD_MISMATCH", + "LAST_PHONE_NUMBER", + "SELF_MANAGED_OPT_OUTS_MISMATCH", + "MESSAGE_TYPE_MISMATCH", + "NO_ORIGINATION_IDENTITIES_FOUND", + "OPT_OUT_LIST_MISMATCH", + "PHONE_NUMBER_ASSOCIATED_TO_POOL", + "PHONE_NUMBER_NOT_ASSOCIATED_TO_POOL", + "PHONE_NUMBER_NOT_IN_REGISTRATION_REGION", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DELETION_NOT_ALLOWED", + "RESOURCE_MODIFICATION_NOT_ALLOWED", + "RESOURCE_NOT_ACTIVE", + "RESOURCE_NOT_EMPTY", + "TWO_WAY_CONFIG_MISMATCH" + ] + }, + "ContextKey":{ + "type":"string", + "max":100, + "min":1, + "pattern":"\\S+" + }, + "ContextMap":{ + "type":"map", + "key":{"shape":"ContextKey"}, + "value":{"shape":"ContextValue"}, + "max":5, + "min":0 + }, + "ContextValue":{ + "type":"string", + "max":800, + "min":1, + "pattern":"\\S+" + }, + "CreateConfigurationSetRequest":{ + "type":"structure", + "required":["ConfigurationSetName"], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name to use for the new configuration set.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of key and value pair tags that's associated with the new configuration set. </p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "CreateConfigurationSetResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the newly created configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the new configuration set.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of key and value pair tags that's associated with the configuration set.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the configuration set was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "CreateEventDestinationRequest":{ + "type":"structure", + "required":[ + "ConfigurationSetName", + "EventDestinationName", + "MatchingEventTypes" + ], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>Either the name of the configuration set or the configuration set ARN to apply event logging to. The ConfigurateSetName and ConfigurationSetArn can be found using the <a>DescribeConfigurationSets</a> action.</p>" + }, + "EventDestinationName":{ + "shape":"EventDestinationName", + "documentation":"<p>The name that identifies the event destination.</p>" + }, + "MatchingEventTypes":{ + "shape":"EventTypeList", + "documentation":"<p>An array of event types that determine which events to log. If \"ALL\" is used, then Amazon Pinpoint logs every event type.</p>" + }, + "CloudWatchLogsDestination":{ + "shape":"CloudWatchLogsDestination", + "documentation":"<p>An object that contains information about an event destination for logging to Amazon CloudWatch logs.</p>" + }, + "KinesisFirehoseDestination":{ + "shape":"KinesisFirehoseDestination", + "documentation":"<p>An object that contains information about an event destination for logging to Amazon Kinesis Data Firehose.</p>" + }, + "SnsDestination":{ + "shape":"SnsDestination", + "documentation":"<p>An object that contains information about an event destination for logging to Amazon SNS.</p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "CreateEventDestinationResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The ARN of the configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set.</p>" + }, + "EventDestination":{ + "shape":"EventDestination", + "documentation":"<p>The details of the destination where events are logged.</p>" + } + } + }, + "CreateOptOutListRequest":{ + "type":"structure", + "required":["OptOutListName"], + "members":{ + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the new OptOutList.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of tags (key and value pairs) to associate with the new OptOutList.</p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "CreateOptOutListResult":{ + "type":"structure", + "members":{ + "OptOutListArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) for the OptOutList.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the new OptOutList.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of tags (key and value pairs) associated with the new OptOutList.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the pool was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "CreatePoolRequest":{ + "type":"structure", + "required":[ + "OriginationIdentity", + "IsoCountryCode", + "MessageType" + ], + "members":{ + "OriginationIdentity":{ + "shape":"PhoneOrSenderIdOrArn", + "documentation":"<p>The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use <a>DescribePhoneNumbers</a> to find the values for PhoneNumberId and PhoneNumberArn while <a>DescribeSenderIds</a> can be used to get the values for SenderId and SenderIdArn.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region of the new pool.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When set to true the pool can't be deleted. You can change this value using the <a>UpdatePool</a> action.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of tags (key and value pairs) associated with the pool.</p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "CreatePoolResult":{ + "type":"structure", + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) for the pool.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The unique identifier for the pool.</p>" + }, + "Status":{ + "shape":"PoolStatus", + "documentation":"<p>The current status of the pool.</p> <ul> <li> <p>CREATING: The pool is currently being created and isn't yet available for use.</p> </li> <li> <p>ACTIVE: The pool is active and available for use.</p> </li> <li> <p>DELETING: The pool is being deleted.</p> </li> </ul>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message for the pool to use.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList associated with the pool.</p>" + }, + "SharedRoutesEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>Indicates whether shared routes are enabled for the pool.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true deletion protection is enabled. By default this is set to false. </p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of tags (key and value pairs) associated with the pool.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the pool was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "DeleteConfigurationSetRequest":{ + "type":"structure", + "required":["ConfigurationSetName"], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The name of the configuration set or the configuration set ARN that you want to delete. The ConfigurationSetName and ConfigurationSetArn can be found using the <a>DescribeConfigurationSets</a> action.</p>" + } + } + }, + "DeleteConfigurationSetResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the deleted configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the deleted configuration set.</p>" + }, + "EventDestinations":{ + "shape":"EventDestinationList", + "documentation":"<p>An array of any EventDestination objects that were associated with the deleted configuration set.</p>" + }, + "DefaultMessageType":{ + "shape":"MessageType", + "documentation":"<p>The default message type of the configuration set that was deleted.</p>" + }, + "DefaultSenderId":{ + "shape":"SenderId", + "documentation":"<p>The default Sender ID of the configuration set that was deleted.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time that the deleted configuration set was created in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "DeleteDefaultMessageTypeRequest":{ + "type":"structure", + "required":["ConfigurationSetName"], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The name of the configuration set or the configuration set Amazon Resource Name (ARN) to delete the default message type from. The ConfigurationSetName and ConfigurationSetArn can be found using the <a>DescribeConfigurationSets</a> action.</p>" + } + } + }, + "DeleteDefaultMessageTypeResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The current message type for the configuration set.</p>" + } + } + }, + "DeleteDefaultSenderIdRequest":{ + "type":"structure", + "required":["ConfigurationSetName"], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The name of the configuration set or the configuration set Amazon Resource Name (ARN) to delete the default sender ID from. The ConfigurationSetName and ConfigurationSetArn can be found using the <a>DescribeConfigurationSets</a> action.</p>" + } + } + }, + "DeleteDefaultSenderIdResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set.</p>" + }, + "SenderId":{ + "shape":"SenderId", + "documentation":"<p>The current sender ID for the configuration set.</p>" + } + } + }, + "DeleteEventDestinationRequest":{ + "type":"structure", + "required":[ + "ConfigurationSetName", + "EventDestinationName" + ], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The name of the configuration set or the configuration set's Amazon Resource Name (ARN) to remove the event destination from. The ConfigurateSetName and ConfigurationSetArn can be found using the <a>DescribeConfigurationSets</a> action.</p>" + }, + "EventDestinationName":{ + "shape":"EventDestinationName", + "documentation":"<p>The name of the event destination to delete.</p>" + } + } + }, + "DeleteEventDestinationResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set the event destination was deleted from.</p>" + }, + "EventDestination":{ + "shape":"EventDestination", + "documentation":"<p>The event destination object that was deleted.</p>" + } + } + }, + "DeleteKeywordRequest":{ + "type":"structure", + "required":[ + "OriginationIdentity", + "Keyword" + ], + "members":{ + "OriginationIdentity":{ + "shape":"PhoneOrPoolIdOrArn", + "documentation":"<p>The origination identity to use such as a PhoneNumberId, PhoneNumberArn, PoolId or PoolArn. You can use <a>DescribePhoneNumbers</a> to find the values for PhoneNumberId and PhoneNumberArn and <a>DescribePools</a> to find the values of PoolId and PoolArn.</p>" + }, + "Keyword":{ + "shape":"Keyword", + "documentation":"<p>The keyword to delete.</p>" + } + } + }, + "DeleteKeywordResult":{ + "type":"structure", + "members":{ + "OriginationIdentityArn":{ + "shape":"String", + "documentation":"<p>The PhoneNumberArn or PoolArn that the keyword was associated with.</p>" + }, + "OriginationIdentity":{ + "shape":"String", + "documentation":"<p>The PhoneNumberId or PoolId that the keyword was associated with.</p>" + }, + "Keyword":{ + "shape":"Keyword", + "documentation":"<p>The keyword that was deleted.</p>" + }, + "KeywordMessage":{ + "shape":"KeywordMessage", + "documentation":"<p>The message that was associated with the deleted keyword.</p>" + }, + "KeywordAction":{ + "shape":"KeywordAction", + "documentation":"<p>The action that was associated with the deleted keyword.</p>" + } + } + }, + "DeleteOptOutListRequest":{ + "type":"structure", + "required":["OptOutListName"], + "members":{ + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The OptOutListName or OptOutListArn of the OptOutList to delete. You can use <a>DescribeOptOutLists</a> to find the values for OptOutListName and OptOutListArn.</p>" + } + } + }, + "DeleteOptOutListResult":{ + "type":"structure", + "members":{ + "OptOutListArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the OptOutList that was removed.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList that was removed.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the OptOutList was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "DeleteOptedOutNumberRequest":{ + "type":"structure", + "required":[ + "OptOutListName", + "OptedOutNumber" + ], + "members":{ + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The OptOutListName or OptOutListArn to remove the phone number from.</p>" + }, + "OptedOutNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number, in E.164 format, to remove from the OptOutList.</p>" + } + } + }, + "DeleteOptedOutNumberResult":{ + "type":"structure", + "members":{ + "OptOutListArn":{ + "shape":"String", + "documentation":"<p>The OptOutListArn that the phone number was removed from.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The OptOutListName that the phone number was removed from.</p>" + }, + "OptedOutNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number that was removed from the OptOutList.</p>" + }, + "OptedOutTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time that the number was removed at, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + }, + "EndUserOptedOut":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>This is true if it was the end user who requested their phone number be removed. </p>" + } + } + }, + "DeletePoolRequest":{ + "type":"structure", + "required":["PoolId"], + "members":{ + "PoolId":{ + "shape":"PoolIdOrArn", + "documentation":"<p>The PoolId or PoolArn of the pool to delete. You can use <a>DescribePools</a> to find the values for PoolId and PoolArn .</p>" + } + } + }, + "DeletePoolResult":{ + "type":"structure", + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the pool that was deleted.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The PoolId of the pool that was deleted.</p>" + }, + "Status":{ + "shape":"PoolStatus", + "documentation":"<p>The current status of the pool.</p> <ul> <li> <p>CREATING: The pool is currently being created and isn't yet available for use.</p> </li> <li> <p>ACTIVE: The pool is active and available for use.</p> </li> <li> <p>DELETING: The pool is being deleted.</p> </li> </ul>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The message type that was associated with the deleted pool.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the TwoWayChannel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList that was associated with the deleted pool.</p>" + }, + "SharedRoutesEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>Indicates whether shared routes are enabled for the pool.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the pool was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "DeleteTextMessageSpendLimitOverrideRequest":{ + "type":"structure", + "members":{ + } + }, + "DeleteTextMessageSpendLimitOverrideResult":{ + "type":"structure", + "members":{ + "MonthlyLimit":{ + "shape":"MonthlyLimit", + "documentation":"<p>The current monthly limit, in US dollars.</p>" + } + } + }, + "DeleteVoiceMessageSpendLimitOverrideRequest":{ + "type":"structure", + "members":{ + } + }, + "DeleteVoiceMessageSpendLimitOverrideResult":{ + "type":"structure", + "members":{ + "MonthlyLimit":{ + "shape":"MonthlyLimit", + "documentation":"<p>The current monthly limit, in US dollars.</p>" + } + } + }, + "DeliveryStreamArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:\\S+" + }, + "DescribeAccountAttributesRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeAccountAttributesResult":{ + "type":"structure", + "members":{ + "AccountAttributes":{ + "shape":"AccountAttributeList", + "documentation":"<p>An array of AccountAttributes objects.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeAccountLimitsRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeAccountLimitsResult":{ + "type":"structure", + "members":{ + "AccountLimits":{ + "shape":"AccountLimitList", + "documentation":"<p>An array of AccountLimit objects that show the current spend limits.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeConfigurationSetsRequest":{ + "type":"structure", + "members":{ + "ConfigurationSetNames":{ + "shape":"ConfigurationSetNameList", + "documentation":"<p>An array of strings. Each element can be either a ConfigurationSetName or ConfigurationSetArn.</p>" + }, + "Filters":{ + "shape":"ConfigurationSetFilterList", + "documentation":"<p>An array of filters to apply to the results that are returned.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeConfigurationSetsResult":{ + "type":"structure", + "members":{ + "ConfigurationSets":{ + "shape":"ConfigurationSetInformationList", + "documentation":"<p>An array of ConfigurationSets objects.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeKeywordsRequest":{ + "type":"structure", + "required":["OriginationIdentity"], + "members":{ + "OriginationIdentity":{ + "shape":"PhoneOrPoolIdOrArn", + "documentation":"<p>The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use <a>DescribePhoneNumbers</a> to find the values for PhoneNumberId and PhoneNumberArn while <a>DescribeSenderIds</a> can be used to get the values for SenderId and SenderIdArn.</p>" + }, + "Keywords":{ + "shape":"KeywordList", + "documentation":"<p>An array of keywords to search for.</p>" + }, + "Filters":{ + "shape":"KeywordFilterList", + "documentation":"<p>An array of keyword filters to filter the results.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeKeywordsResult":{ + "type":"structure", + "members":{ + "OriginationIdentityArn":{ + "shape":"String", + "documentation":"<p>The PhoneNumberArn or PoolArn that is associated with the OriginationIdentity. </p>" + }, + "OriginationIdentity":{ + "shape":"String", + "documentation":"<p>The PhoneNumberId or PoolId that is associated with the OriginationIdentity.</p>" + }, + "Keywords":{ + "shape":"KeywordInformationList", + "documentation":"<p>An array of KeywordInformation objects that contain the results.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeOptOutListsRequest":{ + "type":"structure", + "members":{ + "OptOutListNames":{ + "shape":"OptOutListNameList", + "documentation":"<p>The OptOutLists to show the details of. This is an array of strings that can be either the OptOutListName or OptOutListArn.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeOptOutListsResult":{ + "type":"structure", + "members":{ + "OptOutLists":{ + "shape":"OptOutListInformationList", + "documentation":"<p>An array of OptOutListInformation objects that contain the details for the requested OptOutLists.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeOptedOutNumbersRequest":{ + "type":"structure", + "required":["OptOutListName"], + "members":{ + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The OptOutListName or OptOutListArn of the OptOutList. You can use <a>DescribeOptOutLists</a> to find the values for OptOutListName and OptOutListArn.</p>" + }, + "OptedOutNumbers":{ + "shape":"OptedOutNumberList", + "documentation":"<p>An array of phone numbers to search for in the OptOutList.</p>" + }, + "Filters":{ + "shape":"OptedOutFilterList", + "documentation":"<p>An array of OptedOutFilter objects to filter the results on.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeOptedOutNumbersResult":{ + "type":"structure", + "members":{ + "OptOutListArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the OptOutList.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList.</p>" + }, + "OptedOutNumbers":{ + "shape":"OptedOutNumberInformationList", + "documentation":"<p>An array of OptedOutNumbersInformation objects that provide information about the requested OptedOutNumbers.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribePhoneNumbersRequest":{ + "type":"structure", + "members":{ + "PhoneNumberIds":{ + "shape":"PhoneNumberIdList", + "documentation":"<p>The unique identifier of phone numbers to find information about. This is an array of strings that can be either the PhoneNumberId or PhoneNumberArn.</p>" + }, + "Filters":{ + "shape":"PhoneNumberFilterList", + "documentation":"<p>An array of PhoneNumberFilter objects to filter the results.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribePhoneNumbersResult":{ + "type":"structure", + "members":{ + "PhoneNumbers":{ + "shape":"PhoneNumberInformationList", + "documentation":"<p>An array of PhoneNumberInformation objects that contain the details for the requested phone numbers.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribePoolsRequest":{ + "type":"structure", + "members":{ + "PoolIds":{ + "shape":"PoolIdList", + "documentation":"<p>The unique identifier of pools to find. This is an array of strings that can be either the PoolId or PoolArn.</p>" + }, + "Filters":{ + "shape":"PoolFilterList", + "documentation":"<p>An array of PoolFilter objects to filter the results.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribePoolsResult":{ + "type":"structure", + "members":{ + "Pools":{ + "shape":"PoolInformationList", + "documentation":"<p>An array of PoolInformation objects that contain the details for the requested pools. </p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeSenderIdsRequest":{ + "type":"structure", + "members":{ + "SenderIds":{ + "shape":"SenderIdList", + "documentation":"<p>An array of SenderIdAndCountry objects to search for.</p>" + }, + "Filters":{ + "shape":"SenderIdFilterList", + "documentation":"<p>An array of SenderIdFilter objects to filter the results.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeSenderIdsResult":{ + "type":"structure", + "members":{ + "SenderIds":{ + "shape":"SenderIdInformationList", + "documentation":"<p>An array of SernderIdInformation objects that contain the details for the requested SenderIds.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DescribeSpendLimitsRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "DescribeSpendLimitsResult":{ + "type":"structure", + "members":{ + "SpendLimits":{ + "shape":"SpendLimitList", + "documentation":"<p>An array of SpendLimit objects that contain the details for the requested spend limits.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "DestinationCountryParameterKey":{ + "type":"string", + "enum":[ + "IN_TEMPLATE_ID", + "IN_ENTITY_ID" + ] + }, + "DestinationCountryParameterValue":{ + "type":"string", + "max":64, + "min":1, + "pattern":"\\S+" + }, + "DestinationCountryParameters":{ + "type":"map", + "key":{"shape":"DestinationCountryParameterKey"}, + "value":{"shape":"DestinationCountryParameterValue"}, + "max":10, + "min":0 + }, + "DisassociateOriginationIdentityRequest":{ + "type":"structure", + "required":[ + "PoolId", + "OriginationIdentity", + "IsoCountryCode" + ], + "members":{ + "PoolId":{ + "shape":"PoolIdOrArn", + "documentation":"<p>The unique identifier for the pool to disassociate with the origination identity. This value can be either the PoolId or PoolArn.</p>" + }, + "OriginationIdentity":{ + "shape":"PhoneOrSenderIdOrArn", + "documentation":"<p>The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use <a>DescribePhoneNumbers</a> find the values for PhoneNumberId and PhoneNumberArn, or use <a>DescribeSenderIds</a> to get the values for SenderId and SenderIdArn.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "DisassociateOriginationIdentityResult":{ + "type":"structure", + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the pool.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The PoolId of the pool no longer associated with the origination identity.</p>" + }, + "OriginationIdentityArn":{ + "shape":"String", + "documentation":"<p>The PhoneNumberArn or SenderIdArn of the origination identity.</p>" + }, + "OriginationIdentity":{ + "shape":"String", + "documentation":"<p>The PhoneNumberId or SenderId of the origination identity.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.</p>" + } + } + }, + "EventDestination":{ + "type":"structure", + "required":[ + "EventDestinationName", + "Enabled", + "MatchingEventTypes" + ], + "members":{ + "EventDestinationName":{ + "shape":"EventDestinationName", + "documentation":"<p>The name of the EventDestination.</p>" + }, + "Enabled":{ + "shape":"Boolean", + "documentation":"<p>When set to true events will be logged.</p>" + }, + "MatchingEventTypes":{ + "shape":"EventTypeList", + "documentation":"<p>An array of event types that determine which events to log.</p>" + }, + "CloudWatchLogsDestination":{ + "shape":"CloudWatchLogsDestination", + "documentation":"<p>An object that contains information about an event destination that sends logging events to Amazon CloudWatch logs.</p>" + }, + "KinesisFirehoseDestination":{ + "shape":"KinesisFirehoseDestination", + "documentation":"<p>An object that contains information about an event destination for logging to Amazon Kinesis Data Firehose.</p>" + }, + "SnsDestination":{ + "shape":"SnsDestination", + "documentation":"<p>An object that contains information about an event destination that sends logging events to Amazon SNS.</p>" + } + }, + "documentation":"<p>Contains information about an event destination.</p> <p>Event destinations are associated with configuration sets, which enable you to publish message sending events to Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon SNS.</p>" + }, + "EventDestinationList":{ + "type":"list", + "member":{"shape":"EventDestination"} + }, + "EventDestinationName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[A-Za-z0-9_-]+" + }, + "EventType":{ + "type":"string", + "enum":[ + "ALL", + "TEXT_ALL", + "TEXT_SENT", + "TEXT_PENDING", + "TEXT_QUEUED", + "TEXT_SUCCESSFUL", + "TEXT_DELIVERED", + "TEXT_INVALID", + "TEXT_INVALID_MESSAGE", + "TEXT_UNREACHABLE", + "TEXT_CARRIER_UNREACHABLE", + "TEXT_BLOCKED", + "TEXT_CARRIER_BLOCKED", + "TEXT_SPAM", + "TEXT_UNKNOWN", + "TEXT_TTL_EXPIRED", + "VOICE_ALL", + "VOICE_INITIATED", + "VOICE_RINGING", + "VOICE_ANSWERED", + "VOICE_COMPLETED", + "VOICE_BUSY", + "VOICE_NO_ANSWER", + "VOICE_FAILED", + "VOICE_TTL_EXPIRED" + ] + }, + "EventTypeList":{ + "type":"list", + "member":{"shape":"EventType"}, + "max":25, + "min":1 + }, + "FilterValue":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[A-Za-z0-9_-]+" + }, + "FilterValueList":{ + "type":"list", + "member":{"shape":"FilterValue"}, + "max":20, + "min":1 + }, + "IamRoleArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:\\S+" + }, + "InternalServerException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"}, + "RequestId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the request.</p>" + } + }, + "documentation":"<p>The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.</p>", + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "IsoCountryCode":{ + "type":"string", + "max":2, + "min":2, + "pattern":"[A-Z]{2}" + }, + "Keyword":{ + "type":"string", + "max":30, + "min":1, + "pattern":"[ \\S]+" + }, + "KeywordAction":{ + "type":"string", + "enum":[ + "AUTOMATIC_RESPONSE", + "OPT_OUT", + "OPT_IN" + ] + }, + "KeywordFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"KeywordFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array values to filter for.</p>" + } + }, + "documentation":"<p>The information for keywords that meet a specified criteria.</p>" + }, + "KeywordFilterList":{ + "type":"list", + "member":{"shape":"KeywordFilter"}, + "max":20, + "min":0 + }, + "KeywordFilterName":{ + "type":"string", + "enum":["keyword-action"] + }, + "KeywordInformation":{ + "type":"structure", + "required":[ + "Keyword", + "KeywordMessage", + "KeywordAction" + ], + "members":{ + "Keyword":{ + "shape":"Keyword", + "documentation":"<p>The keyword as a string.</p>" + }, + "KeywordMessage":{ + "shape":"KeywordMessage", + "documentation":"<p>A custom message that can be used with the keyword.</p>" + }, + "KeywordAction":{ + "shape":"KeywordAction", + "documentation":"<p>The action to perform for the keyword.</p>" + } + }, + "documentation":"<p>The information for all keywords in a pool.</p>" + }, + "KeywordInformationList":{ + "type":"list", + "member":{"shape":"KeywordInformation"} + }, + "KeywordList":{ + "type":"list", + "member":{"shape":"Keyword"}, + "max":5, + "min":0 + }, + "KeywordMessage":{ + "type":"string", + "max":1600, + "min":1, + "pattern":"(?!\\s*$)[\\s\\S]+" + }, + "KinesisFirehoseDestination":{ + "type":"structure", + "required":[ + "IamRoleArn", + "DeliveryStreamArn" + ], + "members":{ + "IamRoleArn":{ + "shape":"IamRoleArn", + "documentation":"<p>The ARN of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon Firehose destination.</p>" + }, + "DeliveryStreamArn":{ + "shape":"DeliveryStreamArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the delivery stream.</p>" + } + }, + "documentation":"<p>Contains the delivery stream Amazon Resource Name (ARN), and the ARN of the Identity and Access Management (IAM) role associated with an Kinesis Data Firehose event destination.</p> <p>Event destinations, such as Kinesis Data Firehose, are associated with configuration sets, which enable you to publish message sending events.</p>" + }, + "ListPoolOriginationIdentitiesRequest":{ + "type":"structure", + "required":["PoolId"], + "members":{ + "PoolId":{ + "shape":"PoolIdOrArn", + "documentation":"<p>The unique identifier for the pool. This value can be either the PoolId or PoolArn.</p>" + }, + "Filters":{ + "shape":"PoolOriginationIdentitiesFilterList", + "documentation":"<p>An array of PoolOriginationIdentitiesFilter objects to filter the results..</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. You don't need to supply a value for this field in the initial request.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The maximum number of results to return per each request.</p>" + } + } + }, + "ListPoolOriginationIdentitiesResult":{ + "type":"structure", + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) for the pool.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The unique PoolId of the pool.</p>" + }, + "OriginationIdentities":{ + "shape":"OriginationIdentityMetadataList", + "documentation":"<p>An array of any OriginationIdentityMetadata objects.</p>" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"<p>The token to be used for the next set of paginated results. If this field is empty then there are no more results.</p>" + } + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceArn"], + "members":{ + "ResourceArn":{ + "shape":"AmazonResourceName", + "documentation":"<p>The Amazon Resource Name (ARN) of the resource to query for.</p>" + } + } + }, + "ListTagsForResourceResult":{ + "type":"structure", + "members":{ + "ResourceArn":{ + "shape":"AmazonResourceName", + "documentation":"<p>The ARN of the resource.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of key and value pair tags that are associated with the resource.</p>" + } + } + }, + "LogGroupArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:\\S+" + }, + "MaxPrice":{ + "type":"string", + "max":8, + "min":2, + "pattern":"[0-9]{0,2}\\.[0-9]{1,5}" + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "MessageType":{ + "type":"string", + "enum":[ + "TRANSACTIONAL", + "PROMOTIONAL" + ] + }, + "MessageTypeList":{ + "type":"list", + "member":{"shape":"MessageType"} + }, + "MonthlyLimit":{ + "type":"long", + "box":true, + "max":1000000000, + "min":0 + }, + "NextToken":{ + "type":"string", + "max":1024, + "min":1, + "pattern":".+" + }, + "NonEmptyTagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":200, + "min":1 + }, + "NumberCapability":{ + "type":"string", + "enum":[ + "SMS", + "VOICE" + ] + }, + "NumberCapabilityList":{ + "type":"list", + "member":{"shape":"NumberCapability"}, + "max":2, + "min":1 + }, + "NumberStatus":{ + "type":"string", + "enum":[ + "PENDING", + "ACTIVE", + "ASSOCIATING", + "DISASSOCIATING", + "DELETED" + ] + }, + "NumberType":{ + "type":"string", + "enum":[ + "SHORT_CODE", + "LONG_CODE", + "TOLL_FREE", + "TEN_DLC" + ] + }, + "OptOutListInformation":{ + "type":"structure", + "required":[ + "OptOutListArn", + "OptOutListName", + "CreatedTimestamp" + ], + "members":{ + "OptOutListArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the OptOutList.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the OutOutList was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + }, + "documentation":"<p>The information for all OptOutList in an Amazon Web Services account.</p>" + }, + "OptOutListInformationList":{ + "type":"list", + "member":{"shape":"OptOutListInformation"} + }, + "OptOutListName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[A-Za-z0-9_-]+" + }, + "OptOutListNameList":{ + "type":"list", + "member":{"shape":"OptOutListNameOrArn"}, + "max":5, + "min":0 + }, + "OptOutListNameOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "OptedOutFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"OptedOutFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array of values to filter for.</p>" + } + }, + "documentation":"<p>The information for opted out numbers that meet a specified criteria.</p>" + }, + "OptedOutFilterList":{ + "type":"list", + "member":{"shape":"OptedOutFilter"}, + "max":20, + "min":0 + }, + "OptedOutFilterName":{ + "type":"string", + "enum":["end-user-opted-out"] + }, + "OptedOutNumberInformation":{ + "type":"structure", + "required":[ + "OptedOutNumber", + "OptedOutTimestamp", + "EndUserOptedOut" + ], + "members":{ + "OptedOutNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number that is opted out.</p>" + }, + "OptedOutTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time that the op tout occurred, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + }, + "EndUserOptedOut":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>This is set to true if it was the end recipient that opted out.</p>" + } + }, + "documentation":"<p>The information for an opted out number in an Amazon Web Services account.</p>" + }, + "OptedOutNumberInformationList":{ + "type":"list", + "member":{"shape":"OptedOutNumberInformation"} + }, + "OptedOutNumberList":{ + "type":"list", + "member":{"shape":"PhoneNumber"}, + "max":5, + "min":0 + }, + "OriginationIdentityMetadata":{ + "type":"structure", + "required":[ + "OriginationIdentityArn", + "OriginationIdentity", + "IsoCountryCode", + "NumberCapabilities" + ], + "members":{ + "OriginationIdentityArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) associated with the origination identity.</p>" + }, + "OriginationIdentity":{ + "shape":"String", + "documentation":"<p>The unique identifier of the origination identity.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "NumberCapabilities":{ + "shape":"NumberCapabilityList", + "documentation":"<p>Describes if the origination identity can be used for text messages, voice calls or both.</p>" + } + }, + "documentation":"<p>The metadata for an origination identity associated with a pool.</p>" + }, + "OriginationIdentityMetadataList":{ + "type":"list", + "member":{"shape":"OriginationIdentityMetadata"} + }, + "PhoneNumber":{ + "type":"string", + "max":20, + "min":1, + "pattern":"\\+?[1-9][0-9]{1,18}" + }, + "PhoneNumberFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"PhoneNumberFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array values to filter for.</p>" + } + }, + "documentation":"<p>The information for a phone number that meets a specified criteria.</p>" + }, + "PhoneNumberFilterList":{ + "type":"list", + "member":{"shape":"PhoneNumberFilter"}, + "max":20, + "min":0 + }, + "PhoneNumberFilterName":{ + "type":"string", + "enum":[ + "status", + "iso-country-code", + "message-type", + "number-capability", + "number-type", + "two-way-enabled", + "self-managed-opt-outs-enabled", + "opt-out-list-name", + "deletion-protection-enabled" + ] + }, + "PhoneNumberIdList":{ + "type":"list", + "member":{"shape":"PhoneNumberIdOrArn"}, + "max":5, + "min":0 + }, + "PhoneNumberIdOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "PhoneNumberInformation":{ + "type":"structure", + "required":[ + "PhoneNumberArn", + "PhoneNumber", + "Status", + "IsoCountryCode", + "MessageType", + "NumberCapabilities", + "NumberType", + "MonthlyLeasingPrice", + "TwoWayEnabled", + "SelfManagedOptOutsEnabled", + "OptOutListName", + "DeletionProtectionEnabled", + "CreatedTimestamp" + ], + "members":{ + "PhoneNumberArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) associated with the phone number.</p>" + }, + "PhoneNumberId":{ + "shape":"String", + "documentation":"<p>The unique identifier for the phone number.</p>" + }, + "PhoneNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number in E.164 format.</p>" + }, + "Status":{ + "shape":"NumberStatus", + "documentation":"<p>The current status of the phone number.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "NumberCapabilities":{ + "shape":"NumberCapabilityList", + "documentation":"<p>Describes if the origination identity can be used for text messages, voice calls or both.</p>" + }, + "NumberType":{ + "shape":"NumberType", + "documentation":"<p>The type of phone number.</p>" + }, + "MonthlyLeasingPrice":{ + "shape":"String", + "documentation":"<p>The price, in US dollars, to lease the phone number.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients using the TwoWayChannelArn.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to false an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out request. For more information see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/settings-sms-managing.html#settings-account-sms-self-managed-opt-out\">Self-managed opt-outs</a> </p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList associated with the phone number.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true the phone number can't be deleted.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the pool associated with the phone number.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the phone number was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + }, + "documentation":"<p>The information for a phone number in an Amazon Web Services account.</p>" + }, + "PhoneNumberInformationList":{ + "type":"list", + "member":{"shape":"PhoneNumberInformation"} + }, + "PhoneOrPoolIdOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "PhoneOrSenderIdOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "PoolFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"PoolFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array values to filter for.</p>" + } + }, + "documentation":"<p>The information for a pool that meets a specified criteria.</p>" + }, + "PoolFilterList":{ + "type":"list", + "member":{"shape":"PoolFilter"}, + "max":20, + "min":0 + }, + "PoolFilterName":{ + "type":"string", + "enum":[ + "status", + "message-type", + "two-way-enabled", + "self-managed-opt-outs-enabled", + "opt-out-list-name", + "shared-routes-enabled", + "deletion-protection-enabled" + ] + }, + "PoolIdList":{ + "type":"list", + "member":{"shape":"PoolIdOrArn"}, + "max":5, + "min":0 + }, + "PoolIdOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "PoolInformation":{ + "type":"structure", + "required":[ + "PoolArn", + "PoolId", + "Status", + "MessageType", + "TwoWayEnabled", + "SelfManagedOptOutsEnabled", + "OptOutListName", + "SharedRoutesEnabled", + "DeletionProtectionEnabled", + "CreatedTimestamp" + ], + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) for the pool.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The unique identifier for the pool.</p>" + }, + "Status":{ + "shape":"PoolStatus", + "documentation":"<p>The current status of the pool.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true you can receive incoming text messages from your end recipients using the TwoWayChannelArn.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to false, an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests. For more information see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/settings-sms-managing.html#settings-account-sms-self-managed-opt-out\">Self-managed opt-outs</a> </p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList associated with the pool.</p>" + }, + "SharedRoutesEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>Allows you to enable shared routes on your pool.</p> <p>By default, this is set to <code>False</code>. If you set this value to <code>True</code>, your messages are sent using phone numbers or sender IDs (depending on the country) that are shared with other Amazon Pinpoint users. In some countries, such as the United States, senders aren't allowed to use shared routes and must use a dedicated phone number or short code.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true the pool can't be deleted.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the pool was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + }, + "documentation":"<p>The information for a pool in an Amazon Web Services account.</p>" + }, + "PoolInformationList":{ + "type":"list", + "member":{"shape":"PoolInformation"} + }, + "PoolOriginationIdentitiesFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"PoolOriginationIdentitiesFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array values to filter for.</p>" + } + }, + "documentation":"<p>Information about origination identities associated with a pool that meets a specified criteria.</p>" + }, + "PoolOriginationIdentitiesFilterList":{ + "type":"list", + "member":{"shape":"PoolOriginationIdentitiesFilter"}, + "max":20, + "min":0 + }, + "PoolOriginationIdentitiesFilterName":{ + "type":"string", + "enum":[ + "iso-country-code", + "number-capability" + ] + }, + "PoolStatus":{ + "type":"string", + "enum":[ + "CREATING", + "ACTIVE", + "DELETING" + ] + }, + "PrimitiveBoolean":{"type":"boolean"}, + "PrimitiveLong":{"type":"long"}, + "PutKeywordRequest":{ + "type":"structure", + "required":[ + "OriginationIdentity", + "Keyword", + "KeywordMessage" + ], + "members":{ + "OriginationIdentity":{ + "shape":"PhoneOrPoolIdOrArn", + "documentation":"<p>The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId or SenderIdArn. You can use <a>DescribePhoneNumbers</a> get the values for PhoneNumberId and PhoneNumberArn while <a>DescribeSenderIds</a> can be used to get the values for SenderId and SenderIdArn.</p>" + }, + "Keyword":{ + "shape":"Keyword", + "documentation":"<p>The new keyword to add.</p>" + }, + "KeywordMessage":{ + "shape":"KeywordMessage", + "documentation":"<p>The message associated with the keyword.</p> <ul> <li> <p>AUTOMATIC_RESPONSE: A message is sent to the recipient.</p> </li> <li> <p>OPT_OUT: Keeps the recipient from receiving future messages.</p> </li> <li> <p>OPT_IN: The recipient wants to receive future messages.</p> </li> </ul>" + }, + "KeywordAction":{ + "shape":"KeywordAction", + "documentation":"<p>The action to perform for the new keyword when it is received.</p>" + } + } + }, + "PutKeywordResult":{ + "type":"structure", + "members":{ + "OriginationIdentityArn":{ + "shape":"String", + "documentation":"<p>The PhoneNumberArn or PoolArn that the keyword was associated with.</p>" + }, + "OriginationIdentity":{ + "shape":"String", + "documentation":"<p>The PhoneNumberId or PoolId that the keyword was associated with.</p>" + }, + "Keyword":{ + "shape":"Keyword", + "documentation":"<p>The keyword that was added.</p>" + }, + "KeywordMessage":{ + "shape":"KeywordMessage", + "documentation":"<p>The message associated with the keyword.</p>" + }, + "KeywordAction":{ + "shape":"KeywordAction", + "documentation":"<p>The action to perform when the keyword is used.</p>" + } + } + }, + "PutOptedOutNumberRequest":{ + "type":"structure", + "required":[ + "OptOutListName", + "OptedOutNumber" + ], + "members":{ + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The OptOutListName or OptOutListArn to add the phone number to.</p>" + }, + "OptedOutNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number to add to the OptOutList in E.164 format.</p>" + } + } + }, + "PutOptedOutNumberResult":{ + "type":"structure", + "members":{ + "OptOutListArn":{ + "shape":"String", + "documentation":"<p>The OptOutListArn that the phone number was removed from.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The OptOutListName that the phone number was removed from.</p>" + }, + "OptedOutNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number that was added to the OptOutList.</p>" + }, + "OptedOutTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time that the phone number was added to the OptOutList, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + }, + "EndUserOptedOut":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>This is true if it was the end user who requested their phone number be removed. </p>" + } + } + }, + "RegistrationId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"\\S+" + }, + "ReleasePhoneNumberRequest":{ + "type":"structure", + "required":["PhoneNumberId"], + "members":{ + "PhoneNumberId":{ + "shape":"PhoneNumberIdOrArn", + "documentation":"<p>The PhoneNumberId or PhoneNumberArn of the phone number to release. You can use <a>DescribePhoneNumbers</a> to get the values for PhoneNumberId and PhoneNumberArn.</p>" + } + } + }, + "ReleasePhoneNumberResult":{ + "type":"structure", + "members":{ + "PhoneNumberArn":{ + "shape":"String", + "documentation":"<p>The PhoneNumberArn of the phone number that was released.</p>" + }, + "PhoneNumberId":{ + "shape":"String", + "documentation":"<p>The PhoneNumberId of the phone number that was released.</p>" + }, + "PhoneNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number that was released.</p>" + }, + "Status":{ + "shape":"NumberStatus", + "documentation":"<p>The current status of the request.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The message type that was associated with the phone number.</p>" + }, + "NumberCapabilities":{ + "shape":"NumberCapabilityList", + "documentation":"<p>Specifies if the number could be used for text messages, voice, or both.</p>" + }, + "NumberType":{ + "shape":"NumberType", + "documentation":"<p>The type of number that was released.</p>" + }, + "MonthlyLeasingPrice":{ + "shape":"String", + "documentation":"<p>The monthly price of the phone number, in US dollars.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the TwoWayChannel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList that was associated with the phone number.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the phone number was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "RequestPhoneNumberRequest":{ + "type":"structure", + "required":[ + "IsoCountryCode", + "MessageType", + "NumberCapabilities", + "NumberType" + ], + "members":{ + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "NumberCapabilities":{ + "shape":"NumberCapabilityList", + "documentation":"<p>Indicates if the phone number will be used for text messages, voice messages, or both. </p>" + }, + "NumberType":{ + "shape":"RequestableNumberType", + "documentation":"<p>The type of phone number to request.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The name of the OptOutList to associate with the phone number. You can use the OutOutListName or OptPutListArn.</p>" + }, + "PoolId":{ + "shape":"PoolIdOrArn", + "documentation":"<p>The pool to associated with the phone number. You can use the PoolId or PoolArn. </p>" + }, + "RegistrationId":{ + "shape":"RegistrationId", + "documentation":"<p>Use this field to attach your phone number for an external registration process.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When set to true the phone number can't be deleted.</p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of tags (key and value pairs) associate with the requested phone number. </p>" + }, + "ClientToken":{ + "shape":"ClientToken", + "documentation":"<p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.</p>", + "idempotencyToken":true + } + } + }, + "RequestPhoneNumberResult":{ + "type":"structure", + "members":{ + "PhoneNumberArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the requested phone number.</p>" + }, + "PhoneNumberId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the new phone number.</p>" + }, + "PhoneNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The new phone number that was requested.</p>" + }, + "Status":{ + "shape":"NumberStatus", + "documentation":"<p>The current status of the request.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "NumberCapabilities":{ + "shape":"NumberCapabilityList", + "documentation":"<p>Indicates if the phone number will be used for text messages, voice messages or both. </p>" + }, + "NumberType":{ + "shape":"RequestableNumberType", + "documentation":"<p>The type of number that was released.</p>" + }, + "MonthlyLeasingPrice":{ + "shape":"String", + "documentation":"<p>The monthly price, in US dollars, to lease the phone number.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The ARN used to identify the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList that is associated with the requested phone number.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true the phone number can't be deleted. </p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the pool associated with the phone number </p>" + }, + "Tags":{ + "shape":"TagList", + "documentation":"<p>An array of key and value pair tags that are associated with the phone number.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the phone number was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "RequestableNumberType":{ + "type":"string", + "enum":[ + "LONG_CODE", + "TOLL_FREE", + "TEN_DLC" + ] + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"}, + "ResourceType":{ + "shape":"ResourceType", + "documentation":"<p>The type of resource that caused the exception.</p>" + }, + "ResourceId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the resource.</p>" + } + }, + "documentation":"<p>A requested resource couldn't be found.</p>", + "exception":true + }, + "ResourceType":{ + "type":"string", + "enum":[ + "account", + "phone-number", + "sender-id", + "pool", + "configuration-set", + "opt-out-list", + "event-destination", + "keyword", + "opted-out-number", + "registration" + ] + }, + "SendTextMessageRequest":{ + "type":"structure", + "required":["DestinationPhoneNumber"], + "members":{ + "DestinationPhoneNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The destination phone number in E.164 format.</p>" + }, + "OriginationIdentity":{ + "shape":"TextMessageOriginationIdentity", + "documentation":"<p>The origination identity of the message. This can be either the PhoneNumber, PhoneNumberId, PhoneNumberArn, SenderId, SenderIdArn, PoolId, or PoolArn.</p>" + }, + "MessageBody":{ + "shape":"TextMessageBody", + "documentation":"<p>The body of the text message.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "Keyword":{ + "shape":"Keyword", + "documentation":"<p>When you register a short code in the US, you must specify a program name. If you don’t have a US short code, omit this attribute.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.</p>" + }, + "MaxPrice":{ + "shape":"MaxPrice", + "documentation":"<p>The maximum amount that you want to spend, in US dollars, per each text message part. A text message can contain multiple parts.</p>" + }, + "TimeToLive":{ + "shape":"TimeToLive", + "documentation":"<p>How long the text message is valid for. By default this is 72 hours.</p>" + }, + "Context":{ + "shape":"ContextMap", + "documentation":"<p>You can specify custom data in this field. If you do, that data is logged to the event destination.</p>" + }, + "DestinationCountryParameters":{ + "shape":"DestinationCountryParameters", + "documentation":"<p>This field is used for any country-specific registration requirements. Currently, this setting is only used when you send messages to recipients in India using a sender ID. For more information see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-senderid-india.html\">Special requirements for sending SMS messages to recipients in India</a>. </p>" + }, + "DryRun":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true, the message is checked and validated, but isn't sent to the end recipient.</p>" + } + } + }, + "SendTextMessageResult":{ + "type":"structure", + "members":{ + "MessageId":{ + "shape":"String", + "documentation":"<p>The unique identifier for the message.</p>" + } + } + }, + "SendVoiceMessageRequest":{ + "type":"structure", + "required":[ + "DestinationPhoneNumber", + "OriginationIdentity" + ], + "members":{ + "DestinationPhoneNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The destination phone number in E.164 format.</p>" + }, + "OriginationIdentity":{ + "shape":"VoiceMessageOriginationIdentity", + "documentation":"<p>The origination identity to use for the voice call. This can be the PhoneNumber, PhoneNumberId, PhoneNumberArn, PoolId, or PoolArn.</p>" + }, + "MessageBody":{ + "shape":"VoiceMessageBody", + "documentation":"<p>The text to convert to a voice message.</p>" + }, + "MessageBodyTextType":{ + "shape":"VoiceMessageBodyTextType", + "documentation":"<p>Specifies if the MessageBody field contains text or <a href=\"https://docs.aws.amazon.com/polly/latest/dg/what-is.html\">speech synthesis markup language (SSML)</a>.</p> <ul> <li> <p>TEXT: This is the default value. When used the maximum character limit is 3000.</p> </li> <li> <p>SSML: When used the maximum character limit is 6000 including SSML tagging.</p> </li> </ul>" + }, + "VoiceId":{ + "shape":"VoiceId", + "documentation":"<p>The voice for the <a href=\"https://docs.aws.amazon.com/polly/latest/dg/what-is.html\">Amazon Polly</a> service to use. By default this is set to \"MATTHEW\".</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The name of the configuration set to use. This can be either the ConfigurationSetName or ConfigurationSetArn.</p>" + }, + "MaxPricePerMinute":{ + "shape":"MaxPrice", + "documentation":"<p>The maximum amount to spend per voice message, in US dollars.</p>" + }, + "TimeToLive":{ + "shape":"TimeToLive", + "documentation":"<p>How long the voice message is valid for. By default this is 72 hours.</p>" + }, + "Context":{ + "shape":"ContextMap", + "documentation":"<p>You can specify custom data in this field. If you do, that data is logged to the event destination.</p>" + }, + "DryRun":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true, the message is checked and validated, but isn't sent to the end recipient.</p>" + } + } + }, + "SendVoiceMessageResult":{ + "type":"structure", + "members":{ + "MessageId":{ + "shape":"String", + "documentation":"<p>The unique identifier for the message.</p>" + } + } + }, + "SenderId":{ + "type":"string", + "max":11, + "min":1, + "pattern":"[A-Za-z0-9_-]+" + }, + "SenderIdAndCountry":{ + "type":"structure", + "required":[ + "SenderId", + "IsoCountryCode" + ], + "members":{ + "SenderId":{ + "shape":"SenderIdOrArn", + "documentation":"<p>The unique identifier of the sender.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + } + }, + "documentation":"<p> The alphanumeric sender ID in a specific country that you want to describe. For more information on sender IDs see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-awssupport-sender-id.html\">Requesting sender IDs for SMS messaging with Amazon Pinpoint </a> in the <i>Amazon Pinpoint User Guide</i>.</p>" + }, + "SenderIdFilter":{ + "type":"structure", + "required":[ + "Name", + "Values" + ], + "members":{ + "Name":{ + "shape":"SenderIdFilterName", + "documentation":"<p>The name of the attribute to filter on.</p>" + }, + "Values":{ + "shape":"FilterValueList", + "documentation":"<p>An array of values to filter for.</p>" + } + }, + "documentation":"<p>The information for a sender ID that meets a specified criteria.</p>" + }, + "SenderIdFilterList":{ + "type":"list", + "member":{"shape":"SenderIdFilter"}, + "max":20, + "min":0 + }, + "SenderIdFilterName":{ + "type":"string", + "enum":[ + "sender-id", + "iso-country-code", + "message-type" + ] + }, + "SenderIdInformation":{ + "type":"structure", + "required":[ + "SenderIdArn", + "SenderId", + "IsoCountryCode", + "MessageTypes", + "MonthlyLeasingPrice" + ], + "members":{ + "SenderIdArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) associated with the SenderId.</p>" + }, + "SenderId":{ + "shape":"SenderId", + "documentation":"<p>The alphanumeric sender ID in a specific country that you'd like to describe.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "MessageTypes":{ + "shape":"MessageTypeList", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "MonthlyLeasingPrice":{ + "shape":"String", + "documentation":"<p>The monthly leasing price, in US dollars.</p>" + } + }, + "documentation":"<p>The information for all SenderIds in an Amazon Web Services account.</p>" + }, + "SenderIdInformationList":{ + "type":"list", + "member":{"shape":"SenderIdInformation"} + }, + "SenderIdList":{ + "type":"list", + "member":{"shape":"SenderIdAndCountry"}, + "max":5, + "min":0 + }, + "SenderIdOrArn":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/-]+" + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"}, + "Reason":{ + "shape":"ServiceQuotaExceededExceptionReason", + "documentation":"<p>The reason for the exception.</p>" + } + }, + "documentation":"<p>The request would cause a service quota to be exceeded.</p>", + "exception":true + }, + "ServiceQuotaExceededExceptionReason":{ + "type":"string", + "enum":[ + "CONFIGURATION_SETS_PER_ACCOUNT", + "DAILY_DESTINATION_CALL_LIMIT", + "EVENT_DESTINATIONS_PER_CONFIGURATION_SET", + "KEYWORDS_PER_PHONE_NUMBER", + "KEYWORDS_PER_POOL", + "MONTHLY_SPEND_LIMIT_REACHED_FOR_TEXT", + "MONTHLY_SPEND_LIMIT_REACHED_FOR_VOICE", + "OPT_OUT_LISTS_PER_ACCOUNT", + "ORIGINATION_IDENTITIES_PER_POOL", + "PHONE_NUMBERS_PER_ACCOUNT", + "PHONE_NUMBERS_PER_REGISTRATION", + "POOLS_PER_ACCOUNT", + "TAGS_PER_RESOURCE" + ] + }, + "SetDefaultMessageTypeRequest":{ + "type":"structure", + "required":[ + "ConfigurationSetName", + "MessageType" + ], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The configuration set to update with a new default message type. This field can be the ConsigurationSetName or ConfigurationSetArn.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + } + } + }, + "SetDefaultMessageTypeResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the updated configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set that was updated.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The new default message type of the configuration set.</p>" + } + } + }, + "SetDefaultSenderIdRequest":{ + "type":"structure", + "required":[ + "ConfigurationSetName", + "SenderId" + ], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The configuration set to updated with a new default SenderId. This field can be the ConsigurationSetName or ConfigurationSetArn.</p>" + }, + "SenderId":{ + "shape":"SenderId", + "documentation":"<p>The current sender ID for the configuration set. When sending a text message to a destination country which supports SenderIds, the default sender ID on the configuration set specified on <a>SendTextMessage</a> will be used if no dedicated origination phone numbers or registered SenderIds are available in your account, instead of a generic sender ID, such as 'NOTICE'.</p>" + } + } + }, + "SetDefaultSenderIdResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the updated configuration set.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set that was updated.</p>" + }, + "SenderId":{ + "shape":"SenderId", + "documentation":"<p>The default sender ID to set for the ConfigurationSet.</p>" + } + } + }, + "SetTextMessageSpendLimitOverrideRequest":{ + "type":"structure", + "required":["MonthlyLimit"], + "members":{ + "MonthlyLimit":{ + "shape":"MonthlyLimit", + "documentation":"<p>The new monthly limit to enforce on text messages.</p>" + } + } + }, + "SetTextMessageSpendLimitOverrideResult":{ + "type":"structure", + "members":{ + "MonthlyLimit":{ + "shape":"MonthlyLimit", + "documentation":"<p>The current monthly limit to enforce on sending text messages.</p>" + } + } + }, + "SetVoiceMessageSpendLimitOverrideRequest":{ + "type":"structure", + "required":["MonthlyLimit"], + "members":{ + "MonthlyLimit":{ + "shape":"MonthlyLimit", + "documentation":"<p>The new monthly limit to enforce on voice messages.</p>" + } + } + }, + "SetVoiceMessageSpendLimitOverrideResult":{ + "type":"structure", + "members":{ + "MonthlyLimit":{ + "shape":"MonthlyLimit", + "documentation":"<p>The current monthly limit to enforce on sending voice messages.</p>" + } + } + }, + "SnsDestination":{ + "type":"structure", + "required":["TopicArn"], + "members":{ + "TopicArn":{ + "shape":"SnsTopicArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.</p>" + } + }, + "documentation":"<p>An object that defines an Amazon SNS destination for events. You can use Amazon SNS to send notification when certain events occur.</p>" + }, + "SnsTopicArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:\\S+" + }, + "SpendLimit":{ + "type":"structure", + "required":[ + "Name", + "EnforcedLimit", + "MaxLimit", + "Overridden" + ], + "members":{ + "Name":{ + "shape":"SpendLimitName", + "documentation":"<p>The name for the SpendLimit.</p>" + }, + "EnforcedLimit":{ + "shape":"PrimitiveLong", + "documentation":"<p>The maximum amount of money, in US dollars, that you want to be able to spend sending messages each month. This value has to be less than or equal to the amount in <code>MaxLimit</code>. To use this custom limit, <code>Overridden</code> must be set to true.</p>" + }, + "MaxLimit":{ + "shape":"PrimitiveLong", + "documentation":"<p> The maximum amount of money that you are able to spend to send messages each month, in US dollars.</p>" + }, + "Overridden":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to <code>True</code>, the value that has been specified in the <code>EnforcedLimit</code> is used to determine the maximum amount in US dollars that can be spent to send messages each month, in US dollars.</p>" + } + }, + "documentation":"<p>Describes the current Amazon Pinpoint monthly spend limits for sending voice and text messages. For more information on increasing your monthly spend limit, see <a href=\"https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-sms-awssupport-spend-threshold.html\"> Requesting increases to your monthly SMS spending quota for Amazon Pinpoint </a> in the <i>Amazon Pinpoint User Guide</i>. </p>" + }, + "SpendLimitList":{ + "type":"list", + "member":{"shape":"SpendLimit"} + }, + "SpendLimitName":{ + "type":"string", + "enum":[ + "TEXT_MESSAGE_MONTHLY_SPEND_LIMIT", + "VOICE_MESSAGE_MONTHLY_SPEND_LIMIT" + ] + }, + "String":{"type":"string"}, + "Tag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{ + "shape":"TagKey", + "documentation":"<p>The key identifier, or name, of the tag.</p>" + }, + "Value":{ + "shape":"TagValue", + "documentation":"<p>The string value associated with the key of the tag.</p>" + } + }, + "documentation":"<p>The list of tags to be added to the specified topic.</p>" + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":".+" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":1 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceArn", + "Tags" + ], + "members":{ + "ResourceArn":{ + "shape":"AmazonResourceName", + "documentation":"<p>The Amazon Resource Name (ARN) of the resource.</p>" + }, + "Tags":{ + "shape":"NonEmptyTagList", + "documentation":"<p>An array of key and value pair tags that are associated with the resource.</p>" + } + } + }, + "TagResourceResult":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0, + "pattern":".*" + }, + "TextMessageBody":{ + "type":"string", + "max":1600, + "min":1, + "pattern":"(?!\\s*$)[\\s\\S]+" + }, + "TextMessageOriginationIdentity":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/\\+-]+" + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"<p>An error that occurred because too many requests were sent during a certain amount of time.</p>", + "exception":true, + "retryable":{"throttling":true} + }, + "TimeToLive":{ + "type":"integer", + "box":true, + "max":259200, + "min":5 + }, + "Timestamp":{"type":"timestamp"}, + "TwoWayChannelArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:\\S+" + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceArn", + "TagKeys" + ], + "members":{ + "ResourceArn":{ + "shape":"AmazonResourceName", + "documentation":"<p>The Amazon Resource Name (ARN) of the resource.</p>" + }, + "TagKeys":{ + "shape":"TagKeyList", + "documentation":"<p>An array of tag key values to unassociate with the resource.</p>" + } + } + }, + "UntagResourceResult":{ + "type":"structure", + "members":{ + } + }, + "UpdateEventDestinationRequest":{ + "type":"structure", + "required":[ + "ConfigurationSetName", + "EventDestinationName" + ], + "members":{ + "ConfigurationSetName":{ + "shape":"ConfigurationSetNameOrArn", + "documentation":"<p>The configuration set to update with the new event destination. Valid values for this can be the ConfigurationSetName or ConfigurationSetArn.</p>" + }, + "EventDestinationName":{ + "shape":"EventDestinationName", + "documentation":"<p>The name to use for the event destination.</p>" + }, + "Enabled":{ + "shape":"Boolean", + "documentation":"<p>When set to true logging is enabled.</p>" + }, + "MatchingEventTypes":{ + "shape":"EventTypeList", + "documentation":"<p>An array of event types that determine which events to log.</p>" + }, + "CloudWatchLogsDestination":{ + "shape":"CloudWatchLogsDestination", + "documentation":"<p>An object that contains information about an event destination that sends data to CloudWatch Logs.</p>" + }, + "KinesisFirehoseDestination":{ + "shape":"KinesisFirehoseDestination", + "documentation":"<p>An object that contains information about an event destination for logging to Kinesis Data Firehose.</p>" + }, + "SnsDestination":{ + "shape":"SnsDestination", + "documentation":"<p>An object that contains information about an event destination that sends data to Amazon SNS.</p>" + } + } + }, + "UpdateEventDestinationResult":{ + "type":"structure", + "members":{ + "ConfigurationSetArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) for the ConfigurationSet that was updated.</p>" + }, + "ConfigurationSetName":{ + "shape":"ConfigurationSetName", + "documentation":"<p>The name of the configuration set.</p>" + }, + "EventDestination":{ + "shape":"EventDestination", + "documentation":"<p>An EventDestination object containing the details of where events will be logged. </p>" + } + } + }, + "UpdatePhoneNumberRequest":{ + "type":"structure", + "required":["PhoneNumberId"], + "members":{ + "PhoneNumberId":{ + "shape":"PhoneNumberIdOrArn", + "documentation":"<p>The unique identifier of the phone number. Valid values for this field can be either the PhoneNumberId or PhoneNumberArn.</p>" + }, + "TwoWayEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The OptOutList to add the phone number to. Valid values for this field can be either the OutOutListName or OutOutListArn.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When set to true the phone number can't be deleted. </p>" + } + } + }, + "UpdatePhoneNumberResult":{ + "type":"structure", + "members":{ + "PhoneNumberArn":{ + "shape":"String", + "documentation":"<p>The Amazon Resource Name (ARN) of the updated phone number.</p>" + }, + "PhoneNumberId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the phone number.</p>" + }, + "PhoneNumber":{ + "shape":"PhoneNumber", + "documentation":"<p>The phone number that was updated.</p>" + }, + "Status":{ + "shape":"NumberStatus", + "documentation":"<p>The current status of the request.</p>" + }, + "IsoCountryCode":{ + "shape":"IsoCountryCode", + "documentation":"<p>The two-character code, in ISO 3166-1 alpha-2 format, for the country or region. </p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.</p>" + }, + "NumberCapabilities":{ + "shape":"NumberCapabilityList", + "documentation":"<p>Specifies if the number could be used for text messages, voice or both.</p>" + }, + "NumberType":{ + "shape":"NumberType", + "documentation":"<p>The type of number that was requested.</p>" + }, + "MonthlyLeasingPrice":{ + "shape":"String", + "documentation":"<p>The monthly leasing price of the phone number, in US dollars.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>This is true if self managed opt-out are enabled.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList associated with the phone number.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true the phone number can't be deleted.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the phone number was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "UpdatePoolRequest":{ + "type":"structure", + "required":["PoolId"], + "members":{ + "PoolId":{ + "shape":"PoolIdOrArn", + "documentation":"<p>The unique identifier of the pool to update. Valid values are either the PoolId or PoolArn.</p>" + }, + "TwoWayEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"Boolean", + "documentation":"<p>By default this is set to false. When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListNameOrArn", + "documentation":"<p>The OptOutList to associate with the pool. Valid values are either OptOutListName or OptOutListArn.</p>" + }, + "SharedRoutesEnabled":{ + "shape":"Boolean", + "documentation":"<p>Indicates whether shared routes are enabled for the pool.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"Boolean", + "documentation":"<p>When set to true the pool can't be deleted.</p>" + } + } + }, + "UpdatePoolResult":{ + "type":"structure", + "members":{ + "PoolArn":{ + "shape":"String", + "documentation":"<p>The ARN of the pool.</p>" + }, + "PoolId":{ + "shape":"String", + "documentation":"<p>The unique identifier of the pool.</p>" + }, + "Status":{ + "shape":"PoolStatus", + "documentation":"<p>The current status of the pool update request.</p>" + }, + "MessageType":{ + "shape":"MessageType", + "documentation":"<p>The type of message for the pool to use.</p>" + }, + "TwoWayEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>By default this is set to false. When set to true you can receive incoming text messages from your end recipients.</p>" + }, + "TwoWayChannelArn":{ + "shape":"TwoWayChannelArn", + "documentation":"<p>The Amazon Resource Name (ARN) of the two way channel.</p>" + }, + "SelfManagedOptOutsEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When an end recipient sends a message that begins with HELP or STOP to one of your dedicated numbers, Amazon Pinpoint automatically replies with a customizable message and adds the end recipient to the OptOutList. When set to true you're responsible for responding to HELP and STOP requests. You're also responsible for tracking and honoring opt-out requests.</p>" + }, + "OptOutListName":{ + "shape":"OptOutListName", + "documentation":"<p>The name of the OptOutList associated with the pool.</p>" + }, + "SharedRoutesEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>Indicates whether shared routes are enabled for the pool.</p>" + }, + "DeletionProtectionEnabled":{ + "shape":"PrimitiveBoolean", + "documentation":"<p>When set to true the pool can't be deleted.</p>" + }, + "CreatedTimestamp":{ + "shape":"Timestamp", + "documentation":"<p>The time when the pool was created, in <a href=\"https://www.epochconverter.com/\">UNIX epoch time</a> format.</p>" + } + } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"}, + "Reason":{ + "shape":"ValidationExceptionReason", + "documentation":"<p>The reason for the exception.</p>" + }, + "Fields":{ + "shape":"ValidationExceptionFieldList", + "documentation":"<p>The field that failed validation.</p>" + } + }, + "documentation":"<p>A validation exception for a field.</p>", + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "Name", + "Message" + ], + "members":{ + "Name":{ + "shape":"String", + "documentation":"<p>The name of the field.</p>" + }, + "Message":{ + "shape":"String", + "documentation":"<p>The message associated with the validation exception with information to help determine its cause.</p>" + } + }, + "documentation":"<p>The field associated with the validation exception.</p>" + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "UNKNOWN_OPERATION", + "CANNOT_PARSE", + "FIELD_VALIDATION_FAILED", + "OTHER", + "INVALID_PARAMETER", + "INVALID_ARN", + "INVALID_IDENTITY_FOR_DESTINATION_COUNTRY", + "DESTINATION_COUNTRY_BLOCKED", + "CANNOT_ADD_OPTED_OUT_NUMBER", + "COUNTRY_CODE_MISMATCH", + "INVALID_FILTER_VALUES", + "INVALID_NEXT_TOKEN", + "MISSING_PARAMETER", + "PARAMETERS_CANNOT_BE_USED_TOGETHER", + "PHONE_NUMBER_CANNOT_BE_OPTED_IN", + "PHONE_NUMBER_CANNOT_BE_RELEASED", + "PRICE_OVER_THRESHOLD", + "REQUESTED_SPEND_LIMIT_HIGHER_THAN_SERVICE_LIMIT", + "SENDER_ID_NOT_REGISTERED", + "SENDER_ID_NOT_SUPPORTED", + "TWO_WAY_NOT_ENABLED", + "TWO_WAY_NOT_SUPPORTED_IN_COUNTRY", + "TWO_WAY_NOT_SUPPORTED_IN_REGION", + "TWO_WAY_TOPIC_NOT_PRESENT" + ] + }, + "VoiceId":{ + "type":"string", + "enum":[ + "AMY", + "ASTRID", + "BIANCA", + "BRIAN", + "CAMILA", + "CARLA", + "CARMEN", + "CELINE", + "CHANTAL", + "CONCHITA", + "CRISTIANO", + "DORA", + "EMMA", + "ENRIQUE", + "EWA", + "FILIZ", + "GERAINT", + "GIORGIO", + "GWYNETH", + "HANS", + "INES", + "IVY", + "JACEK", + "JAN", + "JOANNA", + "JOEY", + "JUSTIN", + "KARL", + "KENDRA", + "KIMBERLY", + "LEA", + "LIV", + "LOTTE", + "LUCIA", + "LUPE", + "MADS", + "MAJA", + "MARLENE", + "MATHIEU", + "MATTHEW", + "MAXIM", + "MIA", + "MIGUEL", + "MIZUKI", + "NAJA", + "NICOLE", + "PENELOPE", + "RAVEENA", + "RICARDO", + "RUBEN", + "RUSSELL", + "SALLI", + "SEOYEON", + "TAKUMI", + "TATYANA", + "VICKI", + "VITORIA", + "ZEINA", + "ZHIYU" + ] + }, + "VoiceMessageBody":{ + "type":"string", + "max":6000, + "min":1, + "pattern":"(?!\\s*$)[\\s\\S]+" + }, + "VoiceMessageBodyTextType":{ + "type":"string", + "enum":[ + "TEXT", + "SSML" + ] + }, + "VoiceMessageOriginationIdentity":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[A-Za-z0-9_:/\\+-]+" + } + }, + "documentation":"<p>Welcome to the <i>Amazon Pinpoint SMS and Voice, version 2 API Reference</i>. This guide provides information about Amazon Pinpoint SMS and Voice, version 2 API resources, including supported HTTP methods, parameters, and schemas.</p> <p>Amazon Pinpoint is an Amazon Web Services service that you can use to engage with your recipients across multiple messaging channels. The Amazon Pinpoint SMS and Voice, version 2 API provides programmatic access to options that are unique to the SMS and voice channels and supplements the resources provided by the Amazon Pinpoint API.</p> <p>If you're new to Amazon Pinpoint, it's also helpful to review the <a href=\"https://docs.aws.amazon.com/pinpoint/latest/developerguide/welcome.html\"> Amazon Pinpoint Developer Guide</a>. The <i>Amazon Pinpoint Developer Guide</i> provides tutorials, code samples, and procedures that demonstrate how to use Amazon Pinpoint features programmatically and how to integrate Amazon Pinpoint functionality into mobile apps and other types of applications. The guide also provides key information, such as Amazon Pinpoint integration with other Amazon Web Services services, and the quotas that apply to use of the service.</p>" +} diff --git a/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/waiters-2.json b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/waiters-2.json new file mode 100644 index 0000000000..13f60ee66b --- /dev/null +++ b/contrib/python/botocore/py3/botocore/data/pinpoint-sms-voice-v2/2022-03-31/waiters-2.json @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} diff --git a/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/paginators-1.json b/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/paginators-1.json index ea142457a6..a2ef01b9f6 100644 --- a/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/paginators-1.json +++ b/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/paginators-1.json @@ -1,3 +1,10 @@ { - "pagination": {} + "pagination": { + "ListRoutingControls": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RoutingControls" + } + } } diff --git a/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/service-2.json b/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/service-2.json index eb0c7bcbb2..d3315b6b38 100644 --- a/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/route53-recovery-cluster/2019-12-02/service-2.json @@ -29,7 +29,25 @@ {"shape":"ThrottlingException"}, {"shape":"EndpointTemporarilyUnavailableException"} ], - "documentation":"<p>Get the state for a routing control. A routing control is a simple on/off switch that you can use to route traffic to cells. When the state is On, traffic flows to a cell. When it's Off, traffic does not flow. </p> <p>Before you can create a routing control, you must first create a cluster to host the control in a control panel. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.create.html\"> Create routing control structures</a> in the Amazon Route 53 Application Recovery Controller Developer Guide. Then you access one of the endpoints for the cluster to get or update the routing control state to redirect traffic. </p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Application Recovery Controller.</i> </p> <p>To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html\">API examples</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p>Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls overall</a> </p> </li> </ul>" + "documentation":"<p>Get the state for a routing control. A routing control is a simple on/off switch that you can use to route traffic to cells. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow. </p> <p>Before you can create a routing control, you must first create a cluster, and then host the control in a control panel on the cluster. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.create.html\"> Create routing control structures</a> in the Amazon Route 53 Application Recovery Controller Developer Guide. You access one of the endpoints for the cluster to get or update the routing control state to redirect traffic for your application. </p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.</i> </p> <p>To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html\">API examples</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p>Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls in Route 53 ARC</a> </p> </li> </ul>" + }, + "ListRoutingControls":{ + "name":"ListRoutingControls", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRoutingControlsRequest"}, + "output":{"shape":"ListRoutingControlsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"EndpointTemporarilyUnavailableException"} + ], + "documentation":"<p>List routing control names and Amazon Resource Names (ARNs), as well as the routing control state for each routing control, along with the control panel name and control panel ARN for the routing controls. If you specify a control panel ARN, this call lists the routing controls in the control panel. Otherwise, it lists all the routing controls in the cluster.</p> <p>A routing control is a simple on/off switch in Route 53 ARC that you can use to route traffic to cells. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow.</p> <p>Before you can create a routing control, you must first create a cluster, and then host the control in a control panel on the cluster. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.create.html\"> Create routing control structures</a> in the Amazon Route 53 Application Recovery Controller Developer Guide. You access one of the endpoints for the cluster to get or update the routing control state to redirect traffic for your application. </p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to use this API operation to list routing controls in Route 53 ARC.</i> </p> <p>Learn more about working with routing controls in the following topics in the Amazon Route 53 Application Recovery Controller Developer Guide:</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls in Route 53 ARC</a> </p> </li> </ul>" }, "UpdateRoutingControlState":{ "name":"UpdateRoutingControlState", @@ -48,7 +66,7 @@ {"shape":"EndpointTemporarilyUnavailableException"}, {"shape":"ConflictException"} ], - "documentation":"<p>Set the state of the routing control to reroute traffic. You can set the value to be On or Off. When the state is On, traffic flows to a cell. When it's Off, traffic does not flow.</p> <p>With Application Recovery Controller, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.</p> <p>The <code>SafetyRulesToOverride</code> property enables you override one or more safety rules and update routing control states. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Application Recovery Controller.</i> </p> <p>To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html\">API examples</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls overall</a> </p> </li> </ul>" + "documentation":"<p>Set the state of the routing control to reroute traffic. You can set the value to be On or Off. When the state is On, traffic flows to a cell. When the state is Off, traffic does not flow.</p> <p>With Route 53 ARC, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.</p> <p>The <code>SafetyRulesToOverride</code> property enables you override one or more safety rules and update routing control states. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.</i> </p> <p>To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html\">API examples</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls overall</a> </p> </li> </ul>" }, "UpdateRoutingControlStates":{ "name":"UpdateRoutingControlStates", @@ -65,9 +83,10 @@ {"shape":"ValidationException"}, {"shape":"ThrottlingException"}, {"shape":"EndpointTemporarilyUnavailableException"}, - {"shape":"ConflictException"} + {"shape":"ConflictException"}, + {"shape":"ServiceLimitExceededException"} ], - "documentation":"<p>Set multiple routing control states. You can set the value for each state to be On or Off. When the state is On, traffic flows to a cell. When it's Off, traffic does not flow.</p> <p>With Application Recovery Controller, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.</p> <p>The <code>SafetyRulesToOverride</code> property enables you override one or more safety rules and update routing control states. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Application Recovery Controller.</i> </p> <p>To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html\">API examples</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls overall</a> </p> </li> </ul>" + "documentation":"<p>Set multiple routing control states. You can set the value for each state to be On or Off. When the state is On, traffic flows to a cell. When it's Off, traffic does not flow.</p> <p>With Route 53 ARC, you can add safety rules for routing controls, which are safeguards for routing control state updates that help prevent unexpected outcomes, like fail open traffic routing. However, there are scenarios when you might want to bypass the routing control safeguards that are enforced with safety rules that you've configured. For example, you might want to fail over quickly for disaster recovery, and one or more safety rules might be unexpectedly preventing you from updating a routing control state to reroute traffic. In a \"break glass\" scenario like this, you can override one or more safety rules to change a routing control state and fail over your application.</p> <p>The <code>SafetyRulesToOverride</code> property enables you override one or more safety rules and update routing control states. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p> <i>You must specify Regional endpoints when you work with API cluster operations to get or update routing control states in Route 53 ARC.</i> </p> <p>To see a code example for getting a routing control state, including accessing Regional cluster endpoints in sequence, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html\">API examples</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html\"> Viewing and updating routing control states</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Working with routing controls overall</a> </p> </li> </ul>" } }, "shapes":{ @@ -77,7 +96,7 @@ "members":{ "message":{"shape":"String"} }, - "documentation":"<p>You don't have sufficient permissions to query the routing control state.</p>", + "documentation":"<p>You don't have sufficient permissions to perform this action.</p>", "exception":true }, "Arn":{ @@ -114,6 +133,12 @@ "documentation":"<p>There was a conflict with this request. Try again.</p>", "exception":true }, + "ControlPanelName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^\\S+$" + }, "EndpointTemporarilyUnavailableException":{ "type":"structure", "required":["message"], @@ -129,7 +154,7 @@ "members":{ "RoutingControlArn":{ "shape":"Arn", - "documentation":"<p>The Amazon Resource Number (ARN) for the routing control that you want to get the state for.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) for the routing control that you want to get the state for.</p>" } } }, @@ -142,11 +167,15 @@ "members":{ "RoutingControlArn":{ "shape":"Arn", - "documentation":"<p>The Amazon Resource Number (ARN) of the response.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) of the response.</p>" }, "RoutingControlState":{ "shape":"RoutingControlState", "documentation":"<p>The state of the routing control.</p>" + }, + "RoutingControlName":{ + "shape":"RoutingControlName", + "documentation":"<p>The routing control name.</p>" } } }, @@ -161,6 +190,48 @@ "exception":true, "fault":true }, + "ListRoutingControlsRequest":{ + "type":"structure", + "members":{ + "ControlPanelArn":{ + "shape":"Arn", + "documentation":"<p>The Amazon Resource Name (ARN) of the control panel of the routing controls to list.</p>" + }, + "NextToken":{ + "shape":"PageToken", + "documentation":"<p>The token for the next set of results. You receive this token from a previous call.</p>" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"<p>The number of routing controls objects that you want to return with this call. The default value is 500.</p>", + "box":true + } + } + }, + "ListRoutingControlsResponse":{ + "type":"structure", + "required":["RoutingControls"], + "members":{ + "RoutingControls":{ + "shape":"RoutingControls", + "documentation":"<p>The list of routing controls.</p>" + }, + "NextToken":{ + "shape":"PageToken", + "documentation":"<p>The token for the next set of results. You receive this token from a previous call.</p>" + } + } + }, + "MaxResults":{ + "type":"integer", + "min":1 + }, + "PageToken":{ + "type":"string", + "max":8096, + "min":1, + "pattern":"[\\S]*" + }, "ResourceNotFoundException":{ "type":"structure", "required":[ @@ -179,13 +250,45 @@ "documentation":"Hypothetical resource type that was not found" } }, - "documentation":"<p>The request references a routing control that was not found.</p>", + "documentation":"<p>The request references a routing control or control panel that was not found.</p>", "exception":true }, "RetryAfterSeconds":{ "type":"integer", "documentation":"Advice to clients on when the call can be safely retried" }, + "RoutingControl":{ + "type":"structure", + "members":{ + "ControlPanelArn":{ + "shape":"Arn", + "documentation":"<p>The Amazon Resource Name (ARN) of the control panel where the routing control is located.</p>" + }, + "ControlPanelName":{ + "shape":"ControlPanelName", + "documentation":"<p>The name of the control panel where the routing control is located.</p>" + }, + "RoutingControlArn":{ + "shape":"Arn", + "documentation":"<p>The Amazon Resource Name (ARN) of the routing control.</p>" + }, + "RoutingControlName":{ + "shape":"RoutingControlName", + "documentation":"<p>The name of the routing control.</p>" + }, + "RoutingControlState":{ + "shape":"RoutingControlState", + "documentation":"<p>The current state of the routing control. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow. </p>" + } + }, + "documentation":"<p>A routing control, which is a simple on/off switch that you can use to route traffic to cells. When a routing control state is On, traffic flows to a cell. When the state is Off, traffic does not flow. </p>" + }, + "RoutingControlName":{ + "type":"string", + "max":64, + "min":1, + "pattern":"^\\S+$" + }, "RoutingControlState":{ "type":"string", "enum":[ @@ -193,6 +296,39 @@ "Off" ] }, + "RoutingControls":{ + "type":"list", + "member":{"shape":"RoutingControl"} + }, + "ServiceLimitExceededException":{ + "type":"structure", + "required":[ + "message", + "limitCode", + "serviceCode" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{ + "shape":"String", + "documentation":"<p>The resource identifier of the limit that was exceeded.</p>" + }, + "resourceType":{ + "shape":"String", + "documentation":"<p>The resource type of the limit that was exceeded.</p>" + }, + "limitCode":{ + "shape":"String", + "documentation":"<p>The code of the limit that was exceeded.</p>" + }, + "serviceCode":{ + "shape":"String", + "documentation":"<p>The service code of the limit that was exceeded.</p>" + } + }, + "documentation":"<p>The request can't update that many routing control states at the same time. Try again with fewer routing control states.</p>", + "exception":true + }, "String":{"type":"string"}, "ThrottlingException":{ "type":"structure", @@ -217,7 +353,7 @@ "members":{ "RoutingControlArn":{ "shape":"Arn", - "documentation":"<p>The Amazon Resource Number (ARN) for a routing control state entry.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) for a routing control state entry.</p>" }, "RoutingControlState":{ "shape":"RoutingControlState", @@ -235,7 +371,7 @@ "members":{ "RoutingControlArn":{ "shape":"Arn", - "documentation":"<p>The Amazon Resource Number (ARN) for the routing control that you want to update the state for.</p>" + "documentation":"<p>The Amazon Resource Name (ARN) for the routing control that you want to update the state for.</p>" }, "RoutingControlState":{ "shape":"RoutingControlState", @@ -243,7 +379,7 @@ }, "SafetyRulesToOverride":{ "shape":"Arns", - "documentation":"<p>The Amazon Resource Numbers (ARNs) for the safety rules that you want to override when you're updating the state of a routing control. You can override one safety rule or multiple safety rules by including one or more ARNs, separated by commas.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p>" + "documentation":"<p>The Amazon Resource Names (ARNs) for the safety rules that you want to override when you're updating the state of a routing control. You can override one safety rule or multiple safety rules by including one or more ARNs, separated by commas.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p>" } } }, @@ -262,7 +398,7 @@ }, "SafetyRulesToOverride":{ "shape":"Arns", - "documentation":"<p>The Amazon Resource Numbers (ARNs) for the safety rules that you want to override when you're updating routing control states. You can override one safety rule or multiple safety rules by including one or more ARNs, separated by commas.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p>" + "documentation":"<p>The Amazon Resource Names (ARNs) for the safety rules that you want to override when you're updating routing control states. You can override one safety rule or multiple safety rules by including one or more ARNs, separated by commas.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html\"> Override safety rules to reroute traffic</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p>" } } }, @@ -316,5 +452,5 @@ ] } }, - "documentation":"<p>Welcome to the Routing Control (Recovery Cluster) API Reference Guide for Amazon Route 53 Application Recovery Controller.</p> <p>With Amazon Route 53 Application Recovery Controller, you can use routing control with extreme reliability to recover applications by rerouting traffic across Availability Zones or AWS Regions. Routing controls are simple on/off switches hosted on a highly available cluster in Application Recovery Controller. A cluster provides a set of five redundant Regional endpoints against which you can run API calls to get or update the state of routing controls. To implement failover, you set one routing control on and another one off, to reroute traffic from one Availability Zone or Amazon Web Services Region to another. </p> <p> <i>Be aware that you must specify the Regional endpoints for a cluster when you work with API cluster operations to get or update routing control states in Application Recovery Controller.</i> In addition, you must specify the US West (Oregon) Region for Application Recovery Controller API calls. For example, use the parameter <code>region us-west-2</code> with AWS CLI commands. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.api.html\"> Get and update routing control states using the API</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p>This API guide includes information about the API operations for how to get and update routing control states in Application Recovery Controller. You also must set up the structures to support routing controls: clusters and control panels.</p> <p>For more information about working with routing control in Application Recovery Controller, see the following:</p> <ul> <li> <p>To create clusters, routing controls, and control panels by using the control plane API for routing control, see the <a href=\"https://docs.aws.amazon.com/recovery-cluster/latest/api/\">Recovery Control Configuration API Reference Guide for Amazon Route 53 Application Recovery Controller</a>.</p> </li> <li> <p>Learn about the components in recovery control configuration, including clusters, routing controls, and control panels. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/introduction-components.html#introduction-components-routing\"> Recovery control components</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> </li> <li> <p>Application Recovery Controller also provides readiness checks that run continually to help make sure that your applications are scaled and ready to handle failover traffic. For more information about the related API actions, see the <a href=\"https://docs.aws.amazon.com/recovery-readiness/latest/api/\">Recovery Readiness API Reference Guide for Amazon Route 53 Application Recovery Controller</a>.</p> </li> <li> <p>For more information about creating resilient applications and preparing for recovery readiness with Application Recovery Controller, see the <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/\">Amazon Route 53 Application Recovery Controller Developer Guide</a>.</p> </li> </ul>" + "documentation":"<p>Welcome to the Routing Control (Recovery Cluster) API Reference Guide for Amazon Route 53 Application Recovery Controller.</p> <p>With Route 53 ARC, you can use routing control with extreme reliability to recover applications by rerouting traffic across Availability Zones or Amazon Web Services Regions. Routing controls are simple on/off switches hosted on a highly available cluster in Route 53 ARC. A cluster provides a set of five redundant Regional endpoints against which you can run API calls to get or update the state of routing controls. To implement failover, you set one routing control On and another one Off, to reroute traffic from one Availability Zone or Amazon Web Services Region to another. </p> <p> <i>Be aware that you must specify a Regional endpoint for a cluster when you work with API cluster operations to get or update routing control states in Route 53 ARC.</i> In addition, you must specify the US West (Oregon) Region for Route 53 ARC API calls. For example, use the parameter <code>--region us-west-2</code> with AWS CLI commands. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.api.html\"> Get and update routing control states using the API</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> <p>This API guide includes information about the API operations for how to get and update routing control states in Route 53 ARC. To work with routing control in Route 53 ARC, you must first create the required components (clusters, control panels, and routing controls) using the recovery cluster configuration API.</p> <p>For more information about working with routing control in Route 53 ARC, see the following:</p> <ul> <li> <p>Create clusters, control panels, and routing controls by using API operations. For more information, see the <a href=\"https://docs.aws.amazon.com/recovery-cluster/latest/api/\">Recovery Control Configuration API Reference Guide for Amazon Route 53 Application Recovery Controller</a>.</p> </li> <li> <p>Learn about the components in recovery control, including clusters, routing controls, and control panels, and how to work with Route 53 ARC in the Amazon Web Services console. For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/introduction-components.html#introduction-components-routing\"> Recovery control components</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p> </li> <li> <p>Route 53 ARC also provides readiness checks that continually audit resources to help make sure that your applications are scaled and ready to handle failover traffic. For more information about the related API operations, see the <a href=\"https://docs.aws.amazon.com/recovery-readiness/latest/api/\">Recovery Readiness API Reference Guide for Amazon Route 53 Application Recovery Controller</a>.</p> </li> <li> <p>For more information about creating resilient applications and preparing for recovery readiness with Route 53 ARC, see the <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/\">Amazon Route 53 Application Recovery Controller Developer Guide</a>.</p> </li> </ul>" } diff --git a/contrib/python/botocore/py3/botocore/data/workspaces/2015-04-08/service-2.json b/contrib/python/botocore/py3/botocore/data/workspaces/2015-04-08/service-2.json index f782c3e944..66154d47c2 100644 --- a/contrib/python/botocore/py3/botocore/data/workspaces/2015-04-08/service-2.json +++ b/contrib/python/botocore/py3/botocore/data/workspaces/2015-04-08/service-2.json @@ -202,6 +202,21 @@ ], "documentation":"<p>Creates one or more WorkSpaces.</p> <p>This operation is asynchronous and returns before the WorkSpaces are created.</p>" }, + "DeleteClientBranding":{ + "name":"DeleteClientBranding", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteClientBrandingRequest"}, + "output":{"shape":"DeleteClientBrandingResult"}, + "errors":[ + {"shape":"InvalidParameterValuesException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"<p>Deletes customized client branding. Client branding allows you to customize your WorkSpace's client login portal. You can tailor your login portal company logo, the support email address, support link, link to reset password, and a custom message for users trying to sign in.</p> <p>After you delete your customized client branding, your login portal reverts to the default client branding.</p>" + }, "DeleteConnectClientAddIn":{ "name":"DeleteConnectClientAddIn", "http":{ @@ -339,6 +354,21 @@ ], "documentation":"<p>Retrieves a list that describes modifications to the configuration of Bring Your Own License (BYOL) for the specified account.</p>" }, + "DescribeClientBranding":{ + "name":"DescribeClientBranding", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeClientBrandingRequest"}, + "output":{"shape":"DescribeClientBrandingResult"}, + "errors":[ + {"shape":"InvalidParameterValuesException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"<p>Describes the specified client branding. Client branding allows you to customize the log in page of various device types for your users. You can add your company logo, the support email address, support link, link to reset password, and a custom message for users trying to sign in.</p> <note> <p>Only device types that have branding information configured will be shown in the response.</p> </note>" + }, "DescribeClientProperties":{ "name":"DescribeClientProperties", "http":{ @@ -556,6 +586,21 @@ ], "documentation":"<p>Disassociates the specified IP access control group from the specified directory.</p>" }, + "ImportClientBranding":{ + "name":"ImportClientBranding", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ImportClientBrandingRequest"}, + "output":{"shape":"ImportClientBrandingResult"}, + "errors":[ + {"shape":"InvalidParameterValuesException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"<p>Imports client branding. Client branding allows you to customize your WorkSpace's client login portal. You can tailor your login portal company logo, the support email address, support link, link to reset password, and a custom message for users trying to sign in.</p> <p>After you import client branding, the default branding experience for the specified platform type is replaced with the imported experience</p> <note> <ul> <li> <p>You must specify at least one platform type when importing client branding.</p> </li> <li> <p>You can import up to 6 MB of data with each request. If your request exceeds this limit, you can import client branding for different platform types using separate requests.</p> </li> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify only one parameter for each platform type, but not both.</p> </li> <li> <p>Imported data can take up to a minute to appear in the WorkSpaces client.</p> </li> </ul> </note>" + }, "ImportWorkspaceImage":{ "name":"ImportWorkspaceImage", "http":{ @@ -1089,6 +1134,41 @@ "member":{"shape":"WorkspaceBundle"} }, "BundleOwner":{"type":"string"}, + "ClientDeviceType":{ + "type":"string", + "enum":[ + "DeviceTypeWindows", + "DeviceTypeOsx", + "DeviceTypeAndroid", + "DeviceTypeIos", + "DeviceTypeLinux", + "DeviceTypeWeb" + ] + }, + "ClientDeviceTypeList":{ + "type":"list", + "member":{"shape":"ClientDeviceType"}, + "max":6, + "min":1 + }, + "ClientEmail":{ + "type":"string", + "max":64, + "min":6, + "pattern":"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$" + }, + "ClientLocale":{ + "type":"string", + "max":5, + "min":5, + "pattern":"^[a-z]{2}_[A-Z]{2}$" + }, + "ClientLoginMessage":{ + "type":"string", + "max":600, + "min":0, + "pattern":"^.*$" + }, "ClientProperties":{ "type":"structure", "members":{ @@ -1117,6 +1197,12 @@ }, "documentation":"<p>Information about the Amazon WorkSpaces client.</p>" }, + "ClientUrl":{ + "type":"string", + "max":200, + "min":1, + "pattern":"^(http|https)\\://\\S+" + }, "Compute":{ "type":"string", "enum":[ @@ -1558,6 +1644,63 @@ "DISABLED" ] }, + "DefaultClientBrandingAttributes":{ + "type":"structure", + "members":{ + "LogoUrl":{ + "shape":"ClientUrl", + "documentation":"<p>The logo URL. This is the link where users can download the logo image. The only supported image format is <code>.png</code>.</p>" + }, + "SupportEmail":{ + "shape":"ClientEmail", + "documentation":"<p>The support email. The company's customer support email address.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default email is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "SupportLink":{ + "shape":"ClientUrl", + "documentation":"<p>The support link. The link for the company's customer support page for their WorkSpace.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive.You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default support link is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "ForgotPasswordLink":{ + "shape":"ClientUrl", + "documentation":"<p>The forgotten password link. This is the web address that users can go to if they forget the password for their WorkSpace.</p>" + }, + "LoginMessage":{ + "shape":"LoginMessage", + "documentation":"<p>The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is <code>en_US</code>. </p>" + } + }, + "documentation":"<p>Returns default client branding attributes that were imported. These attributes display on the client login screen.</p> <important> <p>Client branding attributes are public facing. Ensure that you don't include sensitive information.</p> </important>" + }, + "DefaultImportClientBrandingAttributes":{ + "type":"structure", + "members":{ + "Logo":{ + "shape":"DefaultLogo", + "documentation":"<p>The logo. This is the link where users can download the logo image. The only image format accepted is <code>.png</code>.</p>" + }, + "SupportEmail":{ + "shape":"ClientEmail", + "documentation":"<p>The support email. The company's customer support email address.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default email is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "SupportLink":{ + "shape":"ClientUrl", + "documentation":"<p>The support link. The link for the company's customer support page for their WorkSpace.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default support link is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "ForgotPasswordLink":{ + "shape":"ClientUrl", + "documentation":"<p>The forgotten password link. This is the web address that users can go to if they forget the password for their WorkSpace.</p>" + }, + "LoginMessage":{ + "shape":"LoginMessage", + "documentation":"<p>The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is <code>en_US</code>. </p>" + } + }, + "documentation":"<p>The default client branding attributes to be imported. These attributes display on the client login screen.</p> <important> <p>Client branding attributes are public facing. Ensure that you do not include sensitive information.</p> </important>" + }, + "DefaultLogo":{ + "type":"blob", + "max":1500000, + "min":1 + }, "DefaultOu":{"type":"string"}, "DefaultWorkspaceCreationProperties":{ "type":"structure", @@ -1589,6 +1732,28 @@ }, "documentation":"<p>Describes the default values that are used to create WorkSpaces. For more information, see <a href=\"https://docs.aws.amazon.com/workspaces/latest/adminguide/update-directory-details.html\">Update Directory Details for Your WorkSpaces</a>.</p>" }, + "DeleteClientBrandingRequest":{ + "type":"structure", + "required":[ + "ResourceId", + "Platforms" + ], + "members":{ + "ResourceId":{ + "shape":"DirectoryId", + "documentation":"<p>The directory identifier of the WorkSpace for which you want to delete client branding.</p>" + }, + "Platforms":{ + "shape":"ClientDeviceTypeList", + "documentation":"<p>The device type for which you want to delete client branding.</p>" + } + } + }, + "DeleteClientBrandingResult":{ + "type":"structure", + "members":{ + } + }, "DeleteConnectClientAddInRequest":{ "type":"structure", "required":[ @@ -1747,6 +1912,45 @@ } } }, + "DescribeClientBrandingRequest":{ + "type":"structure", + "required":["ResourceId"], + "members":{ + "ResourceId":{ + "shape":"DirectoryId", + "documentation":"<p>The directory identifier of the WorkSpace for which you want to view client branding information.</p>" + } + } + }, + "DescribeClientBrandingResult":{ + "type":"structure", + "members":{ + "DeviceTypeWindows":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information for Windows devices.</p>" + }, + "DeviceTypeOsx":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information for macOS devices.</p>" + }, + "DeviceTypeAndroid":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information for Android devices.</p>" + }, + "DeviceTypeIos":{ + "shape":"IosClientBrandingAttributes", + "documentation":"<p>The branding information for iOS devices.</p>" + }, + "DeviceTypeLinux":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information for Linux devices.</p>" + }, + "DeviceTypeWeb":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information for Web access.</p>" + } + } + }, "DescribeClientPropertiesRequest":{ "type":"structure", "required":["ResourceIds"], @@ -2281,6 +2485,69 @@ "SHARED" ] }, + "ImportClientBrandingRequest":{ + "type":"structure", + "required":["ResourceId"], + "members":{ + "ResourceId":{ + "shape":"DirectoryId", + "documentation":"<p>The directory identifier of the WorkSpace for which you want to import client branding.</p>" + }, + "DeviceTypeWindows":{ + "shape":"DefaultImportClientBrandingAttributes", + "documentation":"<p>The branding information to import for Windows devices.</p>" + }, + "DeviceTypeOsx":{ + "shape":"DefaultImportClientBrandingAttributes", + "documentation":"<p>The branding information to import for macOS devices.</p>" + }, + "DeviceTypeAndroid":{ + "shape":"DefaultImportClientBrandingAttributes", + "documentation":"<p>The branding information to import for Android devices.</p>" + }, + "DeviceTypeIos":{ + "shape":"IosImportClientBrandingAttributes", + "documentation":"<p>The branding information to import for iOS devices.</p>" + }, + "DeviceTypeLinux":{ + "shape":"DefaultImportClientBrandingAttributes", + "documentation":"<p>The branding information to import for Linux devices.</p>" + }, + "DeviceTypeWeb":{ + "shape":"DefaultImportClientBrandingAttributes", + "documentation":"<p>The branding information to import for web access.</p>" + } + } + }, + "ImportClientBrandingResult":{ + "type":"structure", + "members":{ + "DeviceTypeWindows":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information configured for Windows devices.</p>" + }, + "DeviceTypeOsx":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information configured for macOS devices.</p>" + }, + "DeviceTypeAndroid":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information configured for Android devices.</p>" + }, + "DeviceTypeIos":{ + "shape":"IosClientBrandingAttributes", + "documentation":"<p>The branding information configured for iOS devices.</p>" + }, + "DeviceTypeLinux":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information configured for Linux devices.</p>" + }, + "DeviceTypeWeb":{ + "shape":"DefaultClientBrandingAttributes", + "documentation":"<p>The branding information configured for web access.</p>" + } + } + }, "ImportWorkspaceImageRequest":{ "type":"structure", "required":[ @@ -2344,6 +2611,89 @@ "documentation":"<p>The state of the resource is not valid for this operation.</p>", "exception":true }, + "Ios2XLogo":{ + "type":"blob", + "max":1770000, + "min":1 + }, + "Ios3XLogo":{ + "type":"blob", + "max":1770000, + "min":1 + }, + "IosClientBrandingAttributes":{ + "type":"structure", + "members":{ + "LogoUrl":{ + "shape":"ClientUrl", + "documentation":"<p>The logo. This is the link where users can download the logo image. This is the standard-resolution display that has a 1:1 pixel density (or @1x), where one pixel is equal to one point.</p>" + }, + "Logo2xUrl":{ + "shape":"ClientUrl", + "documentation":"<p>The @2x version of the logo. This is the higher resolution display that offers a scale factor of 2.0 (or @2x).</p> <note> <p> For more information about iOS image size and resolution, see <a href=\"https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/image-size-and-resolution/\">Image Size and Resolution </a> in the <i>Apple Human Interface Guidelines</i>.</p> </note>" + }, + "Logo3xUrl":{ + "shape":"ClientUrl", + "documentation":"<p>The @3x version of the logo. This is the higher resolution display that offers a scale factor of 3.0 (or @3x).</p> <note> <p> For more information about iOS image size and resolution, see <a href=\"https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/image-size-and-resolution/\">Image Size and Resolution </a> in the <i>Apple Human Interface Guidelines</i>.</p> </note>" + }, + "SupportEmail":{ + "shape":"ClientEmail", + "documentation":"<p>The support email. The company's customer support email address.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default email is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "SupportLink":{ + "shape":"ClientUrl", + "documentation":"<p>The support link. The link for the company's customer support page for their WorkSpace.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default support link is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "ForgotPasswordLink":{ + "shape":"ClientUrl", + "documentation":"<p>The forgotten password link. This is the web address that users can go to if they forget the password for their WorkSpace.</p>" + }, + "LoginMessage":{ + "shape":"LoginMessage", + "documentation":"<p>The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is <code>en_US</code>. </p>" + } + }, + "documentation":"<p>The client branding attributes for iOS device types. These attributes are displayed on the iOS client login screen only.</p> <important> <p>Client branding attributes are public facing. Ensure you do not include sensitive information.</p> </important>" + }, + "IosImportClientBrandingAttributes":{ + "type":"structure", + "members":{ + "Logo":{ + "shape":"IosLogo", + "documentation":"<p>The logo. This is the link where users can download the logo image. This is the standard-resolution display that has a 1:1 pixel density (or @1x), where one pixel is equal to one point.</p>" + }, + "Logo2x":{ + "shape":"Ios2XLogo", + "documentation":"<p>The @2x version of the logo. This is the higher resolution display that offers a scale factor of 2.0 (or @2x).</p> <note> <p> For more information about iOS image size and resolution, see <a href=\"https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/image-size-and-resolution/\">Image Size and Resolution </a> in the <i>Apple Human Interface Guidelines</i>.</p> </note>" + }, + "Logo3x":{ + "shape":"Ios3XLogo", + "documentation":"<p>The @3x version of the logo. This is the higher resolution display that offers a scale factor of 3.0 (or @3x).</p> <note> <p> For more information about iOS image size and resolution, see <a href=\"https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/image-size-and-resolution/\">Image Size and Resolution </a> in the <i>Apple Human Interface Guidelines</i>.</p> </note>" + }, + "SupportEmail":{ + "shape":"ClientEmail", + "documentation":"<p>The support email. The company's customer support email address.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default email is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "SupportLink":{ + "shape":"ClientUrl", + "documentation":"<p>The support link. The link for the company's customer support page for their WorkSpace.</p> <note> <ul> <li> <p>In each platform type, the <code>SupportEmail</code> and <code>SupportLink</code> parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.</p> </li> <li> <p>The default support link is <code>workspaces-feedback@amazon.com</code>.</p> </li> </ul> </note>" + }, + "ForgotPasswordLink":{ + "shape":"ClientUrl", + "documentation":"<p>The forgotten password link. This is the web address that users can go to if they forget the password for their WorkSpace.</p>" + }, + "LoginMessage":{ + "shape":"LoginMessage", + "documentation":"<p>The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is <code>en_US</code>. </p>" + } + }, + "documentation":"<p>The client branding attributes to import for iOS device types. These attributes are displayed on the iOS client login screen.</p> <important> <p>Client branding attributes are public facing. Ensure you do not include sensitive information.</p> </important>" + }, + "IosLogo":{ + "type":"blob", + "max":447000, + "min":1 + }, "IpAddress":{"type":"string"}, "IpGroupDesc":{"type":"string"}, "IpGroupId":{ @@ -2415,6 +2765,11 @@ } } }, + "LoginMessage":{ + "type":"map", + "key":{"shape":"ClientLocale"}, + "value":{"shape":"ClientLoginMessage"} + }, "ManagementCidrRangeConstraint":{ "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])(\\/(3[0-2]|[1-2][0-9]|[0-9]))$" @@ -3869,5 +4224,5 @@ "member":{"shape":"WorkspacesIpGroup"} } }, - "documentation":"<fullname>Amazon WorkSpaces Service</fullname> <p>Amazon WorkSpaces enables you to provision virtual, cloud-based Microsoft Windows and Amazon Linux desktops for your users.</p>" + "documentation":"<fullname>Amazon WorkSpaces Service</fullname> <p>Amazon WorkSpaces enables you to provision virtual, cloud-based Microsoft Windows or Amazon Linux desktops for your users, known as <i>WorkSpaces</i>. WorkSpaces eliminates the need to procure and deploy hardware or install complex software. You can quickly add or remove users as your needs change. Users can access their virtual desktops from multiple devices or web browsers.</p> <p>This API Reference provides detailed information about the actions, data types, parameters, and errors of the WorkSpaces service. For more information about the supported Amazon Web Services Regions, endpoints, and service quotas of the Amazon WorkSpaces service, see <a href=\"https://docs.aws.amazon.com/general/latest/gr/wsp.html\">WorkSpaces endpoints and quotas</a> in the <i>Amazon Web Services General Reference</i>.</p> <p>You can also manage your WorkSpaces resources using the WorkSpaces console, Command Line Interface (CLI), and SDKs. For more information about administering WorkSpaces, see the <a href=\"https://docs.aws.amazon.com/workspaces/latest/adminguide/\">Amazon WorkSpaces Administration Guide</a>. For more information about using the Amazon WorkSpaces client application or web browser to access provisioned WorkSpaces, see the <a href=\"https://docs.aws.amazon.com/workspaces/latest/userguide/\">Amazon WorkSpaces User Guide</a>. For more information about using the CLI to manage your WorkSpaces resources, see the <a href=\"https://docs.aws.amazon.com/cli/latest/reference/workspaces/index.html\">WorkSpaces section of the CLI Reference</a>.</p>" } |