feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,21 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/Region.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace OrganizationsEndpoint
{
AWS_ORGANIZATIONS_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false);
} // namespace OrganizationsEndpoint
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,23 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/client/AWSErrorMarshaller.h>
namespace Aws
{
namespace Client
{
class AWS_ORGANIZATIONS_API OrganizationsErrorMarshaller : public Aws::Client::JsonErrorMarshaller
{
public:
Aws::Client::AWSError<Aws::Client::CoreErrors> FindErrorByName(const char* exceptionName) const override;
};
} // namespace Client
} // namespace Aws

View File

@@ -0,0 +1,114 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/core/client/AWSError.h>
#include <aws/core/client/CoreErrors.h>
#include <aws/organizations/Organizations_EXPORTS.h>
namespace Aws
{
namespace Organizations
{
enum class OrganizationsErrors
{
//From Core//
//////////////////////////////////////////////////////////////////////////////////////////
INCOMPLETE_SIGNATURE = 0,
INTERNAL_FAILURE = 1,
INVALID_ACTION = 2,
INVALID_CLIENT_TOKEN_ID = 3,
INVALID_PARAMETER_COMBINATION = 4,
INVALID_QUERY_PARAMETER = 5,
INVALID_PARAMETER_VALUE = 6,
MISSING_ACTION = 7, // SDK should never allow
MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow
MISSING_PARAMETER = 9, // SDK should never allow
OPT_IN_REQUIRED = 10,
REQUEST_EXPIRED = 11,
SERVICE_UNAVAILABLE = 12,
THROTTLING = 13,
VALIDATION = 14,
ACCESS_DENIED = 15,
RESOURCE_NOT_FOUND = 16,
UNRECOGNIZED_CLIENT = 17,
MALFORMED_QUERY_STRING = 18,
SLOW_DOWN = 19,
REQUEST_TIME_TOO_SKEWED = 20,
INVALID_SIGNATURE = 21,
SIGNATURE_DOES_NOT_MATCH = 22,
INVALID_ACCESS_KEY_ID = 23,
REQUEST_TIMEOUT = 24,
NETWORK_CONNECTION = 99,
UNKNOWN = 100,
///////////////////////////////////////////////////////////////////////////////////////////
ACCESS_DENIED_FOR_DEPENDENCY= static_cast<int>(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1,
ACCOUNT_ALREADY_REGISTERED,
ACCOUNT_NOT_FOUND,
ACCOUNT_NOT_REGISTERED,
ACCOUNT_OWNER_NOT_VERIFIED,
ALREADY_IN_ORGANIZATION,
A_W_S_ORGANIZATIONS_NOT_IN_USE,
CHILD_NOT_FOUND,
CONCURRENT_MODIFICATION,
CONSTRAINT_VIOLATION,
CREATE_ACCOUNT_STATUS_NOT_FOUND,
DESTINATION_PARENT_NOT_FOUND,
DUPLICATE_ACCOUNT,
DUPLICATE_HANDSHAKE,
DUPLICATE_ORGANIZATIONAL_UNIT,
DUPLICATE_POLICY,
DUPLICATE_POLICY_ATTACHMENT,
EFFECTIVE_POLICY_NOT_FOUND,
FINALIZING_ORGANIZATION,
HANDSHAKE_ALREADY_IN_STATE,
HANDSHAKE_CONSTRAINT_VIOLATION,
HANDSHAKE_NOT_FOUND,
INVALID_HANDSHAKE_TRANSITION,
INVALID_INPUT,
MALFORMED_POLICY_DOCUMENT,
MASTER_CANNOT_LEAVE_ORGANIZATION,
ORGANIZATIONAL_UNIT_NOT_EMPTY,
ORGANIZATIONAL_UNIT_NOT_FOUND,
ORGANIZATION_NOT_EMPTY,
PARENT_NOT_FOUND,
POLICY_CHANGES_IN_PROGRESS,
POLICY_IN_USE,
POLICY_NOT_ATTACHED,
POLICY_NOT_FOUND,
POLICY_TYPE_ALREADY_ENABLED,
POLICY_TYPE_NOT_AVAILABLE_FOR_ORGANIZATION,
POLICY_TYPE_NOT_ENABLED,
ROOT_NOT_FOUND,
SERVICE,
SOURCE_PARENT_NOT_FOUND,
TARGET_NOT_FOUND,
TOO_MANY_REQUESTS,
UNSUPPORTED_A_P_I_ENDPOINT
};
class AWS_ORGANIZATIONS_API OrganizationsError : public Aws::Client::AWSError<OrganizationsErrors>
{
public:
OrganizationsError() {}
OrganizationsError(const Aws::Client::AWSError<Aws::Client::CoreErrors>& rhs) : Aws::Client::AWSError<OrganizationsErrors>(rhs) {}
OrganizationsError(Aws::Client::AWSError<Aws::Client::CoreErrors>&& rhs) : Aws::Client::AWSError<OrganizationsErrors>(rhs) {}
OrganizationsError(const Aws::Client::AWSError<OrganizationsErrors>& rhs) : Aws::Client::AWSError<OrganizationsErrors>(rhs) {}
OrganizationsError(Aws::Client::AWSError<OrganizationsErrors>&& rhs) : Aws::Client::AWSError<OrganizationsErrors>(rhs) {}
template <typename T>
T GetModeledError();
};
namespace OrganizationsErrorMapper
{
AWS_ORGANIZATIONS_API Aws::Client::AWSError<Aws::Client::CoreErrors> GetErrorForName(const char* errorName);
}
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,42 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/AmazonSerializableWebServiceRequest.h>
#include <aws/core/utils/UnreferencedParam.h>
#include <aws/core/http/HttpRequest.h>
namespace Aws
{
namespace Organizations
{
class AWS_ORGANIZATIONS_API OrganizationsRequest : public Aws::AmazonSerializableWebServiceRequest
{
public:
virtual ~OrganizationsRequest () {}
void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); }
inline Aws::Http::HeaderValueCollection GetHeaders() const override
{
auto headers = GetRequestSpecificHeaders();
if(headers.size() == 0 || (headers.size() > 0 && headers.count(Aws::Http::CONTENT_TYPE_HEADER) == 0))
{
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::CONTENT_TYPE_HEADER, Aws::AMZN_JSON_CONTENT_TYPE_1_1 ));
}
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::API_VERSION_HEADER, "2016-11-28"));
return headers;
}
protected:
virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); }
};
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,29 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#ifdef _MSC_VER
//disable windows complaining about max template size.
#pragma warning (disable : 4503)
#endif // _MSC_VER
#if defined (USE_WINDOWS_DLL_SEMANTICS) || defined (_WIN32)
#ifdef _MSC_VER
#pragma warning(disable : 4251)
#endif // _MSC_VER
#ifdef USE_IMPORT_EXPORT
#ifdef AWS_ORGANIZATIONS_EXPORTS
#define AWS_ORGANIZATIONS_API __declspec(dllexport)
#else
#define AWS_ORGANIZATIONS_API __declspec(dllimport)
#endif /* AWS_ORGANIZATIONS_EXPORTS */
#else
#define AWS_ORGANIZATIONS_API
#endif // USE_IMPORT_EXPORT
#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)
#define AWS_ORGANIZATIONS_API
#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)

View File

@@ -0,0 +1,109 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API AcceptHandshakeRequest : public OrganizationsRequest
{
public:
AcceptHandshakeRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "AcceptHandshake"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline const Aws::String& GetHandshakeId() const{ return m_handshakeId; }
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline bool HandshakeIdHasBeenSet() const { return m_handshakeIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline void SetHandshakeId(const Aws::String& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = value; }
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline void SetHandshakeId(Aws::String&& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = std::move(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline void SetHandshakeId(const char* value) { m_handshakeIdHasBeenSet = true; m_handshakeId.assign(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline AcceptHandshakeRequest& WithHandshakeId(const Aws::String& value) { SetHandshakeId(value); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline AcceptHandshakeRequest& WithHandshakeId(Aws::String&& value) { SetHandshakeId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want to accept.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake
* ID string requires "h-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline AcceptHandshakeRequest& WithHandshakeId(const char* value) { SetHandshakeId(value); return *this;}
private:
Aws::String m_handshakeId;
bool m_handshakeIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API AcceptHandshakeResult
{
public:
AcceptHandshakeResult();
AcceptHandshakeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AcceptHandshakeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the accepted handshake.</p>
*/
inline const Handshake& GetHandshake() const{ return m_handshake; }
/**
* <p>A structure that contains details about the accepted handshake.</p>
*/
inline void SetHandshake(const Handshake& value) { m_handshake = value; }
/**
* <p>A structure that contains details about the accepted handshake.</p>
*/
inline void SetHandshake(Handshake&& value) { m_handshake = std::move(value); }
/**
* <p>A structure that contains details about the accepted handshake.</p>
*/
inline AcceptHandshakeResult& WithHandshake(const Handshake& value) { SetHandshake(value); return *this;}
/**
* <p>A structure that contains details about the accepted handshake.</p>
*/
inline AcceptHandshakeResult& WithHandshake(Handshake&& value) { SetHandshake(std::move(value)); return *this;}
private:
Handshake m_handshake;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,99 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/AccessDeniedForDependencyExceptionReason.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>The operation that you attempted requires you to have the
* <code>iam:CreateServiceLinkedRole</code> for
* <code>organizations.amazonaws.com</code> permission so that AWS Organizations
* can create the required service-linked role. You don't have that
* permission.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/AccessDeniedForDependencyException">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API AccessDeniedForDependencyException
{
public:
AccessDeniedForDependencyException();
AccessDeniedForDependencyException(Aws::Utils::Json::JsonView jsonValue);
AccessDeniedForDependencyException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
inline const Aws::String& GetMessage() const{ return m_message; }
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
inline AccessDeniedForDependencyException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
inline AccessDeniedForDependencyException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
inline AccessDeniedForDependencyException& WithMessage(const char* value) { SetMessage(value); return *this;}
inline const AccessDeniedForDependencyExceptionReason& GetReason() const{ return m_reason; }
inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
inline void SetReason(const AccessDeniedForDependencyExceptionReason& value) { m_reasonHasBeenSet = true; m_reason = value; }
inline void SetReason(AccessDeniedForDependencyExceptionReason&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); }
inline AccessDeniedForDependencyException& WithReason(const AccessDeniedForDependencyExceptionReason& value) { SetReason(value); return *this;}
inline AccessDeniedForDependencyException& WithReason(AccessDeniedForDependencyExceptionReason&& value) { SetReason(std::move(value)); return *this;}
private:
Aws::String m_message;
bool m_messageHasBeenSet;
AccessDeniedForDependencyExceptionReason m_reason;
bool m_reasonHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,30 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class AccessDeniedForDependencyExceptionReason
{
NOT_SET,
ACCESS_DENIED_DURING_CREATE_SERVICE_LINKED_ROLE
};
namespace AccessDeniedForDependencyExceptionReasonMapper
{
AWS_ORGANIZATIONS_API AccessDeniedForDependencyExceptionReason GetAccessDeniedForDependencyExceptionReasonForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForAccessDeniedForDependencyExceptionReason(AccessDeniedForDependencyExceptionReason value);
} // namespace AccessDeniedForDependencyExceptionReasonMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,414 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/AccountStatus.h>
#include <aws/organizations/model/AccountJoinedMethod.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains information about an AWS account that is a member of an
* organization.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Account">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API Account
{
public:
Account();
Account(Aws::Utils::Json::JsonView jsonValue);
Account& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline Account& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline Account& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline Account& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline Account& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline Account& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the account.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline Account& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline const Aws::String& GetEmail() const{ return m_email; }
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline void SetEmail(const Aws::String& value) { m_emailHasBeenSet = true; m_email = value; }
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline void SetEmail(Aws::String&& value) { m_emailHasBeenSet = true; m_email = std::move(value); }
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline void SetEmail(const char* value) { m_emailHasBeenSet = true; m_email.assign(value); }
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline Account& WithEmail(const Aws::String& value) { SetEmail(value); return *this;}
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline Account& WithEmail(Aws::String&& value) { SetEmail(std::move(value)); return *this;}
/**
* <p>The email address associated with the AWS account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for this parameter is a
* string of characters that represents a standard internet email address.</p>
*/
inline Account& WithEmail(const char* value) { SetEmail(value); return *this;}
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline Account& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline Account& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The friendly name of the account.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline Account& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The status of the account in the organization.</p>
*/
inline const AccountStatus& GetStatus() const{ return m_status; }
/**
* <p>The status of the account in the organization.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>The status of the account in the organization.</p>
*/
inline void SetStatus(const AccountStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>The status of the account in the organization.</p>
*/
inline void SetStatus(AccountStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>The status of the account in the organization.</p>
*/
inline Account& WithStatus(const AccountStatus& value) { SetStatus(value); return *this;}
/**
* <p>The status of the account in the organization.</p>
*/
inline Account& WithStatus(AccountStatus&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The method by which the account joined the organization.</p>
*/
inline const AccountJoinedMethod& GetJoinedMethod() const{ return m_joinedMethod; }
/**
* <p>The method by which the account joined the organization.</p>
*/
inline bool JoinedMethodHasBeenSet() const { return m_joinedMethodHasBeenSet; }
/**
* <p>The method by which the account joined the organization.</p>
*/
inline void SetJoinedMethod(const AccountJoinedMethod& value) { m_joinedMethodHasBeenSet = true; m_joinedMethod = value; }
/**
* <p>The method by which the account joined the organization.</p>
*/
inline void SetJoinedMethod(AccountJoinedMethod&& value) { m_joinedMethodHasBeenSet = true; m_joinedMethod = std::move(value); }
/**
* <p>The method by which the account joined the organization.</p>
*/
inline Account& WithJoinedMethod(const AccountJoinedMethod& value) { SetJoinedMethod(value); return *this;}
/**
* <p>The method by which the account joined the organization.</p>
*/
inline Account& WithJoinedMethod(AccountJoinedMethod&& value) { SetJoinedMethod(std::move(value)); return *this;}
/**
* <p>The date the account became a part of the organization.</p>
*/
inline const Aws::Utils::DateTime& GetJoinedTimestamp() const{ return m_joinedTimestamp; }
/**
* <p>The date the account became a part of the organization.</p>
*/
inline bool JoinedTimestampHasBeenSet() const { return m_joinedTimestampHasBeenSet; }
/**
* <p>The date the account became a part of the organization.</p>
*/
inline void SetJoinedTimestamp(const Aws::Utils::DateTime& value) { m_joinedTimestampHasBeenSet = true; m_joinedTimestamp = value; }
/**
* <p>The date the account became a part of the organization.</p>
*/
inline void SetJoinedTimestamp(Aws::Utils::DateTime&& value) { m_joinedTimestampHasBeenSet = true; m_joinedTimestamp = std::move(value); }
/**
* <p>The date the account became a part of the organization.</p>
*/
inline Account& WithJoinedTimestamp(const Aws::Utils::DateTime& value) { SetJoinedTimestamp(value); return *this;}
/**
* <p>The date the account became a part of the organization.</p>
*/
inline Account& WithJoinedTimestamp(Aws::Utils::DateTime&& value) { SetJoinedTimestamp(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::String m_email;
bool m_emailHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
AccountStatus m_status;
bool m_statusHasBeenSet;
AccountJoinedMethod m_joinedMethod;
bool m_joinedMethodHasBeenSet;
Aws::Utils::DateTime m_joinedTimestamp;
bool m_joinedTimestampHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,31 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class AccountJoinedMethod
{
NOT_SET,
INVITED,
CREATED
};
namespace AccountJoinedMethodMapper
{
AWS_ORGANIZATIONS_API AccountJoinedMethod GetAccountJoinedMethodForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForAccountJoinedMethod(AccountJoinedMethod value);
} // namespace AccountJoinedMethodMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,31 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class AccountStatus
{
NOT_SET,
ACTIVE,
SUSPENDED
};
namespace AccountStatusMapper
{
AWS_ORGANIZATIONS_API AccountStatus GetAccountStatusForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForAccountStatus(AccountStatus value);
} // namespace AccountStatusMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,33 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class ActionType
{
NOT_SET,
INVITE,
ENABLE_ALL_FEATURES,
APPROVE_ALL_FEATURES,
ADD_ORGANIZATIONS_SERVICE_LINKED_ROLE
};
namespace ActionTypeMapper
{
AWS_ORGANIZATIONS_API ActionType GetActionTypeForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForActionType(ActionType value);
} // namespace ActionTypeMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,241 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API AttachPolicyRequest : public OrganizationsRequest
{
public:
AttachPolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "AttachPolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline const Aws::String& GetPolicyId() const{ return m_policyId; }
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline bool PolicyIdHasBeenSet() const { return m_policyIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const Aws::String& value) { m_policyIdHasBeenSet = true; m_policyId = value; }
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(Aws::String&& value) { m_policyIdHasBeenSet = true; m_policyId = std::move(value); }
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const char* value) { m_policyIdHasBeenSet = true; m_policyId.assign(value); }
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline AttachPolicyRequest& WithPolicyId(const Aws::String& value) { SetPolicyId(value); return *this;}
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline AttachPolicyRequest& WithPolicyId(Aws::String&& value) { SetPolicyId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the policy that you want to attach to the
* target. You can get the ID for the policy by calling the <a>ListPolicies</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline AttachPolicyRequest& WithPolicyId(const char* value) { SetPolicyId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline const Aws::String& GetTargetId() const{ return m_targetId; }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline bool TargetIdHasBeenSet() const { return m_targetIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetTargetId(const Aws::String& value) { m_targetIdHasBeenSet = true; m_targetId = value; }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetTargetId(Aws::String&& value) { m_targetIdHasBeenSet = true; m_targetId = std::move(value); }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetTargetId(const char* value) { m_targetIdHasBeenSet = true; m_targetId.assign(value); }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline AttachPolicyRequest& WithTargetId(const Aws::String& value) { SetTargetId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline AttachPolicyRequest& WithTargetId(Aws::String&& value) { SetTargetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* attach the policy to. You can get the ID by calling the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline AttachPolicyRequest& WithTargetId(const char* value) { SetTargetId(value); return *this;}
private:
Aws::String m_policyId;
bool m_policyIdHasBeenSet;
Aws::String m_targetId;
bool m_targetIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,109 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API CancelHandshakeRequest : public OrganizationsRequest
{
public:
CancelHandshakeRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CancelHandshake"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline const Aws::String& GetHandshakeId() const{ return m_handshakeId; }
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline bool HandshakeIdHasBeenSet() const { return m_handshakeIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(const Aws::String& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = value; }
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(Aws::String&& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = std::move(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(const char* value) { m_handshakeIdHasBeenSet = true; m_handshakeId.assign(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline CancelHandshakeRequest& WithHandshakeId(const Aws::String& value) { SetHandshakeId(value); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline CancelHandshakeRequest& WithHandshakeId(Aws::String&& value) { SetHandshakeId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want to cancel. You can
* get the ID from the <a>ListHandshakesForOrganization</a> operation.</p> <p>The
* <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID
* string requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline CancelHandshakeRequest& WithHandshakeId(const char* value) { SetHandshakeId(value); return *this;}
private:
Aws::String m_handshakeId;
bool m_handshakeIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API CancelHandshakeResult
{
public:
CancelHandshakeResult();
CancelHandshakeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CancelHandshakeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the handshake that you canceled.</p>
*/
inline const Handshake& GetHandshake() const{ return m_handshake; }
/**
* <p>A structure that contains details about the handshake that you canceled.</p>
*/
inline void SetHandshake(const Handshake& value) { m_handshake = value; }
/**
* <p>A structure that contains details about the handshake that you canceled.</p>
*/
inline void SetHandshake(Handshake&& value) { m_handshake = std::move(value); }
/**
* <p>A structure that contains details about the handshake that you canceled.</p>
*/
inline CancelHandshakeResult& WithHandshake(const Handshake& value) { SetHandshake(value); return *this;}
/**
* <p>A structure that contains details about the handshake that you canceled.</p>
*/
inline CancelHandshakeResult& WithHandshake(Handshake&& value) { SetHandshake(std::move(value)); return *this;}
private:
Handshake m_handshake;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,172 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/ChildType.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains a list of child entities, either OUs or accounts.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Child">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API Child
{
public:
Child();
Child(Aws::Utils::Json::JsonView jsonValue);
Child& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline Child& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline Child& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of this child entity.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a child ID string
* requires one of the following:</p> <ul> <li> <p>Account: A string that consists
* of exactly 12 digits.</p> </li> <li> <p>Organizational unit (OU): A string that
* begins with "ou-" followed by from 4 to 32 lower-case letters or digits (the ID
* of the root that contains the OU). This string is followed by a second "-" dash
* and from 8 to 32 additional lower-case letters or digits.</p> </li> </ul>
*/
inline Child& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The type of this child entity.</p>
*/
inline const ChildType& GetType() const{ return m_type; }
/**
* <p>The type of this child entity.</p>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>The type of this child entity.</p>
*/
inline void SetType(const ChildType& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>The type of this child entity.</p>
*/
inline void SetType(ChildType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>The type of this child entity.</p>
*/
inline Child& WithType(const ChildType& value) { SetType(value); return *this;}
/**
* <p>The type of this child entity.</p>
*/
inline Child& WithType(ChildType&& value) { SetType(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
ChildType m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,31 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class ChildType
{
NOT_SET,
ACCOUNT,
ORGANIZATIONAL_UNIT
};
namespace ChildTypeMapper
{
AWS_ORGANIZATIONS_API ChildType GetChildTypeForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForChildType(ChildType value);
} // namespace ChildTypeMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,199 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/ConstraintViolationExceptionReason.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Performing this operation violates a minimum or maximum value limit. For
* example, attempting to remove the last service control policy (SCP) from an OU
* or root, inviting or creating too many accounts to the organization, or
* attaching too many policies to an account, OU, or root. This exception includes
* a reason that contains additional information about the violated limit:</p>
* <p>Some of the reasons in the following list might not be applicable to
* this specific API or operation.</p> <ul> <li>
* <p>ACCOUNT_CANNOT_LEAVE_ORGANIZAION: You attempted to remove the master account
* from the organization. You can't remove the master account. Instead, after you
* remove all member accounts, delete the organization itself.</p> </li> <li>
* <p>ACCOUNT_CANNOT_LEAVE_WITHOUT_EULA: You attempted to remove an account from
* the organization that doesn't yet have enough information to exist as a
* standalone account. This account requires you to first agree to the AWS Customer
* Agreement. Follow the steps at <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_remove.html#orgs_manage_accounts_remove-from-master">Removing
* a member account from your organization</a>in the <i>AWS Organizations User
* Guide.</i> </p> </li> <li> <p>ACCOUNT_CANNOT_LEAVE_WITHOUT_PHONE_VERIFICATION:
* You attempted to remove an account from the organization that doesn't yet have
* enough information to exist as a standalone account. This account requires you
* to first complete phone verification. Follow the steps at <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_remove.html#orgs_manage_accounts_remove-from-master">Removing
* a member account from your organization</a> in the <i>AWS Organizations User
* Guide.</i> </p> </li> <li> <p>ACCOUNT_CREATION_RATE_LIMIT_EXCEEDED: You
* attempted to exceed the number of accounts that you can create in one day.</p>
* </li> <li> <p>ACCOUNT_NUMBER_LIMIT_EXCEEDED: You attempted to exceed the limit
* on the number of accounts in an organization. If you need more accounts, contact
* <a href="https://console.aws.amazon.com/support/home#/">AWS Support</a> to
* request an increase in your limit. </p> <p>Or the number of invitations that you
* tried to send would cause you to exceed the limit of accounts in your
* organization. Send fewer invitations or contact AWS Support to request an
* increase in the number of accounts.</p> <p>Deleted and closed accounts
* still count toward your limit.</p> <p>If you get this
* exception when running a command immediately after creating the organization,
* wait one hour and try again. After an hour, if the command continues to fail
* with this error, contact <a
* href="https://console.aws.amazon.com/support/home#/">AWS Support</a>.</p>
* </li> <li> <p>CANNOT_REGISTER_MASTER_AS_DELEGATED_ADMINISTRATOR:
* You attempted to register the master account of the organization as a delegated
* administrator for an AWS service integrated with Organizations. You can
* designate only a member account as a delegated administrator.</p> </li> <li>
* <p>CANNOT_REMOVE_DELEGATED_ADMINISTRATOR_FROM_ORG: You attempted to remove an
* account that is registered as a delegated administrator for a service integrated
* with your organization. To complete this operation, you must first deregister
* this account as a delegated administrator. </p> </li> <li>
* <p>CREATE_ORGANIZATION_IN_BILLING_MODE_UNSUPPORTED_REGION: To create an
* organization in the specified region, you must enable all features mode.</p>
* </li> <li> <p>DELEGATED_ADMINISTRATOR_EXISTS_FOR_THIS_SERVICE: You attempted to
* register an AWS account as a delegated administrator for an AWS service that
* already has a delegated administrator. To complete this operation, you must
* first deregister any existing delegated administrators for this service.</p>
* </li> <li> <p>EMAIL_VERIFICATION_CODE_EXPIRED: The email verification code is
* only valid for a limited period of time. You must resubmit the request and
* generate a new verfication code.</p> </li> <li>
* <p>HANDSHAKE_RATE_LIMIT_EXCEEDED: You attempted to exceed the number of
* handshakes that you can send in one day.</p> </li> <li>
* <p>MASTER_ACCOUNT_ADDRESS_DOES_NOT_MATCH_MARKETPLACE: To create an account in
* this organization, you first must migrate the organization's master account to
* the marketplace that corresponds to the master account's address. For example,
* accounts with India addresses must be associated with the AISPL marketplace. All
* accounts in an organization must be associated with the same marketplace.</p>
* </li> <li> <p>MASTER_ACCOUNT_MISSING_BUSINESS_LICENSE: Applies only to the AWS
* Regions in China. To create an organization, the master must have an valid
* business license. For more information, contact customer support.</p> </li> <li>
* <p>MASTER_ACCOUNT_MISSING_CONTACT_INFO: To complete this operation, you must
* first provide a valid contact address and phone number for the master account.
* Then try the operation again.</p> </li> <li>
* <p>MASTER_ACCOUNT_NOT_GOVCLOUD_ENABLED: To complete this operation, the master
* account must have an associated account in the AWS GovCloud (US-West) Region.
* For more information, see <a
* href="http://docs.aws.amazon.com/govcloud-us/latest/UserGuide/govcloud-organizations.html">AWS
* Organizations</a> in the <i>AWS GovCloud User Guide.</i> </p> </li> <li>
* <p>MASTER_ACCOUNT_PAYMENT_INSTRUMENT_REQUIRED: To create an organization with
* this master account, you first must associate a valid payment instrument, such
* as a credit card, with the account. Follow the steps at <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_remove.html#leave-without-all-info">To
* leave an organization when all required account information has not yet been
* provided</a> in the <i>AWS Organizations User Guide.</i> </p> </li> <li>
* <p>MAX_DELEGATED_ADMINISTRATORS_FOR_SERVICE_LIMIT_EXCEEDED: You attempted to
* register more delegated administrators than allowed for the service principal.
* </p> </li> <li> <p>MAX_POLICY_TYPE_ATTACHMENT_LIMIT_EXCEEDED: You attempted to
* exceed the number of policies of a certain type that can be attached to an
* entity at one time.</p> </li> <li> <p>MAX_TAG_LIMIT_EXCEEDED: You have exceeded
* the number of tags allowed on this resource. </p> </li> <li>
* <p>MEMBER_ACCOUNT_PAYMENT_INSTRUMENT_REQUIRED: To complete this operation with
* this member account, you first must associate a valid payment instrument, such
* as a credit card, with the account. Follow the steps at <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_remove.html#leave-without-all-info">To
* leave an organization when all required account information has not yet been
* provided</a> in the <i>AWS Organizations User Guide.</i> </p> </li> <li>
* <p>MIN_POLICY_TYPE_ATTACHMENT_LIMIT_EXCEEDED: You attempted to detach a policy
* from an entity that would cause the entity to have fewer than the minimum number
* of policies of a certain type required.</p> </li> <li>
* <p>ORGANIZATION_NOT_IN_ALL_FEATURES_MODE: You attempted to perform an operation
* that requires the organization to be configured to support all features. An
* organization that supports only consolidated billing features can't perform this
* operation.</p> </li> <li> <p>OU_DEPTH_LIMIT_EXCEEDED: You attempted to create an
* OU tree that is too many levels deep.</p> </li> <li>
* <p>OU_NUMBER_LIMIT_EXCEEDED: You attempted to exceed the number of OUs that you
* can have in an organization.</p> </li> <li> <p>POLICY_CONTENT_LIMIT_EXCEEDED:
* You attempted to create a policy that is larger than the maximum size.</p> </li>
* <li> <p>POLICY_NUMBER_LIMIT_EXCEEDED: You attempted to exceed the number of
* policies that you can have in an organization.</p> </li> <li>
* <p>TAG_POLICY_VIOLATION: You attempted to create or update a resource with tags
* that are not compliant with the tag policy requirements for this account.</p>
* </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ConstraintViolationException">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API ConstraintViolationException
{
public:
ConstraintViolationException();
ConstraintViolationException(Aws::Utils::Json::JsonView jsonValue);
ConstraintViolationException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
inline const Aws::String& GetMessage() const{ return m_message; }
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
inline ConstraintViolationException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
inline ConstraintViolationException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
inline ConstraintViolationException& WithMessage(const char* value) { SetMessage(value); return *this;}
inline const ConstraintViolationExceptionReason& GetReason() const{ return m_reason; }
inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
inline void SetReason(const ConstraintViolationExceptionReason& value) { m_reasonHasBeenSet = true; m_reason = value; }
inline void SetReason(ConstraintViolationExceptionReason&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); }
inline ConstraintViolationException& WithReason(const ConstraintViolationExceptionReason& value) { SetReason(value); return *this;}
inline ConstraintViolationException& WithReason(ConstraintViolationExceptionReason&& value) { SetReason(std::move(value)); return *this;}
private:
Aws::String m_message;
bool m_messageHasBeenSet;
ConstraintViolationExceptionReason m_reason;
bool m_reasonHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,57 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class ConstraintViolationExceptionReason
{
NOT_SET,
ACCOUNT_NUMBER_LIMIT_EXCEEDED,
HANDSHAKE_RATE_LIMIT_EXCEEDED,
OU_NUMBER_LIMIT_EXCEEDED,
OU_DEPTH_LIMIT_EXCEEDED,
POLICY_NUMBER_LIMIT_EXCEEDED,
POLICY_CONTENT_LIMIT_EXCEEDED,
MAX_POLICY_TYPE_ATTACHMENT_LIMIT_EXCEEDED,
MIN_POLICY_TYPE_ATTACHMENT_LIMIT_EXCEEDED,
ACCOUNT_CANNOT_LEAVE_ORGANIZATION,
ACCOUNT_CANNOT_LEAVE_WITHOUT_EULA,
ACCOUNT_CANNOT_LEAVE_WITHOUT_PHONE_VERIFICATION,
MASTER_ACCOUNT_PAYMENT_INSTRUMENT_REQUIRED,
MEMBER_ACCOUNT_PAYMENT_INSTRUMENT_REQUIRED,
ACCOUNT_CREATION_RATE_LIMIT_EXCEEDED,
MASTER_ACCOUNT_ADDRESS_DOES_NOT_MATCH_MARKETPLACE,
MASTER_ACCOUNT_MISSING_CONTACT_INFO,
MASTER_ACCOUNT_NOT_GOVCLOUD_ENABLED,
ORGANIZATION_NOT_IN_ALL_FEATURES_MODE,
CREATE_ORGANIZATION_IN_BILLING_MODE_UNSUPPORTED_REGION,
EMAIL_VERIFICATION_CODE_EXPIRED,
WAIT_PERIOD_ACTIVE,
MAX_TAG_LIMIT_EXCEEDED,
TAG_POLICY_VIOLATION,
MAX_DELEGATED_ADMINISTRATORS_FOR_SERVICE_LIMIT_EXCEEDED,
CANNOT_REGISTER_MASTER_AS_DELEGATED_ADMINISTRATOR,
CANNOT_REMOVE_DELEGATED_ADMINISTRATOR_FROM_ORG,
DELEGATED_ADMINISTRATOR_EXISTS_FOR_THIS_SERVICE,
MASTER_ACCOUNT_MISSING_BUSINESS_LICENSE
};
namespace ConstraintViolationExceptionReasonMapper
{
AWS_ORGANIZATIONS_API ConstraintViolationExceptionReason GetConstraintViolationExceptionReasonForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForConstraintViolationExceptionReason(ConstraintViolationExceptionReason value);
} // namespace ConstraintViolationExceptionReasonMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,38 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class CreateAccountFailureReason
{
NOT_SET,
ACCOUNT_LIMIT_EXCEEDED,
EMAIL_ALREADY_EXISTS,
INVALID_ADDRESS,
INVALID_EMAIL,
CONCURRENT_ACCOUNT_MODIFICATION,
INTERNAL_FAILURE,
GOVCLOUD_ACCOUNT_ALREADY_EXISTS,
MISSING_BUSINESS_VALIDATION,
MISSING_PAYMENT_INSTRUMENT
};
namespace CreateAccountFailureReasonMapper
{
AWS_ORGANIZATIONS_API CreateAccountFailureReason GetCreateAccountFailureReasonForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForCreateAccountFailureReason(CreateAccountFailureReason value);
} // namespace CreateAccountFailureReasonMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,424 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/IAMUserAccessToBilling.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API CreateAccountRequest : public OrganizationsRequest
{
public:
CreateAccountRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreateAccount"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline const Aws::String& GetEmail() const{ return m_email; }
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline void SetEmail(const Aws::String& value) { m_emailHasBeenSet = true; m_email = value; }
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline void SetEmail(Aws::String&& value) { m_emailHasBeenSet = true; m_email = std::move(value); }
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline void SetEmail(const char* value) { m_emailHasBeenSet = true; m_email.assign(value); }
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline CreateAccountRequest& WithEmail(const Aws::String& value) { SetEmail(value); return *this;}
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline CreateAccountRequest& WithEmail(Aws::String&& value) { SetEmail(std::move(value)); return *this;}
/**
* <p>The email address of the owner to assign to the new member account. This
* email address must not already be associated with another AWS account. You must
* use a valid email address to complete account creation. You can't access the
* root user of the account or remove an account that was created with an invalid
* email address.</p>
*/
inline CreateAccountRequest& WithEmail(const char* value) { SetEmail(value); return *this;}
/**
* <p>The friendly name of the member account.</p>
*/
inline const Aws::String& GetAccountName() const{ return m_accountName; }
/**
* <p>The friendly name of the member account.</p>
*/
inline bool AccountNameHasBeenSet() const { return m_accountNameHasBeenSet; }
/**
* <p>The friendly name of the member account.</p>
*/
inline void SetAccountName(const Aws::String& value) { m_accountNameHasBeenSet = true; m_accountName = value; }
/**
* <p>The friendly name of the member account.</p>
*/
inline void SetAccountName(Aws::String&& value) { m_accountNameHasBeenSet = true; m_accountName = std::move(value); }
/**
* <p>The friendly name of the member account.</p>
*/
inline void SetAccountName(const char* value) { m_accountNameHasBeenSet = true; m_accountName.assign(value); }
/**
* <p>The friendly name of the member account.</p>
*/
inline CreateAccountRequest& WithAccountName(const Aws::String& value) { SetAccountName(value); return *this;}
/**
* <p>The friendly name of the member account.</p>
*/
inline CreateAccountRequest& WithAccountName(Aws::String&& value) { SetAccountName(std::move(value)); return *this;}
/**
* <p>The friendly name of the member account.</p>
*/
inline CreateAccountRequest& WithAccountName(const char* value) { SetAccountName(value); return *this;}
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline const Aws::String& GetRoleName() const{ return m_roleName; }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline bool RoleNameHasBeenSet() const { return m_roleNameHasBeenSet; }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline void SetRoleName(const Aws::String& value) { m_roleNameHasBeenSet = true; m_roleName = value; }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline void SetRoleName(Aws::String&& value) { m_roleNameHasBeenSet = true; m_roleName = std::move(value); }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline void SetRoleName(const char* value) { m_roleNameHasBeenSet = true; m_roleName.assign(value); }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline CreateAccountRequest& WithRoleName(const Aws::String& value) { SetRoleName(value); return *this;}
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline CreateAccountRequest& WithRoleName(Aws::String&& value) { SetRoleName(std::move(value)); return *this;}
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member account. This role trusts the
* master account, allowing users in the master account to assume the role, as
* permitted by the master account administrator. The role has administrator
* permissions in the new member account.</p> <p>If you don't specify this
* parameter, the role name defaults to
* <code>OrganizationAccountAccessRole</code>.</p> <p>For more information about
* how to use this role to access the member account, see the following links:</p>
* <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> </p> </li> <li> <p>Steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide</i> </p> </li> </ul> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter. The pattern can include uppercase letters, lowercase
* letters, digits with no spaces, and any of the following characters: =,.@-</p>
*/
inline CreateAccountRequest& WithRoleName(const char* value) { SetRoleName(value); return *this;}
/**
* <p>If set to <code>ALLOW</code>, the new account enables IAM users to access
* account billing information <i>if</i> they have the required permissions. If set
* to <code>DENY</code>, only the root user of the new account can access account
* billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide</i>.</p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline const IAMUserAccessToBilling& GetIamUserAccessToBilling() const{ return m_iamUserAccessToBilling; }
/**
* <p>If set to <code>ALLOW</code>, the new account enables IAM users to access
* account billing information <i>if</i> they have the required permissions. If set
* to <code>DENY</code>, only the root user of the new account can access account
* billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide</i>.</p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline bool IamUserAccessToBillingHasBeenSet() const { return m_iamUserAccessToBillingHasBeenSet; }
/**
* <p>If set to <code>ALLOW</code>, the new account enables IAM users to access
* account billing information <i>if</i> they have the required permissions. If set
* to <code>DENY</code>, only the root user of the new account can access account
* billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide</i>.</p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline void SetIamUserAccessToBilling(const IAMUserAccessToBilling& value) { m_iamUserAccessToBillingHasBeenSet = true; m_iamUserAccessToBilling = value; }
/**
* <p>If set to <code>ALLOW</code>, the new account enables IAM users to access
* account billing information <i>if</i> they have the required permissions. If set
* to <code>DENY</code>, only the root user of the new account can access account
* billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide</i>.</p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline void SetIamUserAccessToBilling(IAMUserAccessToBilling&& value) { m_iamUserAccessToBillingHasBeenSet = true; m_iamUserAccessToBilling = std::move(value); }
/**
* <p>If set to <code>ALLOW</code>, the new account enables IAM users to access
* account billing information <i>if</i> they have the required permissions. If set
* to <code>DENY</code>, only the root user of the new account can access account
* billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide</i>.</p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline CreateAccountRequest& WithIamUserAccessToBilling(const IAMUserAccessToBilling& value) { SetIamUserAccessToBilling(value); return *this;}
/**
* <p>If set to <code>ALLOW</code>, the new account enables IAM users to access
* account billing information <i>if</i> they have the required permissions. If set
* to <code>DENY</code>, only the root user of the new account can access account
* billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide</i>.</p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline CreateAccountRequest& WithIamUserAccessToBilling(IAMUserAccessToBilling&& value) { SetIamUserAccessToBilling(std::move(value)); return *this;}
private:
Aws::String m_email;
bool m_emailHasBeenSet;
Aws::String m_accountName;
bool m_accountNameHasBeenSet;
Aws::String m_roleName;
bool m_roleNameHasBeenSet;
IAMUserAccessToBilling m_iamUserAccessToBilling;
bool m_iamUserAccessToBillingHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,112 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/CreateAccountStatus.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API CreateAccountResult
{
public:
CreateAccountResult();
CreateAccountResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateAccountResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the request to create an account.
* This response structure might not be fully populated when you first receive it
* because account creation is an asynchronous process. You can pass the returned
* <code>CreateAccountStatus</code> ID as a parameter to
* <a>DescribeCreateAccountStatus</a> to get status about the progress of the
* request at later times. You can also check the AWS CloudTrail log for the
* <code>CreateAccountResult</code> event. For more information, see <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_monitoring.html">Monitoring
* the Activity in Your Organization</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline const CreateAccountStatus& GetCreateAccountStatus() const{ return m_createAccountStatus; }
/**
* <p>A structure that contains details about the request to create an account.
* This response structure might not be fully populated when you first receive it
* because account creation is an asynchronous process. You can pass the returned
* <code>CreateAccountStatus</code> ID as a parameter to
* <a>DescribeCreateAccountStatus</a> to get status about the progress of the
* request at later times. You can also check the AWS CloudTrail log for the
* <code>CreateAccountResult</code> event. For more information, see <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_monitoring.html">Monitoring
* the Activity in Your Organization</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetCreateAccountStatus(const CreateAccountStatus& value) { m_createAccountStatus = value; }
/**
* <p>A structure that contains details about the request to create an account.
* This response structure might not be fully populated when you first receive it
* because account creation is an asynchronous process. You can pass the returned
* <code>CreateAccountStatus</code> ID as a parameter to
* <a>DescribeCreateAccountStatus</a> to get status about the progress of the
* request at later times. You can also check the AWS CloudTrail log for the
* <code>CreateAccountResult</code> event. For more information, see <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_monitoring.html">Monitoring
* the Activity in Your Organization</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetCreateAccountStatus(CreateAccountStatus&& value) { m_createAccountStatus = std::move(value); }
/**
* <p>A structure that contains details about the request to create an account.
* This response structure might not be fully populated when you first receive it
* because account creation is an asynchronous process. You can pass the returned
* <code>CreateAccountStatus</code> ID as a parameter to
* <a>DescribeCreateAccountStatus</a> to get status about the progress of the
* request at later times. You can also check the AWS CloudTrail log for the
* <code>CreateAccountResult</code> event. For more information, see <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_monitoring.html">Monitoring
* the Activity in Your Organization</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline CreateAccountResult& WithCreateAccountStatus(const CreateAccountStatus& value) { SetCreateAccountStatus(value); return *this;}
/**
* <p>A structure that contains details about the request to create an account.
* This response structure might not be fully populated when you first receive it
* because account creation is an asynchronous process. You can pass the returned
* <code>CreateAccountStatus</code> ID as a parameter to
* <a>DescribeCreateAccountStatus</a> to get status about the progress of the
* request at later times. You can also check the AWS CloudTrail log for the
* <code>CreateAccountResult</code> event. For more information, see <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_monitoring.html">Monitoring
* the Activity in Your Organization</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline CreateAccountResult& WithCreateAccountStatus(CreateAccountStatus&& value) { SetCreateAccountStatus(std::move(value)); return *this;}
private:
CreateAccountStatus m_createAccountStatus;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,32 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class CreateAccountState
{
NOT_SET,
IN_PROGRESS,
SUCCEEDED,
FAILED
};
namespace CreateAccountStateMapper
{
AWS_ORGANIZATIONS_API CreateAccountState GetCreateAccountStateForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForCreateAccountState(CreateAccountState value);
} // namespace CreateAccountStateMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,519 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/CreateAccountState.h>
#include <aws/core/utils/DateTime.h>
#include <aws/organizations/model/CreateAccountFailureReason.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains the status about a <a>CreateAccount</a> or
* <a>CreateGovCloudAccount</a> request to create an AWS account or an AWS GovCloud
* (US) account in an organization.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateAccountStatus">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API CreateAccountStatus
{
public:
CreateAccountStatus();
CreateAccountStatus(Aws::Utils::Json::JsonView jsonValue);
CreateAccountStatus& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline CreateAccountStatus& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline CreateAccountStatus& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) that references this request. You get this value
* from the response of the initial <a>CreateAccount</a> request to create the
* account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a create account request ID string requires "car-" followed by from 8 to 32
* lower-case letters or digits.</p>
*/
inline CreateAccountStatus& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The account name given to the account when it was created.</p>
*/
inline const Aws::String& GetAccountName() const{ return m_accountName; }
/**
* <p>The account name given to the account when it was created.</p>
*/
inline bool AccountNameHasBeenSet() const { return m_accountNameHasBeenSet; }
/**
* <p>The account name given to the account when it was created.</p>
*/
inline void SetAccountName(const Aws::String& value) { m_accountNameHasBeenSet = true; m_accountName = value; }
/**
* <p>The account name given to the account when it was created.</p>
*/
inline void SetAccountName(Aws::String&& value) { m_accountNameHasBeenSet = true; m_accountName = std::move(value); }
/**
* <p>The account name given to the account when it was created.</p>
*/
inline void SetAccountName(const char* value) { m_accountNameHasBeenSet = true; m_accountName.assign(value); }
/**
* <p>The account name given to the account when it was created.</p>
*/
inline CreateAccountStatus& WithAccountName(const Aws::String& value) { SetAccountName(value); return *this;}
/**
* <p>The account name given to the account when it was created.</p>
*/
inline CreateAccountStatus& WithAccountName(Aws::String&& value) { SetAccountName(std::move(value)); return *this;}
/**
* <p>The account name given to the account when it was created.</p>
*/
inline CreateAccountStatus& WithAccountName(const char* value) { SetAccountName(value); return *this;}
/**
* <p>The status of the request.</p>
*/
inline const CreateAccountState& GetState() const{ return m_state; }
/**
* <p>The status of the request.</p>
*/
inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
/**
* <p>The status of the request.</p>
*/
inline void SetState(const CreateAccountState& value) { m_stateHasBeenSet = true; m_state = value; }
/**
* <p>The status of the request.</p>
*/
inline void SetState(CreateAccountState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
/**
* <p>The status of the request.</p>
*/
inline CreateAccountStatus& WithState(const CreateAccountState& value) { SetState(value); return *this;}
/**
* <p>The status of the request.</p>
*/
inline CreateAccountStatus& WithState(CreateAccountState&& value) { SetState(std::move(value)); return *this;}
/**
* <p>The date and time that the request was made for the account creation.</p>
*/
inline const Aws::Utils::DateTime& GetRequestedTimestamp() const{ return m_requestedTimestamp; }
/**
* <p>The date and time that the request was made for the account creation.</p>
*/
inline bool RequestedTimestampHasBeenSet() const { return m_requestedTimestampHasBeenSet; }
/**
* <p>The date and time that the request was made for the account creation.</p>
*/
inline void SetRequestedTimestamp(const Aws::Utils::DateTime& value) { m_requestedTimestampHasBeenSet = true; m_requestedTimestamp = value; }
/**
* <p>The date and time that the request was made for the account creation.</p>
*/
inline void SetRequestedTimestamp(Aws::Utils::DateTime&& value) { m_requestedTimestampHasBeenSet = true; m_requestedTimestamp = std::move(value); }
/**
* <p>The date and time that the request was made for the account creation.</p>
*/
inline CreateAccountStatus& WithRequestedTimestamp(const Aws::Utils::DateTime& value) { SetRequestedTimestamp(value); return *this;}
/**
* <p>The date and time that the request was made for the account creation.</p>
*/
inline CreateAccountStatus& WithRequestedTimestamp(Aws::Utils::DateTime&& value) { SetRequestedTimestamp(std::move(value)); return *this;}
/**
* <p>The date and time that the account was created and the request completed.</p>
*/
inline const Aws::Utils::DateTime& GetCompletedTimestamp() const{ return m_completedTimestamp; }
/**
* <p>The date and time that the account was created and the request completed.</p>
*/
inline bool CompletedTimestampHasBeenSet() const { return m_completedTimestampHasBeenSet; }
/**
* <p>The date and time that the account was created and the request completed.</p>
*/
inline void SetCompletedTimestamp(const Aws::Utils::DateTime& value) { m_completedTimestampHasBeenSet = true; m_completedTimestamp = value; }
/**
* <p>The date and time that the account was created and the request completed.</p>
*/
inline void SetCompletedTimestamp(Aws::Utils::DateTime&& value) { m_completedTimestampHasBeenSet = true; m_completedTimestamp = std::move(value); }
/**
* <p>The date and time that the account was created and the request completed.</p>
*/
inline CreateAccountStatus& WithCompletedTimestamp(const Aws::Utils::DateTime& value) { SetCompletedTimestamp(value); return *this;}
/**
* <p>The date and time that the account was created and the request completed.</p>
*/
inline CreateAccountStatus& WithCompletedTimestamp(Aws::Utils::DateTime&& value) { SetCompletedTimestamp(std::move(value)); return *this;}
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline const Aws::String& GetAccountId() const{ return m_accountId; }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline CreateAccountStatus& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;}
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline CreateAccountStatus& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;}
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an account ID string requires exactly 12 digits.</p>
*/
inline CreateAccountStatus& WithAccountId(const char* value) { SetAccountId(value); return *this;}
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline const Aws::String& GetGovCloudAccountId() const{ return m_govCloudAccountId; }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline bool GovCloudAccountIdHasBeenSet() const { return m_govCloudAccountIdHasBeenSet; }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline void SetGovCloudAccountId(const Aws::String& value) { m_govCloudAccountIdHasBeenSet = true; m_govCloudAccountId = value; }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline void SetGovCloudAccountId(Aws::String&& value) { m_govCloudAccountIdHasBeenSet = true; m_govCloudAccountId = std::move(value); }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline void SetGovCloudAccountId(const char* value) { m_govCloudAccountIdHasBeenSet = true; m_govCloudAccountId.assign(value); }
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline CreateAccountStatus& WithGovCloudAccountId(const Aws::String& value) { SetGovCloudAccountId(value); return *this;}
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline CreateAccountStatus& WithGovCloudAccountId(Aws::String&& value) { SetGovCloudAccountId(std::move(value)); return *this;}
/**
* <p>If the account was created successfully, the unique identifier (ID) of the
* new account in the AWS GovCloud (US) Region.</p>
*/
inline CreateAccountStatus& WithGovCloudAccountId(const char* value) { SetGovCloudAccountId(value); return *this;}
/**
* <p>If the request failed, a description of the reason for the failure.</p> <ul>
* <li> <p>ACCOUNT_LIMIT_EXCEEDED: The account could not be created because you
* have reached the limit on the number of accounts in your organization.</p> </li>
* <li> <p>CONCURRENT_ACCOUNT_MODIFICATION: You already submitted a request with
* the same information.</p> </li> <li> <p>EMAIL_ALREADY_EXISTS: The account could
* not be created because another AWS account with that email address already
* exists.</p> </li> <li> <p>GOVCLOUD_ACCOUNT_ALREADY_EXISTS: The account in the
* AWS GovCloud (US) Region could not be created because this Region already
* includes an account with that email address.</p> </li> <li> <p>INVALID_ADDRESS:
* The account could not be created because the address you provided is not
* valid.</p> </li> <li> <p>INVALID_EMAIL: The account could not be created because
* the email address you provided is not valid.</p> </li> <li> <p>INTERNAL_FAILURE:
* The account could not be created because of an internal failure. Try again
* later. If the problem persists, contact Customer Support.</p> </li> <li>
* <p>MISSING_BUSINESS_VALIDATION: The AWS account that owns your organization has
* not received Business Validation.</p> </li> <li> <p> MISSING_PAYMENT_INSTRUMENT:
* You must configure the master account with a valid payment method, such as a
* credit card.</p> </li> </ul>
*/
inline const CreateAccountFailureReason& GetFailureReason() const{ return m_failureReason; }
/**
* <p>If the request failed, a description of the reason for the failure.</p> <ul>
* <li> <p>ACCOUNT_LIMIT_EXCEEDED: The account could not be created because you
* have reached the limit on the number of accounts in your organization.</p> </li>
* <li> <p>CONCURRENT_ACCOUNT_MODIFICATION: You already submitted a request with
* the same information.</p> </li> <li> <p>EMAIL_ALREADY_EXISTS: The account could
* not be created because another AWS account with that email address already
* exists.</p> </li> <li> <p>GOVCLOUD_ACCOUNT_ALREADY_EXISTS: The account in the
* AWS GovCloud (US) Region could not be created because this Region already
* includes an account with that email address.</p> </li> <li> <p>INVALID_ADDRESS:
* The account could not be created because the address you provided is not
* valid.</p> </li> <li> <p>INVALID_EMAIL: The account could not be created because
* the email address you provided is not valid.</p> </li> <li> <p>INTERNAL_FAILURE:
* The account could not be created because of an internal failure. Try again
* later. If the problem persists, contact Customer Support.</p> </li> <li>
* <p>MISSING_BUSINESS_VALIDATION: The AWS account that owns your organization has
* not received Business Validation.</p> </li> <li> <p> MISSING_PAYMENT_INSTRUMENT:
* You must configure the master account with a valid payment method, such as a
* credit card.</p> </li> </ul>
*/
inline bool FailureReasonHasBeenSet() const { return m_failureReasonHasBeenSet; }
/**
* <p>If the request failed, a description of the reason for the failure.</p> <ul>
* <li> <p>ACCOUNT_LIMIT_EXCEEDED: The account could not be created because you
* have reached the limit on the number of accounts in your organization.</p> </li>
* <li> <p>CONCURRENT_ACCOUNT_MODIFICATION: You already submitted a request with
* the same information.</p> </li> <li> <p>EMAIL_ALREADY_EXISTS: The account could
* not be created because another AWS account with that email address already
* exists.</p> </li> <li> <p>GOVCLOUD_ACCOUNT_ALREADY_EXISTS: The account in the
* AWS GovCloud (US) Region could not be created because this Region already
* includes an account with that email address.</p> </li> <li> <p>INVALID_ADDRESS:
* The account could not be created because the address you provided is not
* valid.</p> </li> <li> <p>INVALID_EMAIL: The account could not be created because
* the email address you provided is not valid.</p> </li> <li> <p>INTERNAL_FAILURE:
* The account could not be created because of an internal failure. Try again
* later. If the problem persists, contact Customer Support.</p> </li> <li>
* <p>MISSING_BUSINESS_VALIDATION: The AWS account that owns your organization has
* not received Business Validation.</p> </li> <li> <p> MISSING_PAYMENT_INSTRUMENT:
* You must configure the master account with a valid payment method, such as a
* credit card.</p> </li> </ul>
*/
inline void SetFailureReason(const CreateAccountFailureReason& value) { m_failureReasonHasBeenSet = true; m_failureReason = value; }
/**
* <p>If the request failed, a description of the reason for the failure.</p> <ul>
* <li> <p>ACCOUNT_LIMIT_EXCEEDED: The account could not be created because you
* have reached the limit on the number of accounts in your organization.</p> </li>
* <li> <p>CONCURRENT_ACCOUNT_MODIFICATION: You already submitted a request with
* the same information.</p> </li> <li> <p>EMAIL_ALREADY_EXISTS: The account could
* not be created because another AWS account with that email address already
* exists.</p> </li> <li> <p>GOVCLOUD_ACCOUNT_ALREADY_EXISTS: The account in the
* AWS GovCloud (US) Region could not be created because this Region already
* includes an account with that email address.</p> </li> <li> <p>INVALID_ADDRESS:
* The account could not be created because the address you provided is not
* valid.</p> </li> <li> <p>INVALID_EMAIL: The account could not be created because
* the email address you provided is not valid.</p> </li> <li> <p>INTERNAL_FAILURE:
* The account could not be created because of an internal failure. Try again
* later. If the problem persists, contact Customer Support.</p> </li> <li>
* <p>MISSING_BUSINESS_VALIDATION: The AWS account that owns your organization has
* not received Business Validation.</p> </li> <li> <p> MISSING_PAYMENT_INSTRUMENT:
* You must configure the master account with a valid payment method, such as a
* credit card.</p> </li> </ul>
*/
inline void SetFailureReason(CreateAccountFailureReason&& value) { m_failureReasonHasBeenSet = true; m_failureReason = std::move(value); }
/**
* <p>If the request failed, a description of the reason for the failure.</p> <ul>
* <li> <p>ACCOUNT_LIMIT_EXCEEDED: The account could not be created because you
* have reached the limit on the number of accounts in your organization.</p> </li>
* <li> <p>CONCURRENT_ACCOUNT_MODIFICATION: You already submitted a request with
* the same information.</p> </li> <li> <p>EMAIL_ALREADY_EXISTS: The account could
* not be created because another AWS account with that email address already
* exists.</p> </li> <li> <p>GOVCLOUD_ACCOUNT_ALREADY_EXISTS: The account in the
* AWS GovCloud (US) Region could not be created because this Region already
* includes an account with that email address.</p> </li> <li> <p>INVALID_ADDRESS:
* The account could not be created because the address you provided is not
* valid.</p> </li> <li> <p>INVALID_EMAIL: The account could not be created because
* the email address you provided is not valid.</p> </li> <li> <p>INTERNAL_FAILURE:
* The account could not be created because of an internal failure. Try again
* later. If the problem persists, contact Customer Support.</p> </li> <li>
* <p>MISSING_BUSINESS_VALIDATION: The AWS account that owns your organization has
* not received Business Validation.</p> </li> <li> <p> MISSING_PAYMENT_INSTRUMENT:
* You must configure the master account with a valid payment method, such as a
* credit card.</p> </li> </ul>
*/
inline CreateAccountStatus& WithFailureReason(const CreateAccountFailureReason& value) { SetFailureReason(value); return *this;}
/**
* <p>If the request failed, a description of the reason for the failure.</p> <ul>
* <li> <p>ACCOUNT_LIMIT_EXCEEDED: The account could not be created because you
* have reached the limit on the number of accounts in your organization.</p> </li>
* <li> <p>CONCURRENT_ACCOUNT_MODIFICATION: You already submitted a request with
* the same information.</p> </li> <li> <p>EMAIL_ALREADY_EXISTS: The account could
* not be created because another AWS account with that email address already
* exists.</p> </li> <li> <p>GOVCLOUD_ACCOUNT_ALREADY_EXISTS: The account in the
* AWS GovCloud (US) Region could not be created because this Region already
* includes an account with that email address.</p> </li> <li> <p>INVALID_ADDRESS:
* The account could not be created because the address you provided is not
* valid.</p> </li> <li> <p>INVALID_EMAIL: The account could not be created because
* the email address you provided is not valid.</p> </li> <li> <p>INTERNAL_FAILURE:
* The account could not be created because of an internal failure. Try again
* later. If the problem persists, contact Customer Support.</p> </li> <li>
* <p>MISSING_BUSINESS_VALIDATION: The AWS account that owns your organization has
* not received Business Validation.</p> </li> <li> <p> MISSING_PAYMENT_INSTRUMENT:
* You must configure the master account with a valid payment method, such as a
* credit card.</p> </li> </ul>
*/
inline CreateAccountStatus& WithFailureReason(CreateAccountFailureReason&& value) { SetFailureReason(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_accountName;
bool m_accountNameHasBeenSet;
CreateAccountState m_state;
bool m_stateHasBeenSet;
Aws::Utils::DateTime m_requestedTimestamp;
bool m_requestedTimestampHasBeenSet;
Aws::Utils::DateTime m_completedTimestamp;
bool m_completedTimestampHasBeenSet;
Aws::String m_accountId;
bool m_accountIdHasBeenSet;
Aws::String m_govCloudAccountId;
bool m_govCloudAccountIdHasBeenSet;
CreateAccountFailureReason m_failureReason;
bool m_failureReasonHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,440 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/IAMUserAccessToBilling.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API CreateGovCloudAccountRequest : public OrganizationsRequest
{
public:
CreateGovCloudAccountRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreateGovCloudAccount"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline const Aws::String& GetEmail() const{ return m_email; }
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline void SetEmail(const Aws::String& value) { m_emailHasBeenSet = true; m_email = value; }
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline void SetEmail(Aws::String&& value) { m_emailHasBeenSet = true; m_email = std::move(value); }
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline void SetEmail(const char* value) { m_emailHasBeenSet = true; m_email.assign(value); }
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline CreateGovCloudAccountRequest& WithEmail(const Aws::String& value) { SetEmail(value); return *this;}
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline CreateGovCloudAccountRequest& WithEmail(Aws::String&& value) { SetEmail(std::move(value)); return *this;}
/**
* <p>The email address of the owner to assign to the new member account in the
* commercial Region. This email address must not already be associated with
* another AWS account. You must use a valid email address to complete account
* creation. You can't access the root user of the account or remove an account
* that was created with an invalid email address. Like all request parameters for
* <code>CreateGovCloudAccount</code>, the request for the email address for the
* AWS GovCloud (US) account originates from the commercial Region, not from the
* AWS GovCloud (US) Region.</p>
*/
inline CreateGovCloudAccountRequest& WithEmail(const char* value) { SetEmail(value); return *this;}
/**
* <p>The friendly name of the member account.</p>
*/
inline const Aws::String& GetAccountName() const{ return m_accountName; }
/**
* <p>The friendly name of the member account.</p>
*/
inline bool AccountNameHasBeenSet() const { return m_accountNameHasBeenSet; }
/**
* <p>The friendly name of the member account.</p>
*/
inline void SetAccountName(const Aws::String& value) { m_accountNameHasBeenSet = true; m_accountName = value; }
/**
* <p>The friendly name of the member account.</p>
*/
inline void SetAccountName(Aws::String&& value) { m_accountNameHasBeenSet = true; m_accountName = std::move(value); }
/**
* <p>The friendly name of the member account.</p>
*/
inline void SetAccountName(const char* value) { m_accountNameHasBeenSet = true; m_accountName.assign(value); }
/**
* <p>The friendly name of the member account.</p>
*/
inline CreateGovCloudAccountRequest& WithAccountName(const Aws::String& value) { SetAccountName(value); return *this;}
/**
* <p>The friendly name of the member account.</p>
*/
inline CreateGovCloudAccountRequest& WithAccountName(Aws::String&& value) { SetAccountName(std::move(value)); return *this;}
/**
* <p>The friendly name of the member account.</p>
*/
inline CreateGovCloudAccountRequest& WithAccountName(const char* value) { SetAccountName(value); return *this;}
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline const Aws::String& GetRoleName() const{ return m_roleName; }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline bool RoleNameHasBeenSet() const { return m_roleNameHasBeenSet; }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline void SetRoleName(const Aws::String& value) { m_roleNameHasBeenSet = true; m_roleName = value; }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline void SetRoleName(Aws::String&& value) { m_roleNameHasBeenSet = true; m_roleName = std::move(value); }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline void SetRoleName(const char* value) { m_roleNameHasBeenSet = true; m_roleName.assign(value); }
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline CreateGovCloudAccountRequest& WithRoleName(const Aws::String& value) { SetRoleName(value); return *this;}
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline CreateGovCloudAccountRequest& WithRoleName(Aws::String&& value) { SetRoleName(std::move(value)); return *this;}
/**
* <p>(Optional)</p> <p>The name of an IAM role that AWS Organizations
* automatically preconfigures in the new member accounts in both the AWS GovCloud
* (US) Region and in the commercial Region. This role trusts the master account,
* allowing users in the master account to assume the role, as permitted by the
* master account administrator. The role has administrator permissions in the new
* member account.</p> <p>If you don't specify this parameter, the role name
* defaults to <code>OrganizationAccountAccessRole</code>.</p> <p>For more
* information about how to use this role to access the member account, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_create-cross-account-role">Accessing
* and Administering the Member Accounts in Your Organization</a> in the <i>AWS
* Organizations User Guide</i> and steps 2 and 3 in <a
* href="https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html">Tutorial:
* Delegate Access Across AWS Accounts Using IAM Roles</a> in the <i>IAM User
* Guide.</i> </p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> that is used to validate this parameter. The pattern can include
* uppercase letters, lowercase letters, digits with no spaces, and any of the
* following characters: =,.@-</p>
*/
inline CreateGovCloudAccountRequest& WithRoleName(const char* value) { SetRoleName(value); return *this;}
/**
* <p>If set to <code>ALLOW</code>, the new linked account in the commercial Region
* enables IAM users to access account billing information <i>if</i> they have the
* required permissions. If set to <code>DENY</code>, only the root user of the new
* account can access account billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide.</i> </p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline const IAMUserAccessToBilling& GetIamUserAccessToBilling() const{ return m_iamUserAccessToBilling; }
/**
* <p>If set to <code>ALLOW</code>, the new linked account in the commercial Region
* enables IAM users to access account billing information <i>if</i> they have the
* required permissions. If set to <code>DENY</code>, only the root user of the new
* account can access account billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide.</i> </p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline bool IamUserAccessToBillingHasBeenSet() const { return m_iamUserAccessToBillingHasBeenSet; }
/**
* <p>If set to <code>ALLOW</code>, the new linked account in the commercial Region
* enables IAM users to access account billing information <i>if</i> they have the
* required permissions. If set to <code>DENY</code>, only the root user of the new
* account can access account billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide.</i> </p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline void SetIamUserAccessToBilling(const IAMUserAccessToBilling& value) { m_iamUserAccessToBillingHasBeenSet = true; m_iamUserAccessToBilling = value; }
/**
* <p>If set to <code>ALLOW</code>, the new linked account in the commercial Region
* enables IAM users to access account billing information <i>if</i> they have the
* required permissions. If set to <code>DENY</code>, only the root user of the new
* account can access account billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide.</i> </p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline void SetIamUserAccessToBilling(IAMUserAccessToBilling&& value) { m_iamUserAccessToBillingHasBeenSet = true; m_iamUserAccessToBilling = std::move(value); }
/**
* <p>If set to <code>ALLOW</code>, the new linked account in the commercial Region
* enables IAM users to access account billing information <i>if</i> they have the
* required permissions. If set to <code>DENY</code>, only the root user of the new
* account can access account billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide.</i> </p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline CreateGovCloudAccountRequest& WithIamUserAccessToBilling(const IAMUserAccessToBilling& value) { SetIamUserAccessToBilling(value); return *this;}
/**
* <p>If set to <code>ALLOW</code>, the new linked account in the commercial Region
* enables IAM users to access account billing information <i>if</i> they have the
* required permissions. If set to <code>DENY</code>, only the root user of the new
* account can access account billing information. For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/grantaccess.html#ControllingAccessWebsite-Activate">Activating
* Access to the Billing and Cost Management Console</a> in the <i>AWS Billing and
* Cost Management User Guide.</i> </p> <p>If you don't specify this parameter, the
* value defaults to <code>ALLOW</code>, and IAM users and roles with the required
* permissions can access billing information for the new account.</p>
*/
inline CreateGovCloudAccountRequest& WithIamUserAccessToBilling(IAMUserAccessToBilling&& value) { SetIamUserAccessToBilling(std::move(value)); return *this;}
private:
Aws::String m_email;
bool m_emailHasBeenSet;
Aws::String m_accountName;
bool m_accountNameHasBeenSet;
Aws::String m_roleName;
bool m_roleNameHasBeenSet;
IAMUserAccessToBilling m_iamUserAccessToBilling;
bool m_iamUserAccessToBillingHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,57 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/CreateAccountStatus.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API CreateGovCloudAccountResult
{
public:
CreateGovCloudAccountResult();
CreateGovCloudAccountResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateGovCloudAccountResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
inline const CreateAccountStatus& GetCreateAccountStatus() const{ return m_createAccountStatus; }
inline void SetCreateAccountStatus(const CreateAccountStatus& value) { m_createAccountStatus = value; }
inline void SetCreateAccountStatus(CreateAccountStatus&& value) { m_createAccountStatus = std::move(value); }
inline CreateGovCloudAccountResult& WithCreateAccountStatus(const CreateAccountStatus& value) { SetCreateAccountStatus(value); return *this;}
inline CreateGovCloudAccountResult& WithCreateAccountStatus(CreateAccountStatus&& value) { SetCreateAccountStatus(std::move(value)); return *this;}
private:
CreateAccountStatus m_createAccountStatus;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,147 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/organizations/model/OrganizationFeatureSet.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API CreateOrganizationRequest : public OrganizationsRequest
{
public:
CreateOrganizationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreateOrganization"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>Specifies the feature set supported by the new organization. Each feature set
* supports different levels of functionality.</p> <ul> <li> <p>
* <code>CONSOLIDATED_BILLING</code>: All member accounts have their bills
* consolidated to and paid by the master account. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only">Consolidated
* billing</a> in the <i>AWS Organizations User Guide.</i> </p> <p> The
* consolidated billing feature subset isn't available for organizations in the AWS
* GovCloud (US) Region.</p> </li> <li> <p> <code>ALL</code>: In addition to all
* the features supported by the consolidated billing feature set, the master
* account can also apply any policy type to any member account in the
* organization. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all">All
* features</a> in the <i>AWS Organizations User Guide.</i> </p> </li> </ul>
*/
inline const OrganizationFeatureSet& GetFeatureSet() const{ return m_featureSet; }
/**
* <p>Specifies the feature set supported by the new organization. Each feature set
* supports different levels of functionality.</p> <ul> <li> <p>
* <code>CONSOLIDATED_BILLING</code>: All member accounts have their bills
* consolidated to and paid by the master account. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only">Consolidated
* billing</a> in the <i>AWS Organizations User Guide.</i> </p> <p> The
* consolidated billing feature subset isn't available for organizations in the AWS
* GovCloud (US) Region.</p> </li> <li> <p> <code>ALL</code>: In addition to all
* the features supported by the consolidated billing feature set, the master
* account can also apply any policy type to any member account in the
* organization. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all">All
* features</a> in the <i>AWS Organizations User Guide.</i> </p> </li> </ul>
*/
inline bool FeatureSetHasBeenSet() const { return m_featureSetHasBeenSet; }
/**
* <p>Specifies the feature set supported by the new organization. Each feature set
* supports different levels of functionality.</p> <ul> <li> <p>
* <code>CONSOLIDATED_BILLING</code>: All member accounts have their bills
* consolidated to and paid by the master account. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only">Consolidated
* billing</a> in the <i>AWS Organizations User Guide.</i> </p> <p> The
* consolidated billing feature subset isn't available for organizations in the AWS
* GovCloud (US) Region.</p> </li> <li> <p> <code>ALL</code>: In addition to all
* the features supported by the consolidated billing feature set, the master
* account can also apply any policy type to any member account in the
* organization. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all">All
* features</a> in the <i>AWS Organizations User Guide.</i> </p> </li> </ul>
*/
inline void SetFeatureSet(const OrganizationFeatureSet& value) { m_featureSetHasBeenSet = true; m_featureSet = value; }
/**
* <p>Specifies the feature set supported by the new organization. Each feature set
* supports different levels of functionality.</p> <ul> <li> <p>
* <code>CONSOLIDATED_BILLING</code>: All member accounts have their bills
* consolidated to and paid by the master account. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only">Consolidated
* billing</a> in the <i>AWS Organizations User Guide.</i> </p> <p> The
* consolidated billing feature subset isn't available for organizations in the AWS
* GovCloud (US) Region.</p> </li> <li> <p> <code>ALL</code>: In addition to all
* the features supported by the consolidated billing feature set, the master
* account can also apply any policy type to any member account in the
* organization. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all">All
* features</a> in the <i>AWS Organizations User Guide.</i> </p> </li> </ul>
*/
inline void SetFeatureSet(OrganizationFeatureSet&& value) { m_featureSetHasBeenSet = true; m_featureSet = std::move(value); }
/**
* <p>Specifies the feature set supported by the new organization. Each feature set
* supports different levels of functionality.</p> <ul> <li> <p>
* <code>CONSOLIDATED_BILLING</code>: All member accounts have their bills
* consolidated to and paid by the master account. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only">Consolidated
* billing</a> in the <i>AWS Organizations User Guide.</i> </p> <p> The
* consolidated billing feature subset isn't available for organizations in the AWS
* GovCloud (US) Region.</p> </li> <li> <p> <code>ALL</code>: In addition to all
* the features supported by the consolidated billing feature set, the master
* account can also apply any policy type to any member account in the
* organization. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all">All
* features</a> in the <i>AWS Organizations User Guide.</i> </p> </li> </ul>
*/
inline CreateOrganizationRequest& WithFeatureSet(const OrganizationFeatureSet& value) { SetFeatureSet(value); return *this;}
/**
* <p>Specifies the feature set supported by the new organization. Each feature set
* supports different levels of functionality.</p> <ul> <li> <p>
* <code>CONSOLIDATED_BILLING</code>: All member accounts have their bills
* consolidated to and paid by the master account. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-cb-only">Consolidated
* billing</a> in the <i>AWS Organizations User Guide.</i> </p> <p> The
* consolidated billing feature subset isn't available for organizations in the AWS
* GovCloud (US) Region.</p> </li> <li> <p> <code>ALL</code>: In addition to all
* the features supported by the consolidated billing feature set, the master
* account can also apply any policy type to any member account in the
* organization. For more information, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#feature-set-all">All
* features</a> in the <i>AWS Organizations User Guide.</i> </p> </li> </ul>
*/
inline CreateOrganizationRequest& WithFeatureSet(OrganizationFeatureSet&& value) { SetFeatureSet(std::move(value)); return *this;}
private:
OrganizationFeatureSet m_featureSet;
bool m_featureSetHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Organization.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API CreateOrganizationResult
{
public:
CreateOrganizationResult();
CreateOrganizationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateOrganizationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the newly created organization.</p>
*/
inline const Organization& GetOrganization() const{ return m_organization; }
/**
* <p>A structure that contains details about the newly created organization.</p>
*/
inline void SetOrganization(const Organization& value) { m_organization = value; }
/**
* <p>A structure that contains details about the newly created organization.</p>
*/
inline void SetOrganization(Organization&& value) { m_organization = std::move(value); }
/**
* <p>A structure that contains details about the newly created organization.</p>
*/
inline CreateOrganizationResult& WithOrganization(const Organization& value) { SetOrganization(value); return *this;}
/**
* <p>A structure that contains details about the newly created organization.</p>
*/
inline CreateOrganizationResult& WithOrganization(Organization&& value) { SetOrganization(std::move(value)); return *this;}
private:
Organization m_organization;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,193 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API CreateOrganizationalUnitRequest : public OrganizationsRequest
{
public:
CreateOrganizationalUnitRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreateOrganizationalUnit"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline const Aws::String& GetParentId() const{ return m_parentId; }
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline bool ParentIdHasBeenSet() const { return m_parentIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline void SetParentId(const Aws::String& value) { m_parentIdHasBeenSet = true; m_parentId = value; }
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline void SetParentId(Aws::String&& value) { m_parentIdHasBeenSet = true; m_parentId = std::move(value); }
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline void SetParentId(const char* value) { m_parentIdHasBeenSet = true; m_parentId.assign(value); }
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline CreateOrganizationalUnitRequest& WithParentId(const Aws::String& value) { SetParentId(value); return *this;}
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline CreateOrganizationalUnitRequest& WithParentId(Aws::String&& value) { SetParentId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the parent root or OU that you want to create
* the new OU in.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a parent ID string requires one of the following:</p> <ul> <li>
* <p> <b>Root</b> - A string that begins with "r-" followed by from 4 to 32
* lowercase letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b>
* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or
* digits (the ID of the root that the OU is in). This string is followed by a
* second "-" dash and from 8 to 32 additional lowercase letters or digits.</p>
* </li> </ul>
*/
inline CreateOrganizationalUnitRequest& WithParentId(const char* value) { SetParentId(value); return *this;}
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline CreateOrganizationalUnitRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline CreateOrganizationalUnitRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The friendly name to assign to the new OU.</p>
*/
inline CreateOrganizationalUnitRequest& WithName(const char* value) { SetName(value); return *this;}
private:
Aws::String m_parentId;
bool m_parentIdHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/OrganizationalUnit.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API CreateOrganizationalUnitResult
{
public:
CreateOrganizationalUnitResult();
CreateOrganizationalUnitResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateOrganizationalUnitResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the newly created OU.</p>
*/
inline const OrganizationalUnit& GetOrganizationalUnit() const{ return m_organizationalUnit; }
/**
* <p>A structure that contains details about the newly created OU.</p>
*/
inline void SetOrganizationalUnit(const OrganizationalUnit& value) { m_organizationalUnit = value; }
/**
* <p>A structure that contains details about the newly created OU.</p>
*/
inline void SetOrganizationalUnit(OrganizationalUnit&& value) { m_organizationalUnit = std::move(value); }
/**
* <p>A structure that contains details about the newly created OU.</p>
*/
inline CreateOrganizationalUnitResult& WithOrganizationalUnit(const OrganizationalUnit& value) { SetOrganizationalUnit(value); return *this;}
/**
* <p>A structure that contains details about the newly created OU.</p>
*/
inline CreateOrganizationalUnitResult& WithOrganizationalUnit(OrganizationalUnit&& value) { SetOrganizationalUnit(std::move(value)); return *this;}
private:
OrganizationalUnit m_organizationalUnit;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,302 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/PolicyType.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API CreatePolicyRequest : public OrganizationsRequest
{
public:
CreatePolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreatePolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline const Aws::String& GetContent() const{ return m_content; }
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline bool ContentHasBeenSet() const { return m_contentHasBeenSet; }
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline void SetContent(const Aws::String& value) { m_contentHasBeenSet = true; m_content = value; }
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline void SetContent(Aws::String&& value) { m_contentHasBeenSet = true; m_content = std::move(value); }
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline void SetContent(const char* value) { m_contentHasBeenSet = true; m_content.assign(value); }
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline CreatePolicyRequest& WithContent(const Aws::String& value) { SetContent(value); return *this;}
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline CreatePolicyRequest& WithContent(Aws::String&& value) { SetContent(std::move(value)); return *this;}
/**
* <p>The policy text content to add to the new policy. The text that you supply
* must adhere to the rules of the policy type you specify in the <code>Type</code>
* parameter.</p>
*/
inline CreatePolicyRequest& WithContent(const char* value) { SetContent(value); return *this;}
/**
* <p>An optional description to assign to the policy.</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>An optional description to assign to the policy.</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>An optional description to assign to the policy.</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>An optional description to assign to the policy.</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>An optional description to assign to the policy.</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>An optional description to assign to the policy.</p>
*/
inline CreatePolicyRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>An optional description to assign to the policy.</p>
*/
inline CreatePolicyRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>An optional description to assign to the policy.</p>
*/
inline CreatePolicyRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline CreatePolicyRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline CreatePolicyRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The friendly name to assign to the policy.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> that is used to
* validate this parameter is a string of any of the characters in the ASCII
* character range.</p>
*/
inline CreatePolicyRequest& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The type of policy to create. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline const PolicyType& GetType() const{ return m_type; }
/**
* <p>The type of policy to create. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>The type of policy to create. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetType(const PolicyType& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>The type of policy to create. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetType(PolicyType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>The type of policy to create. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline CreatePolicyRequest& WithType(const PolicyType& value) { SetType(value); return *this;}
/**
* <p>The type of policy to create. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline CreatePolicyRequest& WithType(PolicyType&& value) { SetType(std::move(value)); return *this;}
private:
Aws::String m_content;
bool m_contentHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
PolicyType m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Policy.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API CreatePolicyResult
{
public:
CreatePolicyResult();
CreatePolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreatePolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the newly created policy.</p>
*/
inline const Policy& GetPolicy() const{ return m_policy; }
/**
* <p>A structure that contains details about the newly created policy.</p>
*/
inline void SetPolicy(const Policy& value) { m_policy = value; }
/**
* <p>A structure that contains details about the newly created policy.</p>
*/
inline void SetPolicy(Policy&& value) { m_policy = std::move(value); }
/**
* <p>A structure that contains details about the newly created policy.</p>
*/
inline CreatePolicyResult& WithPolicy(const Policy& value) { SetPolicy(value); return *this;}
/**
* <p>A structure that contains details about the newly created policy.</p>
*/
inline CreatePolicyResult& WithPolicy(Policy&& value) { SetPolicy(std::move(value)); return *this;}
private:
Policy m_policy;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,109 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DeclineHandshakeRequest : public OrganizationsRequest
{
public:
DeclineHandshakeRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeclineHandshake"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline const Aws::String& GetHandshakeId() const{ return m_handshakeId; }
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline bool HandshakeIdHasBeenSet() const { return m_handshakeIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(const Aws::String& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = value; }
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(Aws::String&& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = std::move(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(const char* value) { m_handshakeIdHasBeenSet = true; m_handshakeId.assign(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline DeclineHandshakeRequest& WithHandshakeId(const Aws::String& value) { SetHandshakeId(value); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline DeclineHandshakeRequest& WithHandshakeId(Aws::String&& value) { SetHandshakeId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want to decline. You can
* get the ID from the <a>ListHandshakesForAccount</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline DeclineHandshakeRequest& WithHandshakeId(const char* value) { SetHandshakeId(value); return *this;}
private:
Aws::String m_handshakeId;
bool m_handshakeIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DeclineHandshakeResult
{
public:
DeclineHandshakeResult();
DeclineHandshakeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeclineHandshakeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the declined handshake. The state is
* updated to show the value <code>DECLINED</code>.</p>
*/
inline const Handshake& GetHandshake() const{ return m_handshake; }
/**
* <p>A structure that contains details about the declined handshake. The state is
* updated to show the value <code>DECLINED</code>.</p>
*/
inline void SetHandshake(const Handshake& value) { m_handshake = value; }
/**
* <p>A structure that contains details about the declined handshake. The state is
* updated to show the value <code>DECLINED</code>.</p>
*/
inline void SetHandshake(Handshake&& value) { m_handshake = std::move(value); }
/**
* <p>A structure that contains details about the declined handshake. The state is
* updated to show the value <code>DECLINED</code>.</p>
*/
inline DeclineHandshakeResult& WithHandshake(const Handshake& value) { SetHandshake(value); return *this;}
/**
* <p>A structure that contains details about the declined handshake. The state is
* updated to show the value <code>DECLINED</code>.</p>
*/
inline DeclineHandshakeResult& WithHandshake(Handshake&& value) { SetHandshake(std::move(value)); return *this;}
private:
Handshake m_handshake;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,380 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/AccountStatus.h>
#include <aws/organizations/model/AccountJoinedMethod.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains information about the delegated administrator.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DelegatedAdministrator">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API DelegatedAdministrator
{
public:
DelegatedAdministrator();
DelegatedAdministrator(Aws::Utils::Json::JsonView jsonValue);
DelegatedAdministrator& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline const Aws::String& GetEmail() const{ return m_email; }
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline void SetEmail(const Aws::String& value) { m_emailHasBeenSet = true; m_email = value; }
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline void SetEmail(Aws::String&& value) { m_emailHasBeenSet = true; m_email = std::move(value); }
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline void SetEmail(const char* value) { m_emailHasBeenSet = true; m_email.assign(value); }
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline DelegatedAdministrator& WithEmail(const Aws::String& value) { SetEmail(value); return *this;}
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline DelegatedAdministrator& WithEmail(Aws::String&& value) { SetEmail(std::move(value)); return *this;}
/**
* <p>The email address that is associated with the delegated administrator's AWS
* account.</p>
*/
inline DelegatedAdministrator& WithEmail(const char* value) { SetEmail(value); return *this;}
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The friendly name of the delegated administrator's account.</p>
*/
inline DelegatedAdministrator& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The status of the delegated administrator's account in the organization.</p>
*/
inline const AccountStatus& GetStatus() const{ return m_status; }
/**
* <p>The status of the delegated administrator's account in the organization.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>The status of the delegated administrator's account in the organization.</p>
*/
inline void SetStatus(const AccountStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>The status of the delegated administrator's account in the organization.</p>
*/
inline void SetStatus(AccountStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>The status of the delegated administrator's account in the organization.</p>
*/
inline DelegatedAdministrator& WithStatus(const AccountStatus& value) { SetStatus(value); return *this;}
/**
* <p>The status of the delegated administrator's account in the organization.</p>
*/
inline DelegatedAdministrator& WithStatus(AccountStatus&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The method by which the delegated administrator's account joined the
* organization.</p>
*/
inline const AccountJoinedMethod& GetJoinedMethod() const{ return m_joinedMethod; }
/**
* <p>The method by which the delegated administrator's account joined the
* organization.</p>
*/
inline bool JoinedMethodHasBeenSet() const { return m_joinedMethodHasBeenSet; }
/**
* <p>The method by which the delegated administrator's account joined the
* organization.</p>
*/
inline void SetJoinedMethod(const AccountJoinedMethod& value) { m_joinedMethodHasBeenSet = true; m_joinedMethod = value; }
/**
* <p>The method by which the delegated administrator's account joined the
* organization.</p>
*/
inline void SetJoinedMethod(AccountJoinedMethod&& value) { m_joinedMethodHasBeenSet = true; m_joinedMethod = std::move(value); }
/**
* <p>The method by which the delegated administrator's account joined the
* organization.</p>
*/
inline DelegatedAdministrator& WithJoinedMethod(const AccountJoinedMethod& value) { SetJoinedMethod(value); return *this;}
/**
* <p>The method by which the delegated administrator's account joined the
* organization.</p>
*/
inline DelegatedAdministrator& WithJoinedMethod(AccountJoinedMethod&& value) { SetJoinedMethod(std::move(value)); return *this;}
/**
* <p>The date when the delegated administrator's account became a part of the
* organization.</p>
*/
inline const Aws::Utils::DateTime& GetJoinedTimestamp() const{ return m_joinedTimestamp; }
/**
* <p>The date when the delegated administrator's account became a part of the
* organization.</p>
*/
inline bool JoinedTimestampHasBeenSet() const { return m_joinedTimestampHasBeenSet; }
/**
* <p>The date when the delegated administrator's account became a part of the
* organization.</p>
*/
inline void SetJoinedTimestamp(const Aws::Utils::DateTime& value) { m_joinedTimestampHasBeenSet = true; m_joinedTimestamp = value; }
/**
* <p>The date when the delegated administrator's account became a part of the
* organization.</p>
*/
inline void SetJoinedTimestamp(Aws::Utils::DateTime&& value) { m_joinedTimestampHasBeenSet = true; m_joinedTimestamp = std::move(value); }
/**
* <p>The date when the delegated administrator's account became a part of the
* organization.</p>
*/
inline DelegatedAdministrator& WithJoinedTimestamp(const Aws::Utils::DateTime& value) { SetJoinedTimestamp(value); return *this;}
/**
* <p>The date when the delegated administrator's account became a part of the
* organization.</p>
*/
inline DelegatedAdministrator& WithJoinedTimestamp(Aws::Utils::DateTime&& value) { SetJoinedTimestamp(std::move(value)); return *this;}
/**
* <p>The date when the account was made a delegated administrator.</p>
*/
inline const Aws::Utils::DateTime& GetDelegationEnabledDate() const{ return m_delegationEnabledDate; }
/**
* <p>The date when the account was made a delegated administrator.</p>
*/
inline bool DelegationEnabledDateHasBeenSet() const { return m_delegationEnabledDateHasBeenSet; }
/**
* <p>The date when the account was made a delegated administrator.</p>
*/
inline void SetDelegationEnabledDate(const Aws::Utils::DateTime& value) { m_delegationEnabledDateHasBeenSet = true; m_delegationEnabledDate = value; }
/**
* <p>The date when the account was made a delegated administrator.</p>
*/
inline void SetDelegationEnabledDate(Aws::Utils::DateTime&& value) { m_delegationEnabledDateHasBeenSet = true; m_delegationEnabledDate = std::move(value); }
/**
* <p>The date when the account was made a delegated administrator.</p>
*/
inline DelegatedAdministrator& WithDelegationEnabledDate(const Aws::Utils::DateTime& value) { SetDelegationEnabledDate(value); return *this;}
/**
* <p>The date when the account was made a delegated administrator.</p>
*/
inline DelegatedAdministrator& WithDelegationEnabledDate(Aws::Utils::DateTime&& value) { SetDelegationEnabledDate(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::String m_email;
bool m_emailHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
AccountStatus m_status;
bool m_statusHasBeenSet;
AccountJoinedMethod m_joinedMethod;
bool m_joinedMethodHasBeenSet;
Aws::Utils::DateTime m_joinedTimestamp;
bool m_joinedTimestampHasBeenSet;
Aws::Utils::DateTime m_delegationEnabledDate;
bool m_delegationEnabledDateHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,146 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains information about the AWS service for which the account is a
* delegated administrator.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DelegatedService">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API DelegatedService
{
public:
DelegatedService();
DelegatedService(Aws::Utils::Json::JsonView jsonValue);
DelegatedService& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline const Aws::String& GetServicePrincipal() const{ return m_servicePrincipal; }
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline bool ServicePrincipalHasBeenSet() const { return m_servicePrincipalHasBeenSet; }
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const Aws::String& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = value; }
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(Aws::String&& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = std::move(value); }
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const char* value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal.assign(value); }
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline DelegatedService& WithServicePrincipal(const Aws::String& value) { SetServicePrincipal(value); return *this;}
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline DelegatedService& WithServicePrincipal(Aws::String&& value) { SetServicePrincipal(std::move(value)); return *this;}
/**
* <p>The name of a service that can request an operation for the specified
* service. This is typically in the form of a URL, such as: <code>
* <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline DelegatedService& WithServicePrincipal(const char* value) { SetServicePrincipal(value); return *this;}
/**
* <p>The date that the account became a delegated administrator for this service.
* </p>
*/
inline const Aws::Utils::DateTime& GetDelegationEnabledDate() const{ return m_delegationEnabledDate; }
/**
* <p>The date that the account became a delegated administrator for this service.
* </p>
*/
inline bool DelegationEnabledDateHasBeenSet() const { return m_delegationEnabledDateHasBeenSet; }
/**
* <p>The date that the account became a delegated administrator for this service.
* </p>
*/
inline void SetDelegationEnabledDate(const Aws::Utils::DateTime& value) { m_delegationEnabledDateHasBeenSet = true; m_delegationEnabledDate = value; }
/**
* <p>The date that the account became a delegated administrator for this service.
* </p>
*/
inline void SetDelegationEnabledDate(Aws::Utils::DateTime&& value) { m_delegationEnabledDateHasBeenSet = true; m_delegationEnabledDate = std::move(value); }
/**
* <p>The date that the account became a delegated administrator for this service.
* </p>
*/
inline DelegatedService& WithDelegationEnabledDate(const Aws::Utils::DateTime& value) { SetDelegationEnabledDate(value); return *this;}
/**
* <p>The date that the account became a delegated administrator for this service.
* </p>
*/
inline DelegatedService& WithDelegationEnabledDate(Aws::Utils::DateTime&& value) { SetDelegationEnabledDate(std::move(value)); return *this;}
private:
Aws::String m_servicePrincipal;
bool m_servicePrincipalHasBeenSet;
Aws::Utils::DateTime m_delegationEnabledDate;
bool m_delegationEnabledDateHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,133 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DeleteOrganizationalUnitRequest : public OrganizationsRequest
{
public:
DeleteOrganizationalUnitRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteOrganizationalUnit"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline const Aws::String& GetOrganizationalUnitId() const{ return m_organizationalUnitId; }
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline bool OrganizationalUnitIdHasBeenSet() const { return m_organizationalUnitIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline void SetOrganizationalUnitId(const Aws::String& value) { m_organizationalUnitIdHasBeenSet = true; m_organizationalUnitId = value; }
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline void SetOrganizationalUnitId(Aws::String&& value) { m_organizationalUnitIdHasBeenSet = true; m_organizationalUnitId = std::move(value); }
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline void SetOrganizationalUnitId(const char* value) { m_organizationalUnitIdHasBeenSet = true; m_organizationalUnitId.assign(value); }
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline DeleteOrganizationalUnitRequest& WithOrganizationalUnitId(const Aws::String& value) { SetOrganizationalUnitId(value); return *this;}
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline DeleteOrganizationalUnitRequest& WithOrganizationalUnitId(Aws::String&& value) { SetOrganizationalUnitId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the organizational unit that you want to
* delete. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline DeleteOrganizationalUnitRequest& WithOrganizationalUnitId(const char* value) { SetOrganizationalUnitId(value); return *this;}
private:
Aws::String m_organizationalUnitId;
bool m_organizationalUnitIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,117 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DeletePolicyRequest : public OrganizationsRequest
{
public:
DeletePolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeletePolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline const Aws::String& GetPolicyId() const{ return m_policyId; }
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline bool PolicyIdHasBeenSet() const { return m_policyIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const Aws::String& value) { m_policyIdHasBeenSet = true; m_policyId = value; }
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(Aws::String&& value) { m_policyIdHasBeenSet = true; m_policyId = std::move(value); }
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const char* value) { m_policyIdHasBeenSet = true; m_policyId.assign(value); }
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline DeletePolicyRequest& WithPolicyId(const Aws::String& value) { SetPolicyId(value); return *this;}
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline DeletePolicyRequest& WithPolicyId(Aws::String&& value) { SetPolicyId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the policy that you want to delete. You can get
* the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline DeletePolicyRequest& WithPolicyId(const char* value) { SetPolicyId(value); return *this;}
private:
Aws::String m_policyId;
bool m_policyIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,177 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DeregisterDelegatedAdministratorRequest : public OrganizationsRequest
{
public:
DeregisterDelegatedAdministratorRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeregisterDelegatedAdministrator"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline const Aws::String& GetAccountId() const{ return m_accountId; }
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; }
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); }
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); }
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline DeregisterDelegatedAdministratorRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;}
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline DeregisterDelegatedAdministratorRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;}
/**
* <p>The account ID number of the member account in the organization that you want
* to deregister as a delegated administrator.</p>
*/
inline DeregisterDelegatedAdministratorRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;}
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline const Aws::String& GetServicePrincipal() const{ return m_servicePrincipal; }
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline bool ServicePrincipalHasBeenSet() const { return m_servicePrincipalHasBeenSet; }
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline void SetServicePrincipal(const Aws::String& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = value; }
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline void SetServicePrincipal(Aws::String&& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = std::move(value); }
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline void SetServicePrincipal(const char* value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal.assign(value); }
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline DeregisterDelegatedAdministratorRequest& WithServicePrincipal(const Aws::String& value) { SetServicePrincipal(value); return *this;}
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline DeregisterDelegatedAdministratorRequest& WithServicePrincipal(Aws::String&& value) { SetServicePrincipal(std::move(value)); return *this;}
/**
* <p>The service principal name of an AWS service for which the account is a
* delegated administrator.</p> <p>Delegated administrator privileges are revoked
* for only the specified AWS service from the member account. If the specified
* service is the only service for which the member account is a delegated
* administrator, the operation also revokes Organizations read action
* permissions.</p>
*/
inline DeregisterDelegatedAdministratorRequest& WithServicePrincipal(const char* value) { SetServicePrincipal(value); return *this;}
private:
Aws::String m_accountId;
bool m_accountIdHasBeenSet;
Aws::String m_servicePrincipal;
bool m_servicePrincipalHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,117 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DescribeAccountRequest : public OrganizationsRequest
{
public:
DescribeAccountRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DescribeAccount"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline const Aws::String& GetAccountId() const{ return m_accountId; }
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; }
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); }
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); }
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline DescribeAccountRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;}
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline DescribeAccountRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the AWS account that you want information
* about. You can get the ID from the <a>ListAccounts</a> or
* <a>ListAccountsForParent</a> operations.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for an account ID
* string requires exactly 12 digits.</p>
*/
inline DescribeAccountRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;}
private:
Aws::String m_accountId;
bool m_accountIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Account.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribeAccountResult
{
public:
DescribeAccountResult();
DescribeAccountResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeAccountResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains information about the requested account.</p>
*/
inline const Account& GetAccount() const{ return m_account; }
/**
* <p>A structure that contains information about the requested account.</p>
*/
inline void SetAccount(const Account& value) { m_account = value; }
/**
* <p>A structure that contains information about the requested account.</p>
*/
inline void SetAccount(Account&& value) { m_account = std::move(value); }
/**
* <p>A structure that contains information about the requested account.</p>
*/
inline DescribeAccountResult& WithAccount(const Account& value) { SetAccount(value); return *this;}
/**
* <p>A structure that contains information about the requested account.</p>
*/
inline DescribeAccountResult& WithAccount(Account&& value) { SetAccount(std::move(value)); return *this;}
private:
Account m_account;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,125 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DescribeCreateAccountStatusRequest : public OrganizationsRequest
{
public:
DescribeCreateAccountStatusRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DescribeCreateAccountStatus"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline const Aws::String& GetCreateAccountRequestId() const{ return m_createAccountRequestId; }
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline bool CreateAccountRequestIdHasBeenSet() const { return m_createAccountRequestIdHasBeenSet; }
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline void SetCreateAccountRequestId(const Aws::String& value) { m_createAccountRequestIdHasBeenSet = true; m_createAccountRequestId = value; }
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline void SetCreateAccountRequestId(Aws::String&& value) { m_createAccountRequestIdHasBeenSet = true; m_createAccountRequestId = std::move(value); }
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline void SetCreateAccountRequestId(const char* value) { m_createAccountRequestIdHasBeenSet = true; m_createAccountRequestId.assign(value); }
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline DescribeCreateAccountStatusRequest& WithCreateAccountRequestId(const Aws::String& value) { SetCreateAccountRequestId(value); return *this;}
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline DescribeCreateAccountStatusRequest& WithCreateAccountRequestId(Aws::String&& value) { SetCreateAccountRequestId(std::move(value)); return *this;}
/**
* <p>Specifies the <code>operationId</code> that uniquely identifies the request.
* You can get the ID from the response to an earlier <a>CreateAccount</a> request,
* or from the <a>ListCreateAccountStatus</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a create account
* request ID string requires "car-" followed by from 8 to 32 lowercase letters or
* digits.</p>
*/
inline DescribeCreateAccountStatusRequest& WithCreateAccountRequestId(const char* value) { SetCreateAccountRequestId(value); return *this;}
private:
Aws::String m_createAccountRequestId;
bool m_createAccountRequestIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/CreateAccountStatus.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribeCreateAccountStatusResult
{
public:
DescribeCreateAccountStatusResult();
DescribeCreateAccountStatusResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeCreateAccountStatusResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains the current status of an account creation
* request.</p>
*/
inline const CreateAccountStatus& GetCreateAccountStatus() const{ return m_createAccountStatus; }
/**
* <p>A structure that contains the current status of an account creation
* request.</p>
*/
inline void SetCreateAccountStatus(const CreateAccountStatus& value) { m_createAccountStatus = value; }
/**
* <p>A structure that contains the current status of an account creation
* request.</p>
*/
inline void SetCreateAccountStatus(CreateAccountStatus&& value) { m_createAccountStatus = std::move(value); }
/**
* <p>A structure that contains the current status of an account creation
* request.</p>
*/
inline DescribeCreateAccountStatusResult& WithCreateAccountStatus(const CreateAccountStatus& value) { SetCreateAccountStatus(value); return *this;}
/**
* <p>A structure that contains the current status of an account creation
* request.</p>
*/
inline DescribeCreateAccountStatusResult& WithCreateAccountStatus(CreateAccountStatus&& value) { SetCreateAccountStatus(std::move(value)); return *this;}
private:
CreateAccountStatus m_createAccountStatus;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,178 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/organizations/model/EffectivePolicyType.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DescribeEffectivePolicyRequest : public OrganizationsRequest
{
public:
DescribeEffectivePolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DescribeEffectivePolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The type of policy that you want information about. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline const EffectivePolicyType& GetPolicyType() const{ return m_policyType; }
/**
* <p>The type of policy that you want information about. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
/**
* <p>The type of policy that you want information about. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetPolicyType(const EffectivePolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
/**
* <p>The type of policy that you want information about. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetPolicyType(EffectivePolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); }
/**
* <p>The type of policy that you want information about. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline DescribeEffectivePolicyRequest& WithPolicyType(const EffectivePolicyType& value) { SetPolicyType(value); return *this;}
/**
* <p>The type of policy that you want information about. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline DescribeEffectivePolicyRequest& WithPolicyType(EffectivePolicyType&& value) { SetPolicyType(std::move(value)); return *this;}
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline const Aws::String& GetTargetId() const{ return m_targetId; }
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline bool TargetIdHasBeenSet() const { return m_targetIdHasBeenSet; }
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline void SetTargetId(const Aws::String& value) { m_targetIdHasBeenSet = true; m_targetId = value; }
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline void SetTargetId(Aws::String&& value) { m_targetIdHasBeenSet = true; m_targetId = std::move(value); }
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline void SetTargetId(const char* value) { m_targetIdHasBeenSet = true; m_targetId.assign(value); }
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline DescribeEffectivePolicyRequest& WithTargetId(const Aws::String& value) { SetTargetId(value); return *this;}
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline DescribeEffectivePolicyRequest& WithTargetId(Aws::String&& value) { SetTargetId(std::move(value)); return *this;}
/**
* <p>When you're signed in as the master account, specify the ID of the account
* that you want details about. Specifying an organization root or organizational
* unit (OU) as the target is not supported. </p>
*/
inline DescribeEffectivePolicyRequest& WithTargetId(const char* value) { SetTargetId(value); return *this;}
private:
EffectivePolicyType m_policyType;
bool m_policyTypeHasBeenSet;
Aws::String m_targetId;
bool m_targetIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/EffectivePolicy.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribeEffectivePolicyResult
{
public:
DescribeEffectivePolicyResult();
DescribeEffectivePolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeEffectivePolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The contents of the effective policy.</p>
*/
inline const EffectivePolicy& GetEffectivePolicy() const{ return m_effectivePolicy; }
/**
* <p>The contents of the effective policy.</p>
*/
inline void SetEffectivePolicy(const EffectivePolicy& value) { m_effectivePolicy = value; }
/**
* <p>The contents of the effective policy.</p>
*/
inline void SetEffectivePolicy(EffectivePolicy&& value) { m_effectivePolicy = std::move(value); }
/**
* <p>The contents of the effective policy.</p>
*/
inline DescribeEffectivePolicyResult& WithEffectivePolicy(const EffectivePolicy& value) { SetEffectivePolicy(value); return *this;}
/**
* <p>The contents of the effective policy.</p>
*/
inline DescribeEffectivePolicyResult& WithEffectivePolicy(EffectivePolicy&& value) { SetEffectivePolicy(std::move(value)); return *this;}
private:
EffectivePolicy m_effectivePolicy;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,125 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DescribeHandshakeRequest : public OrganizationsRequest
{
public:
DescribeHandshakeRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DescribeHandshake"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline const Aws::String& GetHandshakeId() const{ return m_handshakeId; }
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline bool HandshakeIdHasBeenSet() const { return m_handshakeIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(const Aws::String& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = value; }
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(Aws::String&& value) { m_handshakeIdHasBeenSet = true; m_handshakeId = std::move(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline void SetHandshakeId(const char* value) { m_handshakeIdHasBeenSet = true; m_handshakeId.assign(value); }
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline DescribeHandshakeRequest& WithHandshakeId(const Aws::String& value) { SetHandshakeId(value); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline DescribeHandshakeRequest& WithHandshakeId(Aws::String&& value) { SetHandshakeId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the handshake that you want information about.
* You can get the ID from the original call to <a>InviteAccountToOrganization</a>,
* or from a call to <a>ListHandshakesForAccount</a> or
* <a>ListHandshakesForOrganization</a>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lowercase letters or digits.</p>
*/
inline DescribeHandshakeRequest& WithHandshakeId(const char* value) { SetHandshakeId(value); return *this;}
private:
Aws::String m_handshakeId;
bool m_handshakeIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribeHandshakeResult
{
public:
DescribeHandshakeResult();
DescribeHandshakeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeHandshakeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains information about the specified handshake.</p>
*/
inline const Handshake& GetHandshake() const{ return m_handshake; }
/**
* <p>A structure that contains information about the specified handshake.</p>
*/
inline void SetHandshake(const Handshake& value) { m_handshake = value; }
/**
* <p>A structure that contains information about the specified handshake.</p>
*/
inline void SetHandshake(Handshake&& value) { m_handshake = std::move(value); }
/**
* <p>A structure that contains information about the specified handshake.</p>
*/
inline DescribeHandshakeResult& WithHandshake(const Handshake& value) { SetHandshake(value); return *this;}
/**
* <p>A structure that contains information about the specified handshake.</p>
*/
inline DescribeHandshakeResult& WithHandshake(Handshake&& value) { SetHandshake(std::move(value)); return *this;}
private:
Handshake m_handshake;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,92 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Organization.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribeOrganizationResult
{
public:
DescribeOrganizationResult();
DescribeOrganizationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeOrganizationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains information about the organization.</p>
* <p>The <code>AvailablePolicyTypes</code> part of the response is deprecated, and
* you shouldn't use it in your apps. It doesn't include any policy type supported
* by Organizations other than SCPs. To determine which policy types are enabled in
* your organization, use the <code> <a>ListRoots</a> </code> operation.</p>
*
*/
inline const Organization& GetOrganization() const{ return m_organization; }
/**
* <p>A structure that contains information about the organization.</p>
* <p>The <code>AvailablePolicyTypes</code> part of the response is deprecated, and
* you shouldn't use it in your apps. It doesn't include any policy type supported
* by Organizations other than SCPs. To determine which policy types are enabled in
* your organization, use the <code> <a>ListRoots</a> </code> operation.</p>
*
*/
inline void SetOrganization(const Organization& value) { m_organization = value; }
/**
* <p>A structure that contains information about the organization.</p>
* <p>The <code>AvailablePolicyTypes</code> part of the response is deprecated, and
* you shouldn't use it in your apps. It doesn't include any policy type supported
* by Organizations other than SCPs. To determine which policy types are enabled in
* your organization, use the <code> <a>ListRoots</a> </code> operation.</p>
*
*/
inline void SetOrganization(Organization&& value) { m_organization = std::move(value); }
/**
* <p>A structure that contains information about the organization.</p>
* <p>The <code>AvailablePolicyTypes</code> part of the response is deprecated, and
* you shouldn't use it in your apps. It doesn't include any policy type supported
* by Organizations other than SCPs. To determine which policy types are enabled in
* your organization, use the <code> <a>ListRoots</a> </code> operation.</p>
*
*/
inline DescribeOrganizationResult& WithOrganization(const Organization& value) { SetOrganization(value); return *this;}
/**
* <p>A structure that contains information about the organization.</p>
* <p>The <code>AvailablePolicyTypes</code> part of the response is deprecated, and
* you shouldn't use it in your apps. It doesn't include any policy type supported
* by Organizations other than SCPs. To determine which policy types are enabled in
* your organization, use the <code> <a>ListRoots</a> </code> operation.</p>
*
*/
inline DescribeOrganizationResult& WithOrganization(Organization&& value) { SetOrganization(std::move(value)); return *this;}
private:
Organization m_organization;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,133 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DescribeOrganizationalUnitRequest : public OrganizationsRequest
{
public:
DescribeOrganizationalUnitRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DescribeOrganizationalUnit"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline const Aws::String& GetOrganizationalUnitId() const{ return m_organizationalUnitId; }
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline bool OrganizationalUnitIdHasBeenSet() const { return m_organizationalUnitIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline void SetOrganizationalUnitId(const Aws::String& value) { m_organizationalUnitIdHasBeenSet = true; m_organizationalUnitId = value; }
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline void SetOrganizationalUnitId(Aws::String&& value) { m_organizationalUnitIdHasBeenSet = true; m_organizationalUnitId = std::move(value); }
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline void SetOrganizationalUnitId(const char* value) { m_organizationalUnitIdHasBeenSet = true; m_organizationalUnitId.assign(value); }
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline DescribeOrganizationalUnitRequest& WithOrganizationalUnitId(const Aws::String& value) { SetOrganizationalUnitId(value); return *this;}
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline DescribeOrganizationalUnitRequest& WithOrganizationalUnitId(Aws::String&& value) { SetOrganizationalUnitId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the organizational unit that you want details
* about. You can get the ID from the <a>ListOrganizationalUnitsForParent</a>
* operation.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for an organizational unit ID string requires "ou-" followed by from
* 4 to 32 lowercase letters or digits (the ID of the root that contains the OU).
* This string is followed by a second "-" dash and from 8 to 32 additional
* lowercase letters or digits.</p>
*/
inline DescribeOrganizationalUnitRequest& WithOrganizationalUnitId(const char* value) { SetOrganizationalUnitId(value); return *this;}
private:
Aws::String m_organizationalUnitId;
bool m_organizationalUnitIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/OrganizationalUnit.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribeOrganizationalUnitResult
{
public:
DescribeOrganizationalUnitResult();
DescribeOrganizationalUnitResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribeOrganizationalUnitResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the specified OU.</p>
*/
inline const OrganizationalUnit& GetOrganizationalUnit() const{ return m_organizationalUnit; }
/**
* <p>A structure that contains details about the specified OU.</p>
*/
inline void SetOrganizationalUnit(const OrganizationalUnit& value) { m_organizationalUnit = value; }
/**
* <p>A structure that contains details about the specified OU.</p>
*/
inline void SetOrganizationalUnit(OrganizationalUnit&& value) { m_organizationalUnit = std::move(value); }
/**
* <p>A structure that contains details about the specified OU.</p>
*/
inline DescribeOrganizationalUnitResult& WithOrganizationalUnit(const OrganizationalUnit& value) { SetOrganizationalUnit(value); return *this;}
/**
* <p>A structure that contains details about the specified OU.</p>
*/
inline DescribeOrganizationalUnitResult& WithOrganizationalUnit(OrganizationalUnit&& value) { SetOrganizationalUnit(std::move(value)); return *this;}
private:
OrganizationalUnit m_organizationalUnit;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,117 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DescribePolicyRequest : public OrganizationsRequest
{
public:
DescribePolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DescribePolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline const Aws::String& GetPolicyId() const{ return m_policyId; }
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline bool PolicyIdHasBeenSet() const { return m_policyIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const Aws::String& value) { m_policyIdHasBeenSet = true; m_policyId = value; }
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(Aws::String&& value) { m_policyIdHasBeenSet = true; m_policyId = std::move(value); }
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const char* value) { m_policyIdHasBeenSet = true; m_policyId.assign(value); }
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline DescribePolicyRequest& WithPolicyId(const Aws::String& value) { SetPolicyId(value); return *this;}
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline DescribePolicyRequest& WithPolicyId(Aws::String&& value) { SetPolicyId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the policy that you want details about. You can
* get the ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a>
* operations.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex
* pattern</a> for a policy ID string requires "p-" followed by from 8 to 128
* lowercase or uppercase letters, digits, or the underscore character (_).</p>
*/
inline DescribePolicyRequest& WithPolicyId(const char* value) { SetPolicyId(value); return *this;}
private:
Aws::String m_policyId;
bool m_policyIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,67 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Policy.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DescribePolicyResult
{
public:
DescribePolicyResult();
DescribePolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DescribePolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the specified policy.</p>
*/
inline const Policy& GetPolicy() const{ return m_policy; }
/**
* <p>A structure that contains details about the specified policy.</p>
*/
inline void SetPolicy(const Policy& value) { m_policy = value; }
/**
* <p>A structure that contains details about the specified policy.</p>
*/
inline void SetPolicy(Policy&& value) { m_policy = std::move(value); }
/**
* <p>A structure that contains details about the specified policy.</p>
*/
inline DescribePolicyResult& WithPolicy(const Policy& value) { SetPolicy(value); return *this;}
/**
* <p>A structure that contains details about the specified policy.</p>
*/
inline DescribePolicyResult& WithPolicy(Policy&& value) { SetPolicy(std::move(value)); return *this;}
private:
Policy m_policy;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,241 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DetachPolicyRequest : public OrganizationsRequest
{
public:
DetachPolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DetachPolicy"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline const Aws::String& GetPolicyId() const{ return m_policyId; }
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline bool PolicyIdHasBeenSet() const { return m_policyIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const Aws::String& value) { m_policyIdHasBeenSet = true; m_policyId = value; }
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(Aws::String&& value) { m_policyIdHasBeenSet = true; m_policyId = std::move(value); }
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline void SetPolicyId(const char* value) { m_policyIdHasBeenSet = true; m_policyId.assign(value); }
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline DetachPolicyRequest& WithPolicyId(const Aws::String& value) { SetPolicyId(value); return *this;}
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline DetachPolicyRequest& WithPolicyId(Aws::String&& value) { SetPolicyId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the policy you want to detach. You can get the
* ID from the <a>ListPolicies</a> or <a>ListPoliciesForTarget</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a policy
* ID string requires "p-" followed by from 8 to 128 lowercase or uppercase
* letters, digits, or the underscore character (_).</p>
*/
inline DetachPolicyRequest& WithPolicyId(const char* value) { SetPolicyId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline const Aws::String& GetTargetId() const{ return m_targetId; }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline bool TargetIdHasBeenSet() const { return m_targetIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetTargetId(const Aws::String& value) { m_targetIdHasBeenSet = true; m_targetId = value; }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetTargetId(Aws::String&& value) { m_targetIdHasBeenSet = true; m_targetId = std::move(value); }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetTargetId(const char* value) { m_targetIdHasBeenSet = true; m_targetId.assign(value); }
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline DetachPolicyRequest& WithTargetId(const Aws::String& value) { SetTargetId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline DetachPolicyRequest& WithTargetId(Aws::String&& value) { SetTargetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the root, OU, or account that you want to
* detach the policy from. You can get the ID from the <a>ListRoots</a>,
* <a>ListOrganizationalUnitsForParent</a>, or <a>ListAccounts</a> operations.</p>
* <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for a target
* ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b> - A
* string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Account</b> - A string that consists of exactly 12
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline DetachPolicyRequest& WithTargetId(const char* value) { SetTargetId(value); return *this;}
private:
Aws::String m_policyId;
bool m_policyIdHasBeenSet;
Aws::String m_targetId;
bool m_targetIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,101 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DisableAWSServiceAccessRequest : public OrganizationsRequest
{
public:
DisableAWSServiceAccessRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DisableAWSServiceAccess"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline const Aws::String& GetServicePrincipal() const{ return m_servicePrincipal; }
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline bool ServicePrincipalHasBeenSet() const { return m_servicePrincipalHasBeenSet; }
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const Aws::String& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = value; }
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(Aws::String&& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = std::move(value); }
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const char* value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal.assign(value); }
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline DisableAWSServiceAccessRequest& WithServicePrincipal(const Aws::String& value) { SetServicePrincipal(value); return *this;}
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline DisableAWSServiceAccessRequest& WithServicePrincipal(Aws::String&& value) { SetServicePrincipal(std::move(value)); return *this;}
/**
* <p>The service principal name of the AWS service for which you want to disable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline DisableAWSServiceAccessRequest& WithServicePrincipal(const char* value) { SetServicePrincipal(value); return *this;}
private:
Aws::String m_servicePrincipal;
bool m_servicePrincipalHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,198 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/PolicyType.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API DisablePolicyTypeRequest : public OrganizationsRequest
{
public:
DisablePolicyTypeRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DisablePolicyType"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline const Aws::String& GetRootId() const{ return m_rootId; }
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline bool RootIdHasBeenSet() const { return m_rootIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline void SetRootId(const Aws::String& value) { m_rootIdHasBeenSet = true; m_rootId = value; }
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline void SetRootId(Aws::String&& value) { m_rootIdHasBeenSet = true; m_rootId = std::move(value); }
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline void SetRootId(const char* value) { m_rootIdHasBeenSet = true; m_rootId.assign(value); }
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline DisablePolicyTypeRequest& WithRootId(const Aws::String& value) { SetRootId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline DisablePolicyTypeRequest& WithRootId(Aws::String&& value) { SetRootId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the root in which you want to disable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline DisablePolicyTypeRequest& WithRootId(const char* value) { SetRootId(value); return *this;}
/**
* <p>The policy type that you want to disable in this root. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline const PolicyType& GetPolicyType() const{ return m_policyType; }
/**
* <p>The policy type that you want to disable in this root. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
/**
* <p>The policy type that you want to disable in this root. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetPolicyType(const PolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
/**
* <p>The policy type that you want to disable in this root. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetPolicyType(PolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); }
/**
* <p>The policy type that you want to disable in this root. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline DisablePolicyTypeRequest& WithPolicyType(const PolicyType& value) { SetPolicyType(value); return *this;}
/**
* <p>The policy type that you want to disable in this root. You can specify one of
* the following values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline DisablePolicyTypeRequest& WithPolicyType(PolicyType&& value) { SetPolicyType(std::move(value)); return *this;}
private:
Aws::String m_rootId;
bool m_rootIdHasBeenSet;
PolicyType m_policyType;
bool m_policyTypeHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Root.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API DisablePolicyTypeResult
{
public:
DisablePolicyTypeResult();
DisablePolicyTypeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DisablePolicyTypeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline const Root& GetRoot() const{ return m_root; }
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline void SetRoot(const Root& value) { m_root = value; }
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline void SetRoot(Root&& value) { m_root = std::move(value); }
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline DisablePolicyTypeResult& WithRoot(const Root& value) { SetRoot(value); return *this;}
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline DisablePolicyTypeResult& WithRoot(Root&& value) { SetRoot(std::move(value)); return *this;}
private:
Root m_root;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,204 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
#include <aws/organizations/model/EffectivePolicyType.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains rules to be applied to the affected accounts. The effective policy
* is the aggregation of any policies the account inherits, plus any policy
* directly attached to the account.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/EffectivePolicy">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API EffectivePolicy
{
public:
EffectivePolicy();
EffectivePolicy(Aws::Utils::Json::JsonView jsonValue);
EffectivePolicy& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The text content of the policy.</p>
*/
inline const Aws::String& GetPolicyContent() const{ return m_policyContent; }
/**
* <p>The text content of the policy.</p>
*/
inline bool PolicyContentHasBeenSet() const { return m_policyContentHasBeenSet; }
/**
* <p>The text content of the policy.</p>
*/
inline void SetPolicyContent(const Aws::String& value) { m_policyContentHasBeenSet = true; m_policyContent = value; }
/**
* <p>The text content of the policy.</p>
*/
inline void SetPolicyContent(Aws::String&& value) { m_policyContentHasBeenSet = true; m_policyContent = std::move(value); }
/**
* <p>The text content of the policy.</p>
*/
inline void SetPolicyContent(const char* value) { m_policyContentHasBeenSet = true; m_policyContent.assign(value); }
/**
* <p>The text content of the policy.</p>
*/
inline EffectivePolicy& WithPolicyContent(const Aws::String& value) { SetPolicyContent(value); return *this;}
/**
* <p>The text content of the policy.</p>
*/
inline EffectivePolicy& WithPolicyContent(Aws::String&& value) { SetPolicyContent(std::move(value)); return *this;}
/**
* <p>The text content of the policy.</p>
*/
inline EffectivePolicy& WithPolicyContent(const char* value) { SetPolicyContent(value); return *this;}
/**
* <p>The time of the last update to this policy.</p>
*/
inline const Aws::Utils::DateTime& GetLastUpdatedTimestamp() const{ return m_lastUpdatedTimestamp; }
/**
* <p>The time of the last update to this policy.</p>
*/
inline bool LastUpdatedTimestampHasBeenSet() const { return m_lastUpdatedTimestampHasBeenSet; }
/**
* <p>The time of the last update to this policy.</p>
*/
inline void SetLastUpdatedTimestamp(const Aws::Utils::DateTime& value) { m_lastUpdatedTimestampHasBeenSet = true; m_lastUpdatedTimestamp = value; }
/**
* <p>The time of the last update to this policy.</p>
*/
inline void SetLastUpdatedTimestamp(Aws::Utils::DateTime&& value) { m_lastUpdatedTimestampHasBeenSet = true; m_lastUpdatedTimestamp = std::move(value); }
/**
* <p>The time of the last update to this policy.</p>
*/
inline EffectivePolicy& WithLastUpdatedTimestamp(const Aws::Utils::DateTime& value) { SetLastUpdatedTimestamp(value); return *this;}
/**
* <p>The time of the last update to this policy.</p>
*/
inline EffectivePolicy& WithLastUpdatedTimestamp(Aws::Utils::DateTime&& value) { SetLastUpdatedTimestamp(std::move(value)); return *this;}
/**
* <p>The account ID of the policy target. </p>
*/
inline const Aws::String& GetTargetId() const{ return m_targetId; }
/**
* <p>The account ID of the policy target. </p>
*/
inline bool TargetIdHasBeenSet() const { return m_targetIdHasBeenSet; }
/**
* <p>The account ID of the policy target. </p>
*/
inline void SetTargetId(const Aws::String& value) { m_targetIdHasBeenSet = true; m_targetId = value; }
/**
* <p>The account ID of the policy target. </p>
*/
inline void SetTargetId(Aws::String&& value) { m_targetIdHasBeenSet = true; m_targetId = std::move(value); }
/**
* <p>The account ID of the policy target. </p>
*/
inline void SetTargetId(const char* value) { m_targetIdHasBeenSet = true; m_targetId.assign(value); }
/**
* <p>The account ID of the policy target. </p>
*/
inline EffectivePolicy& WithTargetId(const Aws::String& value) { SetTargetId(value); return *this;}
/**
* <p>The account ID of the policy target. </p>
*/
inline EffectivePolicy& WithTargetId(Aws::String&& value) { SetTargetId(std::move(value)); return *this;}
/**
* <p>The account ID of the policy target. </p>
*/
inline EffectivePolicy& WithTargetId(const char* value) { SetTargetId(value); return *this;}
/**
* <p>The policy type.</p>
*/
inline const EffectivePolicyType& GetPolicyType() const{ return m_policyType; }
/**
* <p>The policy type.</p>
*/
inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
/**
* <p>The policy type.</p>
*/
inline void SetPolicyType(const EffectivePolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
/**
* <p>The policy type.</p>
*/
inline void SetPolicyType(EffectivePolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); }
/**
* <p>The policy type.</p>
*/
inline EffectivePolicy& WithPolicyType(const EffectivePolicyType& value) { SetPolicyType(value); return *this;}
/**
* <p>The policy type.</p>
*/
inline EffectivePolicy& WithPolicyType(EffectivePolicyType&& value) { SetPolicyType(std::move(value)); return *this;}
private:
Aws::String m_policyContent;
bool m_policyContentHasBeenSet;
Aws::Utils::DateTime m_lastUpdatedTimestamp;
bool m_lastUpdatedTimestampHasBeenSet;
Aws::String m_targetId;
bool m_targetIdHasBeenSet;
EffectivePolicyType m_policyType;
bool m_policyTypeHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,32 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class EffectivePolicyType
{
NOT_SET,
TAG_POLICY,
BACKUP_POLICY,
AISERVICES_OPT_OUT_POLICY
};
namespace EffectivePolicyTypeMapper
{
AWS_ORGANIZATIONS_API EffectivePolicyType GetEffectivePolicyTypeForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForEffectivePolicyType(EffectivePolicyType value);
} // namespace EffectivePolicyTypeMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,101 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API EnableAWSServiceAccessRequest : public OrganizationsRequest
{
public:
EnableAWSServiceAccessRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "EnableAWSServiceAccess"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline const Aws::String& GetServicePrincipal() const{ return m_servicePrincipal; }
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline bool ServicePrincipalHasBeenSet() const { return m_servicePrincipalHasBeenSet; }
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const Aws::String& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = value; }
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(Aws::String&& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = std::move(value); }
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const char* value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal.assign(value); }
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline EnableAWSServiceAccessRequest& WithServicePrincipal(const Aws::String& value) { SetServicePrincipal(value); return *this;}
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline EnableAWSServiceAccessRequest& WithServicePrincipal(Aws::String&& value) { SetServicePrincipal(std::move(value)); return *this;}
/**
* <p>The service principal name of the AWS service for which you want to enable
* integration with your organization. This is typically in the form of a URL, such
* as <code> <i>service-abbreviation</i>.amazonaws.com</code>.</p>
*/
inline EnableAWSServiceAccessRequest& WithServicePrincipal(const char* value) { SetServicePrincipal(value); return *this;}
private:
Aws::String m_servicePrincipal;
bool m_servicePrincipalHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,38 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API EnableAllFeaturesRequest : public OrganizationsRequest
{
public:
EnableAllFeaturesRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "EnableAllFeatures"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API EnableAllFeaturesResult
{
public:
EnableAllFeaturesResult();
EnableAllFeaturesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
EnableAllFeaturesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the handshake created to support this
* request to enable all features in the organization.</p>
*/
inline const Handshake& GetHandshake() const{ return m_handshake; }
/**
* <p>A structure that contains details about the handshake created to support this
* request to enable all features in the organization.</p>
*/
inline void SetHandshake(const Handshake& value) { m_handshake = value; }
/**
* <p>A structure that contains details about the handshake created to support this
* request to enable all features in the organization.</p>
*/
inline void SetHandshake(Handshake&& value) { m_handshake = std::move(value); }
/**
* <p>A structure that contains details about the handshake created to support this
* request to enable all features in the organization.</p>
*/
inline EnableAllFeaturesResult& WithHandshake(const Handshake& value) { SetHandshake(value); return *this;}
/**
* <p>A structure that contains details about the handshake created to support this
* request to enable all features in the organization.</p>
*/
inline EnableAllFeaturesResult& WithHandshake(Handshake&& value) { SetHandshake(std::move(value)); return *this;}
private:
Handshake m_handshake;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,198 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/PolicyType.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API EnablePolicyTypeRequest : public OrganizationsRequest
{
public:
EnablePolicyTypeRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "EnablePolicyType"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline const Aws::String& GetRootId() const{ return m_rootId; }
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline bool RootIdHasBeenSet() const { return m_rootIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline void SetRootId(const Aws::String& value) { m_rootIdHasBeenSet = true; m_rootId = value; }
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline void SetRootId(Aws::String&& value) { m_rootIdHasBeenSet = true; m_rootId = std::move(value); }
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline void SetRootId(const char* value) { m_rootIdHasBeenSet = true; m_rootId.assign(value); }
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline EnablePolicyTypeRequest& WithRootId(const Aws::String& value) { SetRootId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline EnablePolicyTypeRequest& WithRootId(Aws::String&& value) { SetRootId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the root in which you want to enable a policy
* type. You can get the ID from the <a>ListRoots</a> operation.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for a root ID string
* requires "r-" followed by from 4 to 32 lowercase letters or digits.</p>
*/
inline EnablePolicyTypeRequest& WithRootId(const char* value) { SetRootId(value); return *this;}
/**
* <p>The policy type that you want to enable. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline const PolicyType& GetPolicyType() const{ return m_policyType; }
/**
* <p>The policy type that you want to enable. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
/**
* <p>The policy type that you want to enable. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetPolicyType(const PolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
/**
* <p>The policy type that you want to enable. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline void SetPolicyType(PolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); }
/**
* <p>The policy type that you want to enable. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline EnablePolicyTypeRequest& WithPolicyType(const PolicyType& value) { SetPolicyType(value); return *this;}
/**
* <p>The policy type that you want to enable. You can specify one of the following
* values:</p> <ul> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html">AISERVICES_OPT_OUT_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_backup.html">BACKUP_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html">SERVICE_CONTROL_POLICY</a>
* </p> </li> <li> <p> <a
* href="http://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html">TAG_POLICY</a>
* </p> </li> </ul>
*/
inline EnablePolicyTypeRequest& WithPolicyType(PolicyType&& value) { SetPolicyType(std::move(value)); return *this;}
private:
Aws::String m_rootId;
bool m_rootIdHasBeenSet;
PolicyType m_policyType;
bool m_policyTypeHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Root.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API EnablePolicyTypeResult
{
public:
EnablePolicyTypeResult();
EnablePolicyTypeResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
EnablePolicyTypeResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline const Root& GetRoot() const{ return m_root; }
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline void SetRoot(const Root& value) { m_root = value; }
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline void SetRoot(Root&& value) { m_root = std::move(value); }
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline EnablePolicyTypeResult& WithRoot(const Root& value) { SetRoot(value); return *this;}
/**
* <p>A structure that shows the root with the updated list of enabled policy
* types.</p>
*/
inline EnablePolicyTypeResult& WithRoot(Root&& value) { SetRoot(std::move(value)); return *this;}
private:
Root m_root;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,139 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>A structure that contains details of a service principal that represents an
* AWS service that is enabled to integrate with AWS Organizations.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/EnabledServicePrincipal">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API EnabledServicePrincipal
{
public:
EnabledServicePrincipal();
EnabledServicePrincipal(Aws::Utils::Json::JsonView jsonValue);
EnabledServicePrincipal& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline const Aws::String& GetServicePrincipal() const{ return m_servicePrincipal; }
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline bool ServicePrincipalHasBeenSet() const { return m_servicePrincipalHasBeenSet; }
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const Aws::String& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = value; }
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(Aws::String&& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = std::move(value); }
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline void SetServicePrincipal(const char* value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal.assign(value); }
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline EnabledServicePrincipal& WithServicePrincipal(const Aws::String& value) { SetServicePrincipal(value); return *this;}
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline EnabledServicePrincipal& WithServicePrincipal(Aws::String&& value) { SetServicePrincipal(std::move(value)); return *this;}
/**
* <p>The name of the service principal. This is typically in the form of a URL,
* such as: <code> <i>servicename</i>.amazonaws.com</code>.</p>
*/
inline EnabledServicePrincipal& WithServicePrincipal(const char* value) { SetServicePrincipal(value); return *this;}
/**
* <p>The date that the service principal was enabled for integration with AWS
* Organizations.</p>
*/
inline const Aws::Utils::DateTime& GetDateEnabled() const{ return m_dateEnabled; }
/**
* <p>The date that the service principal was enabled for integration with AWS
* Organizations.</p>
*/
inline bool DateEnabledHasBeenSet() const { return m_dateEnabledHasBeenSet; }
/**
* <p>The date that the service principal was enabled for integration with AWS
* Organizations.</p>
*/
inline void SetDateEnabled(const Aws::Utils::DateTime& value) { m_dateEnabledHasBeenSet = true; m_dateEnabled = value; }
/**
* <p>The date that the service principal was enabled for integration with AWS
* Organizations.</p>
*/
inline void SetDateEnabled(Aws::Utils::DateTime&& value) { m_dateEnabledHasBeenSet = true; m_dateEnabled = std::move(value); }
/**
* <p>The date that the service principal was enabled for integration with AWS
* Organizations.</p>
*/
inline EnabledServicePrincipal& WithDateEnabled(const Aws::Utils::DateTime& value) { SetDateEnabled(value); return *this;}
/**
* <p>The date that the service principal was enabled for integration with AWS
* Organizations.</p>
*/
inline EnabledServicePrincipal& WithDateEnabled(Aws::Utils::DateTime&& value) { SetDateEnabled(std::move(value)); return *this;}
private:
Aws::String m_servicePrincipal;
bool m_servicePrincipalHasBeenSet;
Aws::Utils::DateTime m_dateEnabled;
bool m_dateEnabledHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,612 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/organizations/model/HandshakeState.h>
#include <aws/core/utils/DateTime.h>
#include <aws/organizations/model/ActionType.h>
#include <aws/organizations/model/HandshakeParty.h>
#include <aws/organizations/model/HandshakeResource.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains information that must be exchanged to securely establish a
* relationship between two accounts (an <i>originator</i> and a <i>recipient</i>).
* For example, when a master account (the originator) invites another account (the
* recipient) to join its organization, the two accounts exchange information as a
* series of handshake requests and responses.</p> <p> <b>Note:</b> Handshakes that
* are CANCELED, ACCEPTED, or DECLINED show up in lists for only 30 days after
* entering that state After that they are deleted.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/Handshake">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API Handshake
{
public:
Handshake();
Handshake(Aws::Utils::Json::JsonView jsonValue);
Handshake& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline Handshake& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline Handshake& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of a handshake. The originating account creates
* the ID when it initiates the handshake.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline Handshake& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline Handshake& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline Handshake& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of a handshake.</p> <p>For more information
* about ARNs in Organizations, see <a
* href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_permissions.html#orgs-permissions-arns">ARN
* Formats Supported by Organizations</a> in the <i>AWS Organizations User
* Guide</i>.</p>
*/
inline Handshake& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline const Aws::Vector<HandshakeParty>& GetParties() const{ return m_parties; }
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline bool PartiesHasBeenSet() const { return m_partiesHasBeenSet; }
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline void SetParties(const Aws::Vector<HandshakeParty>& value) { m_partiesHasBeenSet = true; m_parties = value; }
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline void SetParties(Aws::Vector<HandshakeParty>&& value) { m_partiesHasBeenSet = true; m_parties = std::move(value); }
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline Handshake& WithParties(const Aws::Vector<HandshakeParty>& value) { SetParties(value); return *this;}
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline Handshake& WithParties(Aws::Vector<HandshakeParty>&& value) { SetParties(std::move(value)); return *this;}
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline Handshake& AddParties(const HandshakeParty& value) { m_partiesHasBeenSet = true; m_parties.push_back(value); return *this; }
/**
* <p>Information about the two accounts that are participating in the
* handshake.</p>
*/
inline Handshake& AddParties(HandshakeParty&& value) { m_partiesHasBeenSet = true; m_parties.push_back(std::move(value)); return *this; }
/**
* <p>The current state of the handshake. Use the state to trace the flow of the
* handshake through the process from its creation to its acceptance. The meaning
* of each of the valid values is as follows:</p> <ul> <li> <p> <b>REQUESTED</b>:
* This handshake was sent to multiple recipients (applicable to only some
* handshake types) and not all recipients have responded yet. The request stays in
* this state until all recipients respond.</p> </li> <li> <p> <b>OPEN</b>: This
* handshake was sent to multiple recipients (applicable to only some policy types)
* and all recipients have responded, allowing the originator to complete the
* handshake action.</p> </li> <li> <p> <b>CANCELED</b>: This handshake is no
* longer active because it was canceled by the originating account.</p> </li> <li>
* <p> <b>ACCEPTED</b>: This handshake is complete because it has been accepted by
* the recipient.</p> </li> <li> <p> <b>DECLINED</b>: This handshake is no longer
* active because it was declined by the recipient account.</p> </li> <li> <p>
* <b>EXPIRED</b>: This handshake is no longer active because the originator did
* not receive a response of any kind from the recipient before the expiration time
* (15 days).</p> </li> </ul>
*/
inline const HandshakeState& GetState() const{ return m_state; }
/**
* <p>The current state of the handshake. Use the state to trace the flow of the
* handshake through the process from its creation to its acceptance. The meaning
* of each of the valid values is as follows:</p> <ul> <li> <p> <b>REQUESTED</b>:
* This handshake was sent to multiple recipients (applicable to only some
* handshake types) and not all recipients have responded yet. The request stays in
* this state until all recipients respond.</p> </li> <li> <p> <b>OPEN</b>: This
* handshake was sent to multiple recipients (applicable to only some policy types)
* and all recipients have responded, allowing the originator to complete the
* handshake action.</p> </li> <li> <p> <b>CANCELED</b>: This handshake is no
* longer active because it was canceled by the originating account.</p> </li> <li>
* <p> <b>ACCEPTED</b>: This handshake is complete because it has been accepted by
* the recipient.</p> </li> <li> <p> <b>DECLINED</b>: This handshake is no longer
* active because it was declined by the recipient account.</p> </li> <li> <p>
* <b>EXPIRED</b>: This handshake is no longer active because the originator did
* not receive a response of any kind from the recipient before the expiration time
* (15 days).</p> </li> </ul>
*/
inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
/**
* <p>The current state of the handshake. Use the state to trace the flow of the
* handshake through the process from its creation to its acceptance. The meaning
* of each of the valid values is as follows:</p> <ul> <li> <p> <b>REQUESTED</b>:
* This handshake was sent to multiple recipients (applicable to only some
* handshake types) and not all recipients have responded yet. The request stays in
* this state until all recipients respond.</p> </li> <li> <p> <b>OPEN</b>: This
* handshake was sent to multiple recipients (applicable to only some policy types)
* and all recipients have responded, allowing the originator to complete the
* handshake action.</p> </li> <li> <p> <b>CANCELED</b>: This handshake is no
* longer active because it was canceled by the originating account.</p> </li> <li>
* <p> <b>ACCEPTED</b>: This handshake is complete because it has been accepted by
* the recipient.</p> </li> <li> <p> <b>DECLINED</b>: This handshake is no longer
* active because it was declined by the recipient account.</p> </li> <li> <p>
* <b>EXPIRED</b>: This handshake is no longer active because the originator did
* not receive a response of any kind from the recipient before the expiration time
* (15 days).</p> </li> </ul>
*/
inline void SetState(const HandshakeState& value) { m_stateHasBeenSet = true; m_state = value; }
/**
* <p>The current state of the handshake. Use the state to trace the flow of the
* handshake through the process from its creation to its acceptance. The meaning
* of each of the valid values is as follows:</p> <ul> <li> <p> <b>REQUESTED</b>:
* This handshake was sent to multiple recipients (applicable to only some
* handshake types) and not all recipients have responded yet. The request stays in
* this state until all recipients respond.</p> </li> <li> <p> <b>OPEN</b>: This
* handshake was sent to multiple recipients (applicable to only some policy types)
* and all recipients have responded, allowing the originator to complete the
* handshake action.</p> </li> <li> <p> <b>CANCELED</b>: This handshake is no
* longer active because it was canceled by the originating account.</p> </li> <li>
* <p> <b>ACCEPTED</b>: This handshake is complete because it has been accepted by
* the recipient.</p> </li> <li> <p> <b>DECLINED</b>: This handshake is no longer
* active because it was declined by the recipient account.</p> </li> <li> <p>
* <b>EXPIRED</b>: This handshake is no longer active because the originator did
* not receive a response of any kind from the recipient before the expiration time
* (15 days).</p> </li> </ul>
*/
inline void SetState(HandshakeState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
/**
* <p>The current state of the handshake. Use the state to trace the flow of the
* handshake through the process from its creation to its acceptance. The meaning
* of each of the valid values is as follows:</p> <ul> <li> <p> <b>REQUESTED</b>:
* This handshake was sent to multiple recipients (applicable to only some
* handshake types) and not all recipients have responded yet. The request stays in
* this state until all recipients respond.</p> </li> <li> <p> <b>OPEN</b>: This
* handshake was sent to multiple recipients (applicable to only some policy types)
* and all recipients have responded, allowing the originator to complete the
* handshake action.</p> </li> <li> <p> <b>CANCELED</b>: This handshake is no
* longer active because it was canceled by the originating account.</p> </li> <li>
* <p> <b>ACCEPTED</b>: This handshake is complete because it has been accepted by
* the recipient.</p> </li> <li> <p> <b>DECLINED</b>: This handshake is no longer
* active because it was declined by the recipient account.</p> </li> <li> <p>
* <b>EXPIRED</b>: This handshake is no longer active because the originator did
* not receive a response of any kind from the recipient before the expiration time
* (15 days).</p> </li> </ul>
*/
inline Handshake& WithState(const HandshakeState& value) { SetState(value); return *this;}
/**
* <p>The current state of the handshake. Use the state to trace the flow of the
* handshake through the process from its creation to its acceptance. The meaning
* of each of the valid values is as follows:</p> <ul> <li> <p> <b>REQUESTED</b>:
* This handshake was sent to multiple recipients (applicable to only some
* handshake types) and not all recipients have responded yet. The request stays in
* this state until all recipients respond.</p> </li> <li> <p> <b>OPEN</b>: This
* handshake was sent to multiple recipients (applicable to only some policy types)
* and all recipients have responded, allowing the originator to complete the
* handshake action.</p> </li> <li> <p> <b>CANCELED</b>: This handshake is no
* longer active because it was canceled by the originating account.</p> </li> <li>
* <p> <b>ACCEPTED</b>: This handshake is complete because it has been accepted by
* the recipient.</p> </li> <li> <p> <b>DECLINED</b>: This handshake is no longer
* active because it was declined by the recipient account.</p> </li> <li> <p>
* <b>EXPIRED</b>: This handshake is no longer active because the originator did
* not receive a response of any kind from the recipient before the expiration time
* (15 days).</p> </li> </ul>
*/
inline Handshake& WithState(HandshakeState&& value) { SetState(std::move(value)); return *this;}
/**
* <p>The date and time that the handshake request was made.</p>
*/
inline const Aws::Utils::DateTime& GetRequestedTimestamp() const{ return m_requestedTimestamp; }
/**
* <p>The date and time that the handshake request was made.</p>
*/
inline bool RequestedTimestampHasBeenSet() const { return m_requestedTimestampHasBeenSet; }
/**
* <p>The date and time that the handshake request was made.</p>
*/
inline void SetRequestedTimestamp(const Aws::Utils::DateTime& value) { m_requestedTimestampHasBeenSet = true; m_requestedTimestamp = value; }
/**
* <p>The date and time that the handshake request was made.</p>
*/
inline void SetRequestedTimestamp(Aws::Utils::DateTime&& value) { m_requestedTimestampHasBeenSet = true; m_requestedTimestamp = std::move(value); }
/**
* <p>The date and time that the handshake request was made.</p>
*/
inline Handshake& WithRequestedTimestamp(const Aws::Utils::DateTime& value) { SetRequestedTimestamp(value); return *this;}
/**
* <p>The date and time that the handshake request was made.</p>
*/
inline Handshake& WithRequestedTimestamp(Aws::Utils::DateTime&& value) { SetRequestedTimestamp(std::move(value)); return *this;}
/**
* <p>The date and time that the handshake expires. If the recipient of the
* handshake request fails to respond before the specified date and time, the
* handshake becomes inactive and is no longer valid.</p>
*/
inline const Aws::Utils::DateTime& GetExpirationTimestamp() const{ return m_expirationTimestamp; }
/**
* <p>The date and time that the handshake expires. If the recipient of the
* handshake request fails to respond before the specified date and time, the
* handshake becomes inactive and is no longer valid.</p>
*/
inline bool ExpirationTimestampHasBeenSet() const { return m_expirationTimestampHasBeenSet; }
/**
* <p>The date and time that the handshake expires. If the recipient of the
* handshake request fails to respond before the specified date and time, the
* handshake becomes inactive and is no longer valid.</p>
*/
inline void SetExpirationTimestamp(const Aws::Utils::DateTime& value) { m_expirationTimestampHasBeenSet = true; m_expirationTimestamp = value; }
/**
* <p>The date and time that the handshake expires. If the recipient of the
* handshake request fails to respond before the specified date and time, the
* handshake becomes inactive and is no longer valid.</p>
*/
inline void SetExpirationTimestamp(Aws::Utils::DateTime&& value) { m_expirationTimestampHasBeenSet = true; m_expirationTimestamp = std::move(value); }
/**
* <p>The date and time that the handshake expires. If the recipient of the
* handshake request fails to respond before the specified date and time, the
* handshake becomes inactive and is no longer valid.</p>
*/
inline Handshake& WithExpirationTimestamp(const Aws::Utils::DateTime& value) { SetExpirationTimestamp(value); return *this;}
/**
* <p>The date and time that the handshake expires. If the recipient of the
* handshake request fails to respond before the specified date and time, the
* handshake becomes inactive and is no longer valid.</p>
*/
inline Handshake& WithExpirationTimestamp(Aws::Utils::DateTime&& value) { SetExpirationTimestamp(std::move(value)); return *this;}
/**
* <p>The type of handshake, indicating what action occurs when the recipient
* accepts the handshake. The following handshake types are supported:</p> <ul>
* <li> <p> <b>INVITE</b>: This type of handshake represents a request to join an
* organization. It is always sent from the master account to only non-member
* accounts.</p> </li> <li> <p> <b>ENABLE_ALL_FEATURES</b>: This type of handshake
* represents a request to enable all features in an organization. It is always
* sent from the master account to only <i>invited</i> member accounts. Created
* accounts do not receive this because those accounts were created by the
* organization's master account and approval is inferred.</p> </li> <li> <p>
* <b>APPROVE_ALL_FEATURES</b>: This type of handshake is sent from the
* Organizations service when all member accounts have approved the
* <code>ENABLE_ALL_FEATURES</code> invitation. It is sent only to the master
* account and signals the master that it can finalize the process to enable all
* features.</p> </li> </ul>
*/
inline const ActionType& GetAction() const{ return m_action; }
/**
* <p>The type of handshake, indicating what action occurs when the recipient
* accepts the handshake. The following handshake types are supported:</p> <ul>
* <li> <p> <b>INVITE</b>: This type of handshake represents a request to join an
* organization. It is always sent from the master account to only non-member
* accounts.</p> </li> <li> <p> <b>ENABLE_ALL_FEATURES</b>: This type of handshake
* represents a request to enable all features in an organization. It is always
* sent from the master account to only <i>invited</i> member accounts. Created
* accounts do not receive this because those accounts were created by the
* organization's master account and approval is inferred.</p> </li> <li> <p>
* <b>APPROVE_ALL_FEATURES</b>: This type of handshake is sent from the
* Organizations service when all member accounts have approved the
* <code>ENABLE_ALL_FEATURES</code> invitation. It is sent only to the master
* account and signals the master that it can finalize the process to enable all
* features.</p> </li> </ul>
*/
inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
/**
* <p>The type of handshake, indicating what action occurs when the recipient
* accepts the handshake. The following handshake types are supported:</p> <ul>
* <li> <p> <b>INVITE</b>: This type of handshake represents a request to join an
* organization. It is always sent from the master account to only non-member
* accounts.</p> </li> <li> <p> <b>ENABLE_ALL_FEATURES</b>: This type of handshake
* represents a request to enable all features in an organization. It is always
* sent from the master account to only <i>invited</i> member accounts. Created
* accounts do not receive this because those accounts were created by the
* organization's master account and approval is inferred.</p> </li> <li> <p>
* <b>APPROVE_ALL_FEATURES</b>: This type of handshake is sent from the
* Organizations service when all member accounts have approved the
* <code>ENABLE_ALL_FEATURES</code> invitation. It is sent only to the master
* account and signals the master that it can finalize the process to enable all
* features.</p> </li> </ul>
*/
inline void SetAction(const ActionType& value) { m_actionHasBeenSet = true; m_action = value; }
/**
* <p>The type of handshake, indicating what action occurs when the recipient
* accepts the handshake. The following handshake types are supported:</p> <ul>
* <li> <p> <b>INVITE</b>: This type of handshake represents a request to join an
* organization. It is always sent from the master account to only non-member
* accounts.</p> </li> <li> <p> <b>ENABLE_ALL_FEATURES</b>: This type of handshake
* represents a request to enable all features in an organization. It is always
* sent from the master account to only <i>invited</i> member accounts. Created
* accounts do not receive this because those accounts were created by the
* organization's master account and approval is inferred.</p> </li> <li> <p>
* <b>APPROVE_ALL_FEATURES</b>: This type of handshake is sent from the
* Organizations service when all member accounts have approved the
* <code>ENABLE_ALL_FEATURES</code> invitation. It is sent only to the master
* account and signals the master that it can finalize the process to enable all
* features.</p> </li> </ul>
*/
inline void SetAction(ActionType&& value) { m_actionHasBeenSet = true; m_action = std::move(value); }
/**
* <p>The type of handshake, indicating what action occurs when the recipient
* accepts the handshake. The following handshake types are supported:</p> <ul>
* <li> <p> <b>INVITE</b>: This type of handshake represents a request to join an
* organization. It is always sent from the master account to only non-member
* accounts.</p> </li> <li> <p> <b>ENABLE_ALL_FEATURES</b>: This type of handshake
* represents a request to enable all features in an organization. It is always
* sent from the master account to only <i>invited</i> member accounts. Created
* accounts do not receive this because those accounts were created by the
* organization's master account and approval is inferred.</p> </li> <li> <p>
* <b>APPROVE_ALL_FEATURES</b>: This type of handshake is sent from the
* Organizations service when all member accounts have approved the
* <code>ENABLE_ALL_FEATURES</code> invitation. It is sent only to the master
* account and signals the master that it can finalize the process to enable all
* features.</p> </li> </ul>
*/
inline Handshake& WithAction(const ActionType& value) { SetAction(value); return *this;}
/**
* <p>The type of handshake, indicating what action occurs when the recipient
* accepts the handshake. The following handshake types are supported:</p> <ul>
* <li> <p> <b>INVITE</b>: This type of handshake represents a request to join an
* organization. It is always sent from the master account to only non-member
* accounts.</p> </li> <li> <p> <b>ENABLE_ALL_FEATURES</b>: This type of handshake
* represents a request to enable all features in an organization. It is always
* sent from the master account to only <i>invited</i> member accounts. Created
* accounts do not receive this because those accounts were created by the
* organization's master account and approval is inferred.</p> </li> <li> <p>
* <b>APPROVE_ALL_FEATURES</b>: This type of handshake is sent from the
* Organizations service when all member accounts have approved the
* <code>ENABLE_ALL_FEATURES</code> invitation. It is sent only to the master
* account and signals the master that it can finalize the process to enable all
* features.</p> </li> </ul>
*/
inline Handshake& WithAction(ActionType&& value) { SetAction(std::move(value)); return *this;}
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline const Aws::Vector<HandshakeResource>& GetResources() const{ return m_resources; }
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline bool ResourcesHasBeenSet() const { return m_resourcesHasBeenSet; }
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline void SetResources(const Aws::Vector<HandshakeResource>& value) { m_resourcesHasBeenSet = true; m_resources = value; }
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline void SetResources(Aws::Vector<HandshakeResource>&& value) { m_resourcesHasBeenSet = true; m_resources = std::move(value); }
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline Handshake& WithResources(const Aws::Vector<HandshakeResource>& value) { SetResources(value); return *this;}
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline Handshake& WithResources(Aws::Vector<HandshakeResource>&& value) { SetResources(std::move(value)); return *this;}
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline Handshake& AddResources(const HandshakeResource& value) { m_resourcesHasBeenSet = true; m_resources.push_back(value); return *this; }
/**
* <p>Additional information that is needed to process the handshake.</p>
*/
inline Handshake& AddResources(HandshakeResource&& value) { m_resourcesHasBeenSet = true; m_resources.push_back(std::move(value)); return *this; }
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::Vector<HandshakeParty> m_parties;
bool m_partiesHasBeenSet;
HandshakeState m_state;
bool m_stateHasBeenSet;
Aws::Utils::DateTime m_requestedTimestamp;
bool m_requestedTimestampHasBeenSet;
Aws::Utils::DateTime m_expirationTimestamp;
bool m_expirationTimestampHasBeenSet;
ActionType m_action;
bool m_actionHasBeenSet;
Aws::Vector<HandshakeResource> m_resources;
bool m_resourcesHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,123 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/HandshakeConstraintViolationExceptionReason.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>The requested operation would violate the constraint identified in the reason
* code.</p> <p>Some of the reasons in the following list might not be
* applicable to this specific API or operation:</p> <ul> <li>
* <p>ACCOUNT_NUMBER_LIMIT_EXCEEDED: You attempted to exceed the limit on the
* number of accounts in an organization. Note that deleted and closed accounts
* still count toward your limit.</p> <p>If you get this exception
* immediately after creating the organization, wait one hour and try again. If
* after an hour it continues to fail with this error, contact <a
* href="https://console.aws.amazon.com/support/home#/">AWS Support</a>.</p>
* </li> <li> <p>ALREADY_IN_AN_ORGANIZATION: The handshake request is
* invalid because the invited account is already a member of an organization.</p>
* </li> <li> <p>HANDSHAKE_RATE_LIMIT_EXCEEDED: You attempted to exceed the number
* of handshakes that you can send in one day.</p> </li> <li>
* <p>INVITE_DISABLED_DURING_ENABLE_ALL_FEATURES: You can't issue new invitations
* to join an organization while it's in the process of enabling all features. You
* can resume inviting accounts after you finalize the process when all accounts
* have agreed to the change.</p> </li> <li>
* <p>ORGANIZATION_ALREADY_HAS_ALL_FEATURES: The handshake request is invalid
* because the organization has already enabled all features.</p> </li> <li>
* <p>ORGANIZATION_FROM_DIFFERENT_SELLER_OF_RECORD: The request failed because the
* account is from a different marketplace than the accounts in the organization.
* For example, accounts with India addresses must be associated with the AISPL
* marketplace. All accounts in an organization must be from the same
* marketplace.</p> </li> <li>
* <p>ORGANIZATION_MEMBERSHIP_CHANGE_RATE_LIMIT_EXCEEDED: You attempted to change
* the membership of an account too quickly after its previous change.</p> </li>
* <li> <p>PAYMENT_INSTRUMENT_REQUIRED: You can't complete the operation with an
* account that doesn't have a payment instrument, such as a credit card,
* associated with it.</p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeConstraintViolationException">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API HandshakeConstraintViolationException
{
public:
HandshakeConstraintViolationException();
HandshakeConstraintViolationException(Aws::Utils::Json::JsonView jsonValue);
HandshakeConstraintViolationException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
inline const Aws::String& GetMessage() const{ return m_message; }
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
inline HandshakeConstraintViolationException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
inline HandshakeConstraintViolationException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
inline HandshakeConstraintViolationException& WithMessage(const char* value) { SetMessage(value); return *this;}
inline const HandshakeConstraintViolationExceptionReason& GetReason() const{ return m_reason; }
inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
inline void SetReason(const HandshakeConstraintViolationExceptionReason& value) { m_reasonHasBeenSet = true; m_reason = value; }
inline void SetReason(HandshakeConstraintViolationExceptionReason&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); }
inline HandshakeConstraintViolationException& WithReason(const HandshakeConstraintViolationExceptionReason& value) { SetReason(value); return *this;}
inline HandshakeConstraintViolationException& WithReason(HandshakeConstraintViolationExceptionReason&& value) { SetReason(std::move(value)); return *this;}
private:
Aws::String m_message;
bool m_messageHasBeenSet;
HandshakeConstraintViolationExceptionReason m_reason;
bool m_reasonHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,37 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class HandshakeConstraintViolationExceptionReason
{
NOT_SET,
ACCOUNT_NUMBER_LIMIT_EXCEEDED,
HANDSHAKE_RATE_LIMIT_EXCEEDED,
ALREADY_IN_AN_ORGANIZATION,
ORGANIZATION_ALREADY_HAS_ALL_FEATURES,
INVITE_DISABLED_DURING_ENABLE_ALL_FEATURES,
PAYMENT_INSTRUMENT_REQUIRED,
ORGANIZATION_FROM_DIFFERENT_SELLER_OF_RECORD,
ORGANIZATION_MEMBERSHIP_CHANGE_RATE_LIMIT_EXCEEDED
};
namespace HandshakeConstraintViolationExceptionReasonMapper
{
AWS_ORGANIZATIONS_API HandshakeConstraintViolationExceptionReason GetHandshakeConstraintViolationExceptionReasonForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForHandshakeConstraintViolationExceptionReason(HandshakeConstraintViolationExceptionReason value);
} // namespace HandshakeConstraintViolationExceptionReasonMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,168 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/ActionType.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Specifies the criteria that are used to select the handshakes for the
* operation.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeFilter">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API HandshakeFilter
{
public:
HandshakeFilter();
HandshakeFilter(Aws::Utils::Json::JsonView jsonValue);
HandshakeFilter& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>Specifies the type of handshake action.</p> <p>If you specify
* <code>ActionType</code>, you cannot also specify
* <code>ParentHandshakeId</code>.</p>
*/
inline const ActionType& GetActionType() const{ return m_actionType; }
/**
* <p>Specifies the type of handshake action.</p> <p>If you specify
* <code>ActionType</code>, you cannot also specify
* <code>ParentHandshakeId</code>.</p>
*/
inline bool ActionTypeHasBeenSet() const { return m_actionTypeHasBeenSet; }
/**
* <p>Specifies the type of handshake action.</p> <p>If you specify
* <code>ActionType</code>, you cannot also specify
* <code>ParentHandshakeId</code>.</p>
*/
inline void SetActionType(const ActionType& value) { m_actionTypeHasBeenSet = true; m_actionType = value; }
/**
* <p>Specifies the type of handshake action.</p> <p>If you specify
* <code>ActionType</code>, you cannot also specify
* <code>ParentHandshakeId</code>.</p>
*/
inline void SetActionType(ActionType&& value) { m_actionTypeHasBeenSet = true; m_actionType = std::move(value); }
/**
* <p>Specifies the type of handshake action.</p> <p>If you specify
* <code>ActionType</code>, you cannot also specify
* <code>ParentHandshakeId</code>.</p>
*/
inline HandshakeFilter& WithActionType(const ActionType& value) { SetActionType(value); return *this;}
/**
* <p>Specifies the type of handshake action.</p> <p>If you specify
* <code>ActionType</code>, you cannot also specify
* <code>ParentHandshakeId</code>.</p>
*/
inline HandshakeFilter& WithActionType(ActionType&& value) { SetActionType(std::move(value)); return *this;}
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline const Aws::String& GetParentHandshakeId() const{ return m_parentHandshakeId; }
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline bool ParentHandshakeIdHasBeenSet() const { return m_parentHandshakeIdHasBeenSet; }
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetParentHandshakeId(const Aws::String& value) { m_parentHandshakeIdHasBeenSet = true; m_parentHandshakeId = value; }
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetParentHandshakeId(Aws::String&& value) { m_parentHandshakeIdHasBeenSet = true; m_parentHandshakeId = std::move(value); }
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetParentHandshakeId(const char* value) { m_parentHandshakeIdHasBeenSet = true; m_parentHandshakeId.assign(value); }
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline HandshakeFilter& WithParentHandshakeId(const Aws::String& value) { SetParentHandshakeId(value); return *this;}
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline HandshakeFilter& WithParentHandshakeId(Aws::String&& value) { SetParentHandshakeId(std::move(value)); return *this;}
/**
* <p>Specifies the parent handshake. Only used for handshake types that are a
* child of another type.</p> <p>If you specify <code>ParentHandshakeId</code>, you
* cannot also specify <code>ActionType</code>.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline HandshakeFilter& WithParentHandshakeId(const char* value) { SetParentHandshakeId(value); return *this;}
private:
ActionType m_actionType;
bool m_actionTypeHasBeenSet;
Aws::String m_parentHandshakeId;
bool m_parentHandshakeIdHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,139 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/HandshakePartyType.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Identifies a participant in a handshake.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeParty">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API HandshakeParty
{
public:
HandshakeParty();
HandshakeParty(Aws::Utils::Json::JsonView jsonValue);
HandshakeParty& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline HandshakeParty& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline HandshakeParty& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) for the party.</p> <p>The <a
* href="http://wikipedia.org/wiki/regex">regex pattern</a> for handshake ID string
* requires "h-" followed by from 8 to 32 lower-case letters or digits.</p>
*/
inline HandshakeParty& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The type of party.</p>
*/
inline const HandshakePartyType& GetType() const{ return m_type; }
/**
* <p>The type of party.</p>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>The type of party.</p>
*/
inline void SetType(const HandshakePartyType& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>The type of party.</p>
*/
inline void SetType(HandshakePartyType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>The type of party.</p>
*/
inline HandshakeParty& WithType(const HandshakePartyType& value) { SetType(value); return *this;}
/**
* <p>The type of party.</p>
*/
inline HandshakeParty& WithType(HandshakePartyType&& value) { SetType(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
HandshakePartyType m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,32 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class HandshakePartyType
{
NOT_SET,
ACCOUNT,
ORGANIZATION,
EMAIL
};
namespace HandshakePartyTypeMapper
{
AWS_ORGANIZATIONS_API HandshakePartyType GetHandshakePartyTypeForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForHandshakePartyType(HandshakePartyType value);
} // namespace HandshakePartyTypeMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,260 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/HandshakeResourceType.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/organizations/model/HandshakeResource.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>Contains additional data that is needed to process a handshake.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/HandshakeResource">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API HandshakeResource
{
public:
HandshakeResource();
HandshakeResource(Aws::Utils::Json::JsonView jsonValue);
HandshakeResource& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline const Aws::String& GetValue() const{ return m_value; }
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; }
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); }
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); }
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline HandshakeResource& WithValue(const Aws::String& value) { SetValue(value); return *this;}
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline HandshakeResource& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;}
/**
* <p>The information that is passed to the other party in the handshake. The
* format of the value string must match the requirements of the specified
* type.</p>
*/
inline HandshakeResource& WithValue(const char* value) { SetValue(value); return *this;}
/**
* <p>The type of information being passed, specifying how the value is to be
* interpreted by the other party:</p> <ul> <li> <p> <code>ACCOUNT</code> -
* Specifies an AWS account ID number.</p> </li> <li> <p> <code>ORGANIZATION</code>
* - Specifies an organization ID number.</p> </li> <li> <p> <code>EMAIL</code> -
* Specifies the email address that is associated with the account that receives
* the handshake. </p> </li> <li> <p> <code>OWNER_EMAIL</code> - Specifies the
* email address associated with the master account. Included as information about
* an organization. </p> </li> <li> <p> <code>OWNER_NAME</code> - Specifies the
* name associated with the master account. Included as information about an
* organization. </p> </li> <li> <p> <code>NOTES</code> - Additional text provided
* by the handshake initiator and intended for the recipient to read.</p> </li>
* </ul>
*/
inline const HandshakeResourceType& GetType() const{ return m_type; }
/**
* <p>The type of information being passed, specifying how the value is to be
* interpreted by the other party:</p> <ul> <li> <p> <code>ACCOUNT</code> -
* Specifies an AWS account ID number.</p> </li> <li> <p> <code>ORGANIZATION</code>
* - Specifies an organization ID number.</p> </li> <li> <p> <code>EMAIL</code> -
* Specifies the email address that is associated with the account that receives
* the handshake. </p> </li> <li> <p> <code>OWNER_EMAIL</code> - Specifies the
* email address associated with the master account. Included as information about
* an organization. </p> </li> <li> <p> <code>OWNER_NAME</code> - Specifies the
* name associated with the master account. Included as information about an
* organization. </p> </li> <li> <p> <code>NOTES</code> - Additional text provided
* by the handshake initiator and intended for the recipient to read.</p> </li>
* </ul>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>The type of information being passed, specifying how the value is to be
* interpreted by the other party:</p> <ul> <li> <p> <code>ACCOUNT</code> -
* Specifies an AWS account ID number.</p> </li> <li> <p> <code>ORGANIZATION</code>
* - Specifies an organization ID number.</p> </li> <li> <p> <code>EMAIL</code> -
* Specifies the email address that is associated with the account that receives
* the handshake. </p> </li> <li> <p> <code>OWNER_EMAIL</code> - Specifies the
* email address associated with the master account. Included as information about
* an organization. </p> </li> <li> <p> <code>OWNER_NAME</code> - Specifies the
* name associated with the master account. Included as information about an
* organization. </p> </li> <li> <p> <code>NOTES</code> - Additional text provided
* by the handshake initiator and intended for the recipient to read.</p> </li>
* </ul>
*/
inline void SetType(const HandshakeResourceType& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>The type of information being passed, specifying how the value is to be
* interpreted by the other party:</p> <ul> <li> <p> <code>ACCOUNT</code> -
* Specifies an AWS account ID number.</p> </li> <li> <p> <code>ORGANIZATION</code>
* - Specifies an organization ID number.</p> </li> <li> <p> <code>EMAIL</code> -
* Specifies the email address that is associated with the account that receives
* the handshake. </p> </li> <li> <p> <code>OWNER_EMAIL</code> - Specifies the
* email address associated with the master account. Included as information about
* an organization. </p> </li> <li> <p> <code>OWNER_NAME</code> - Specifies the
* name associated with the master account. Included as information about an
* organization. </p> </li> <li> <p> <code>NOTES</code> - Additional text provided
* by the handshake initiator and intended for the recipient to read.</p> </li>
* </ul>
*/
inline void SetType(HandshakeResourceType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>The type of information being passed, specifying how the value is to be
* interpreted by the other party:</p> <ul> <li> <p> <code>ACCOUNT</code> -
* Specifies an AWS account ID number.</p> </li> <li> <p> <code>ORGANIZATION</code>
* - Specifies an organization ID number.</p> </li> <li> <p> <code>EMAIL</code> -
* Specifies the email address that is associated with the account that receives
* the handshake. </p> </li> <li> <p> <code>OWNER_EMAIL</code> - Specifies the
* email address associated with the master account. Included as information about
* an organization. </p> </li> <li> <p> <code>OWNER_NAME</code> - Specifies the
* name associated with the master account. Included as information about an
* organization. </p> </li> <li> <p> <code>NOTES</code> - Additional text provided
* by the handshake initiator and intended for the recipient to read.</p> </li>
* </ul>
*/
inline HandshakeResource& WithType(const HandshakeResourceType& value) { SetType(value); return *this;}
/**
* <p>The type of information being passed, specifying how the value is to be
* interpreted by the other party:</p> <ul> <li> <p> <code>ACCOUNT</code> -
* Specifies an AWS account ID number.</p> </li> <li> <p> <code>ORGANIZATION</code>
* - Specifies an organization ID number.</p> </li> <li> <p> <code>EMAIL</code> -
* Specifies the email address that is associated with the account that receives
* the handshake. </p> </li> <li> <p> <code>OWNER_EMAIL</code> - Specifies the
* email address associated with the master account. Included as information about
* an organization. </p> </li> <li> <p> <code>OWNER_NAME</code> - Specifies the
* name associated with the master account. Included as information about an
* organization. </p> </li> <li> <p> <code>NOTES</code> - Additional text provided
* by the handshake initiator and intended for the recipient to read.</p> </li>
* </ul>
*/
inline HandshakeResource& WithType(HandshakeResourceType&& value) { SetType(std::move(value)); return *this;}
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline const Aws::Vector<HandshakeResource>& GetResources() const{ return m_resources; }
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline bool ResourcesHasBeenSet() const { return m_resourcesHasBeenSet; }
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline void SetResources(const Aws::Vector<HandshakeResource>& value) { m_resourcesHasBeenSet = true; m_resources = value; }
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline void SetResources(Aws::Vector<HandshakeResource>&& value) { m_resourcesHasBeenSet = true; m_resources = std::move(value); }
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline HandshakeResource& WithResources(const Aws::Vector<HandshakeResource>& value) { SetResources(value); return *this;}
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline HandshakeResource& WithResources(Aws::Vector<HandshakeResource>&& value) { SetResources(std::move(value)); return *this;}
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline HandshakeResource& AddResources(const HandshakeResource& value) { m_resourcesHasBeenSet = true; m_resources.push_back(value); return *this; }
/**
* <p>When needed, contains an additional array of <code>HandshakeResource</code>
* objects.</p>
*/
inline HandshakeResource& AddResources(HandshakeResource&& value) { m_resourcesHasBeenSet = true; m_resources.push_back(std::move(value)); return *this; }
private:
Aws::String m_value;
bool m_valueHasBeenSet;
HandshakeResourceType m_type;
bool m_typeHasBeenSet;
Aws::Vector<HandshakeResource> m_resources;
bool m_resourcesHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,37 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class HandshakeResourceType
{
NOT_SET,
ACCOUNT,
ORGANIZATION,
ORGANIZATION_FEATURE_SET,
EMAIL,
MASTER_EMAIL,
MASTER_NAME,
NOTES,
PARENT_HANDSHAKE
};
namespace HandshakeResourceTypeMapper
{
AWS_ORGANIZATIONS_API HandshakeResourceType GetHandshakeResourceTypeForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForHandshakeResourceType(HandshakeResourceType value);
} // namespace HandshakeResourceTypeMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,35 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class HandshakeState
{
NOT_SET,
REQUESTED,
OPEN,
CANCELED,
ACCEPTED,
DECLINED,
EXPIRED
};
namespace HandshakeStateMapper
{
AWS_ORGANIZATIONS_API HandshakeState GetHandshakeStateForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForHandshakeState(HandshakeState value);
} // namespace HandshakeStateMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,31 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class IAMUserAccessToBilling
{
NOT_SET,
ALLOW,
DENY
};
namespace IAMUserAccessToBillingMapper
{
AWS_ORGANIZATIONS_API IAMUserAccessToBilling GetIAMUserAccessToBillingForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForIAMUserAccessToBilling(IAMUserAccessToBilling value);
} // namespace IAMUserAccessToBillingMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,129 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/InvalidInputExceptionReason.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
/**
* <p>The requested operation failed because you provided invalid values for one or
* more of the request parameters. This exception includes a reason that contains
* additional information about the violated limit:</p> <p>Some of the
* reasons in the following list might not be applicable to this specific API or
* operation.</p> <ul> <li> <p>IMMUTABLE_POLICY: You specified a policy
* that is managed by AWS and can't be modified.</p> </li> <li> <p>INPUT_REQUIRED:
* You must include a value for all required parameters.</p> </li> <li>
* <p>INVALID_ENUM: You specified an invalid value.</p> </li> <li>
* <p>INVALID_FULL_NAME_TARGET: You specified a full name that contains invalid
* characters.</p> </li> <li> <p>INVALID_LIST_MEMBER: You provided a list to a
* parameter that contains at least one invalid value.</p> </li> <li>
* <p>INVALID_PAGINATION_TOKEN: Get the value for the <code>NextToken</code>
* parameter from the response to a previous call of the operation.</p> </li> <li>
* <p>INVALID_PARTY_TYPE_TARGET: You specified the wrong type of entity (account,
* organization, or email) as a party.</p> </li> <li> <p>INVALID_PATTERN: You
* provided a value that doesn't match the required pattern.</p> </li> <li>
* <p>INVALID_PATTERN_TARGET_ID: You specified a policy target ID that doesn't
* match the required pattern.</p> </li> <li> <p>INVALID_ROLE_NAME: You provided a
* role name that isn't valid. A role name can't begin with the reserved prefix
* <code>AWSServiceRoleFor</code>.</p> </li> <li>
* <p>INVALID_SYNTAX_ORGANIZATION_ARN: You specified an invalid Amazon Resource
* Name (ARN) for the organization.</p> </li> <li> <p>INVALID_SYNTAX_POLICY_ID: You
* specified an invalid policy ID. </p> </li> <li>
* <p>INVALID_SYSTEM_TAGS_PARAMETER: You specified a tag key that is a system tag.
* You cant add, edit, or delete system tag keys because they're reserved for AWS
* use. System tags dont count against your tags per resource limit.</p> </li>
* <li> <p>MAX_FILTER_LIMIT_EXCEEDED: You can specify only one filter parameter for
* the operation.</p> </li> <li> <p>MAX_LENGTH_EXCEEDED: You provided a string
* parameter that is longer than allowed.</p> </li> <li> <p>MAX_VALUE_EXCEEDED: You
* provided a numeric parameter that has a larger value than allowed.</p> </li>
* <li> <p>MIN_LENGTH_EXCEEDED: You provided a string parameter that is shorter
* than allowed.</p> </li> <li> <p>MIN_VALUE_EXCEEDED: You provided a numeric
* parameter that has a smaller value than allowed.</p> </li> <li>
* <p>MOVING_ACCOUNT_BETWEEN_DIFFERENT_ROOTS: You can move an account only between
* entities in the same root.</p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/InvalidInputException">AWS
* API Reference</a></p>
*/
class AWS_ORGANIZATIONS_API InvalidInputException
{
public:
InvalidInputException();
InvalidInputException(Aws::Utils::Json::JsonView jsonValue);
InvalidInputException& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
inline const Aws::String& GetMessage() const{ return m_message; }
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
inline InvalidInputException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
inline InvalidInputException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
inline InvalidInputException& WithMessage(const char* value) { SetMessage(value); return *this;}
inline const InvalidInputExceptionReason& GetReason() const{ return m_reason; }
inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
inline void SetReason(const InvalidInputExceptionReason& value) { m_reasonHasBeenSet = true; m_reason = value; }
inline void SetReason(InvalidInputExceptionReason&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); }
inline InvalidInputException& WithReason(const InvalidInputExceptionReason& value) { SetReason(value); return *this;}
inline InvalidInputException& WithReason(InvalidInputExceptionReason&& value) { SetReason(std::move(value)); return *this;}
private:
Aws::String m_message;
bool m_messageHasBeenSet;
InvalidInputExceptionReason m_reason;
bool m_reasonHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,51 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace Organizations
{
namespace Model
{
enum class InvalidInputExceptionReason
{
NOT_SET,
INVALID_PARTY_TYPE_TARGET,
INVALID_SYNTAX_ORGANIZATION_ARN,
INVALID_SYNTAX_POLICY_ID,
INVALID_ENUM,
INVALID_ENUM_POLICY_TYPE,
INVALID_LIST_MEMBER,
MAX_LENGTH_EXCEEDED,
MAX_VALUE_EXCEEDED,
MIN_LENGTH_EXCEEDED,
MIN_VALUE_EXCEEDED,
IMMUTABLE_POLICY,
INVALID_PATTERN,
INVALID_PATTERN_TARGET_ID,
INPUT_REQUIRED,
INVALID_NEXT_TOKEN,
MAX_LIMIT_EXCEEDED_FILTER,
MOVING_ACCOUNT_BETWEEN_DIFFERENT_ROOTS,
INVALID_FULL_NAME_TARGET,
UNRECOGNIZED_SERVICE_PRINCIPAL,
INVALID_ROLE_NAME,
INVALID_SYSTEM_TAGS_PARAMETER,
TARGET_NOT_SUPPORTED
};
namespace InvalidInputExceptionReasonMapper
{
AWS_ORGANIZATIONS_API InvalidInputExceptionReason GetInvalidInputExceptionReasonForName(const Aws::String& name);
AWS_ORGANIZATIONS_API Aws::String GetNameForInvalidInputExceptionReason(InvalidInputExceptionReason value);
} // namespace InvalidInputExceptionReasonMapper
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,182 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/organizations/model/HandshakeParty.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API InviteAccountToOrganizationRequest : public OrganizationsRequest
{
public:
InviteAccountToOrganizationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "InviteAccountToOrganization"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The identifier (ID) of the AWS account that you want to invite to join your
* organization. This is a JSON object that contains the following elements: </p>
* <p> <code>{ "Type": "ACCOUNT", "Id": "&lt;<i> <b>account id number</b> </i>&gt;"
* }</code> </p> <p>If you use the AWS CLI, you can submit this as a single string,
* similar to the following example:</p> <p> <code>--target
* Id=123456789012,Type=ACCOUNT</code> </p> <p>If you specify <code>"Type":
* "ACCOUNT"</code>, you must provide the AWS account ID number as the
* <code>Id</code>. If you specify <code>"Type": "EMAIL"</code>, you must specify
* the email address that is associated with the account.</p> <p> <code>--target
* Id=diego@example.com,Type=EMAIL</code> </p>
*/
inline const HandshakeParty& GetTarget() const{ return m_target; }
/**
* <p>The identifier (ID) of the AWS account that you want to invite to join your
* organization. This is a JSON object that contains the following elements: </p>
* <p> <code>{ "Type": "ACCOUNT", "Id": "&lt;<i> <b>account id number</b> </i>&gt;"
* }</code> </p> <p>If you use the AWS CLI, you can submit this as a single string,
* similar to the following example:</p> <p> <code>--target
* Id=123456789012,Type=ACCOUNT</code> </p> <p>If you specify <code>"Type":
* "ACCOUNT"</code>, you must provide the AWS account ID number as the
* <code>Id</code>. If you specify <code>"Type": "EMAIL"</code>, you must specify
* the email address that is associated with the account.</p> <p> <code>--target
* Id=diego@example.com,Type=EMAIL</code> </p>
*/
inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; }
/**
* <p>The identifier (ID) of the AWS account that you want to invite to join your
* organization. This is a JSON object that contains the following elements: </p>
* <p> <code>{ "Type": "ACCOUNT", "Id": "&lt;<i> <b>account id number</b> </i>&gt;"
* }</code> </p> <p>If you use the AWS CLI, you can submit this as a single string,
* similar to the following example:</p> <p> <code>--target
* Id=123456789012,Type=ACCOUNT</code> </p> <p>If you specify <code>"Type":
* "ACCOUNT"</code>, you must provide the AWS account ID number as the
* <code>Id</code>. If you specify <code>"Type": "EMAIL"</code>, you must specify
* the email address that is associated with the account.</p> <p> <code>--target
* Id=diego@example.com,Type=EMAIL</code> </p>
*/
inline void SetTarget(const HandshakeParty& value) { m_targetHasBeenSet = true; m_target = value; }
/**
* <p>The identifier (ID) of the AWS account that you want to invite to join your
* organization. This is a JSON object that contains the following elements: </p>
* <p> <code>{ "Type": "ACCOUNT", "Id": "&lt;<i> <b>account id number</b> </i>&gt;"
* }</code> </p> <p>If you use the AWS CLI, you can submit this as a single string,
* similar to the following example:</p> <p> <code>--target
* Id=123456789012,Type=ACCOUNT</code> </p> <p>If you specify <code>"Type":
* "ACCOUNT"</code>, you must provide the AWS account ID number as the
* <code>Id</code>. If you specify <code>"Type": "EMAIL"</code>, you must specify
* the email address that is associated with the account.</p> <p> <code>--target
* Id=diego@example.com,Type=EMAIL</code> </p>
*/
inline void SetTarget(HandshakeParty&& value) { m_targetHasBeenSet = true; m_target = std::move(value); }
/**
* <p>The identifier (ID) of the AWS account that you want to invite to join your
* organization. This is a JSON object that contains the following elements: </p>
* <p> <code>{ "Type": "ACCOUNT", "Id": "&lt;<i> <b>account id number</b> </i>&gt;"
* }</code> </p> <p>If you use the AWS CLI, you can submit this as a single string,
* similar to the following example:</p> <p> <code>--target
* Id=123456789012,Type=ACCOUNT</code> </p> <p>If you specify <code>"Type":
* "ACCOUNT"</code>, you must provide the AWS account ID number as the
* <code>Id</code>. If you specify <code>"Type": "EMAIL"</code>, you must specify
* the email address that is associated with the account.</p> <p> <code>--target
* Id=diego@example.com,Type=EMAIL</code> </p>
*/
inline InviteAccountToOrganizationRequest& WithTarget(const HandshakeParty& value) { SetTarget(value); return *this;}
/**
* <p>The identifier (ID) of the AWS account that you want to invite to join your
* organization. This is a JSON object that contains the following elements: </p>
* <p> <code>{ "Type": "ACCOUNT", "Id": "&lt;<i> <b>account id number</b> </i>&gt;"
* }</code> </p> <p>If you use the AWS CLI, you can submit this as a single string,
* similar to the following example:</p> <p> <code>--target
* Id=123456789012,Type=ACCOUNT</code> </p> <p>If you specify <code>"Type":
* "ACCOUNT"</code>, you must provide the AWS account ID number as the
* <code>Id</code>. If you specify <code>"Type": "EMAIL"</code>, you must specify
* the email address that is associated with the account.</p> <p> <code>--target
* Id=diego@example.com,Type=EMAIL</code> </p>
*/
inline InviteAccountToOrganizationRequest& WithTarget(HandshakeParty&& value) { SetTarget(std::move(value)); return *this;}
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline const Aws::String& GetNotes() const{ return m_notes; }
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline bool NotesHasBeenSet() const { return m_notesHasBeenSet; }
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline void SetNotes(const Aws::String& value) { m_notesHasBeenSet = true; m_notes = value; }
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline void SetNotes(Aws::String&& value) { m_notesHasBeenSet = true; m_notes = std::move(value); }
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline void SetNotes(const char* value) { m_notesHasBeenSet = true; m_notes.assign(value); }
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline InviteAccountToOrganizationRequest& WithNotes(const Aws::String& value) { SetNotes(value); return *this;}
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline InviteAccountToOrganizationRequest& WithNotes(Aws::String&& value) { SetNotes(std::move(value)); return *this;}
/**
* <p>Additional information that you want to include in the generated email to the
* recipient account owner.</p>
*/
inline InviteAccountToOrganizationRequest& WithNotes(const char* value) { SetNotes(value); return *this;}
private:
HandshakeParty m_target;
bool m_targetHasBeenSet;
Aws::String m_notes;
bool m_notesHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API InviteAccountToOrganizationResult
{
public:
InviteAccountToOrganizationResult();
InviteAccountToOrganizationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
InviteAccountToOrganizationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A structure that contains details about the handshake that is created to
* support this invitation request.</p>
*/
inline const Handshake& GetHandshake() const{ return m_handshake; }
/**
* <p>A structure that contains details about the handshake that is created to
* support this invitation request.</p>
*/
inline void SetHandshake(const Handshake& value) { m_handshake = value; }
/**
* <p>A structure that contains details about the handshake that is created to
* support this invitation request.</p>
*/
inline void SetHandshake(Handshake&& value) { m_handshake = std::move(value); }
/**
* <p>A structure that contains details about the handshake that is created to
* support this invitation request.</p>
*/
inline InviteAccountToOrganizationResult& WithHandshake(const Handshake& value) { SetHandshake(value); return *this;}
/**
* <p>A structure that contains details about the handshake that is created to
* support this invitation request.</p>
*/
inline InviteAccountToOrganizationResult& WithHandshake(Handshake&& value) { SetHandshake(std::move(value)); return *this;}
private:
Handshake m_handshake;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,173 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListAWSServiceAccessForOrganizationRequest : public OrganizationsRequest
{
public:
ListAWSServiceAccessForOrganizationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListAWSServiceAccessForOrganization"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAWSServiceAccessForOrganizationRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAWSServiceAccessForOrganizationRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAWSServiceAccessForOrganizationRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListAWSServiceAccessForOrganizationRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,166 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/EnabledServicePrincipal.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListAWSServiceAccessForOrganizationResult
{
public:
ListAWSServiceAccessForOrganizationResult();
ListAWSServiceAccessForOrganizationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListAWSServiceAccessForOrganizationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline const Aws::Vector<EnabledServicePrincipal>& GetEnabledServicePrincipals() const{ return m_enabledServicePrincipals; }
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline void SetEnabledServicePrincipals(const Aws::Vector<EnabledServicePrincipal>& value) { m_enabledServicePrincipals = value; }
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline void SetEnabledServicePrincipals(Aws::Vector<EnabledServicePrincipal>&& value) { m_enabledServicePrincipals = std::move(value); }
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& WithEnabledServicePrincipals(const Aws::Vector<EnabledServicePrincipal>& value) { SetEnabledServicePrincipals(value); return *this;}
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& WithEnabledServicePrincipals(Aws::Vector<EnabledServicePrincipal>&& value) { SetEnabledServicePrincipals(std::move(value)); return *this;}
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& AddEnabledServicePrincipals(const EnabledServicePrincipal& value) { m_enabledServicePrincipals.push_back(value); return *this; }
/**
* <p>A list of the service principals for the services that are enabled to
* integrate with your organization. Each principal is a structure that includes
* the name and the date that it was enabled for integration with AWS
* Organizations.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& AddEnabledServicePrincipals(EnabledServicePrincipal&& value) { m_enabledServicePrincipals.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAWSServiceAccessForOrganizationResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<EnabledServicePrincipal> m_enabledServicePrincipals;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,225 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListAccountsForParentRequest : public OrganizationsRequest
{
public:
ListAccountsForParentRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListAccountsForParent"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline const Aws::String& GetParentId() const{ return m_parentId; }
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline bool ParentIdHasBeenSet() const { return m_parentIdHasBeenSet; }
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline void SetParentId(const Aws::String& value) { m_parentIdHasBeenSet = true; m_parentId = value; }
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline void SetParentId(Aws::String&& value) { m_parentIdHasBeenSet = true; m_parentId = std::move(value); }
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline void SetParentId(const char* value) { m_parentIdHasBeenSet = true; m_parentId.assign(value); }
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline ListAccountsForParentRequest& WithParentId(const Aws::String& value) { SetParentId(value); return *this;}
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline ListAccountsForParentRequest& WithParentId(Aws::String&& value) { SetParentId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) for the parent root or organization unit (OU)
* whose accounts you want to list.</p>
*/
inline ListAccountsForParentRequest& WithParentId(const char* value) { SetParentId(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAccountsForParentRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAccountsForParentRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAccountsForParentRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListAccountsForParentRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_parentId;
bool m_parentIdHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/Account.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListAccountsForParentResult
{
public:
ListAccountsForParentResult();
ListAccountsForParentResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListAccountsForParentResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline const Aws::Vector<Account>& GetAccounts() const{ return m_accounts; }
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline void SetAccounts(const Aws::Vector<Account>& value) { m_accounts = value; }
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline void SetAccounts(Aws::Vector<Account>&& value) { m_accounts = std::move(value); }
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline ListAccountsForParentResult& WithAccounts(const Aws::Vector<Account>& value) { SetAccounts(value); return *this;}
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline ListAccountsForParentResult& WithAccounts(Aws::Vector<Account>&& value) { SetAccounts(std::move(value)); return *this;}
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline ListAccountsForParentResult& AddAccounts(const Account& value) { m_accounts.push_back(value); return *this; }
/**
* <p>A list of the accounts in the specified root or OU.</p>
*/
inline ListAccountsForParentResult& AddAccounts(Account&& value) { m_accounts.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAccountsForParentResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAccountsForParentResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAccountsForParentResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<Account> m_accounts;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,173 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListAccountsRequest : public OrganizationsRequest
{
public:
ListAccountsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListAccounts"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAccountsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAccountsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListAccountsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListAccountsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/Account.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListAccountsResult
{
public:
ListAccountsResult();
ListAccountsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListAccountsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of objects in the organization.</p>
*/
inline const Aws::Vector<Account>& GetAccounts() const{ return m_accounts; }
/**
* <p>A list of objects in the organization.</p>
*/
inline void SetAccounts(const Aws::Vector<Account>& value) { m_accounts = value; }
/**
* <p>A list of objects in the organization.</p>
*/
inline void SetAccounts(Aws::Vector<Account>&& value) { m_accounts = std::move(value); }
/**
* <p>A list of objects in the organization.</p>
*/
inline ListAccountsResult& WithAccounts(const Aws::Vector<Account>& value) { SetAccounts(value); return *this;}
/**
* <p>A list of objects in the organization.</p>
*/
inline ListAccountsResult& WithAccounts(Aws::Vector<Account>&& value) { SetAccounts(std::move(value)); return *this;}
/**
* <p>A list of objects in the organization.</p>
*/
inline ListAccountsResult& AddAccounts(const Account& value) { m_accounts.push_back(value); return *this; }
/**
* <p>A list of objects in the organization.</p>
*/
inline ListAccountsResult& AddAccounts(Account&& value) { m_accounts.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAccountsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAccountsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListAccountsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<Account> m_accounts;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,308 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/ChildType.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListChildrenRequest : public OrganizationsRequest
{
public:
ListChildrenRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListChildren"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline const Aws::String& GetParentId() const{ return m_parentId; }
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline bool ParentIdHasBeenSet() const { return m_parentIdHasBeenSet; }
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetParentId(const Aws::String& value) { m_parentIdHasBeenSet = true; m_parentId = value; }
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetParentId(Aws::String&& value) { m_parentIdHasBeenSet = true; m_parentId = std::move(value); }
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetParentId(const char* value) { m_parentIdHasBeenSet = true; m_parentId.assign(value); }
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline ListChildrenRequest& WithParentId(const Aws::String& value) { SetParentId(value); return *this;}
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline ListChildrenRequest& WithParentId(Aws::String&& value) { SetParentId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) for the parent root or OU whose children you want
* to list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
* for a parent ID string requires one of the following:</p> <ul> <li> <p>
* <b>Root</b> - A string that begins with "r-" followed by from 4 to 32 lowercase
* letters or digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string
* that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the
* ID of the root that the OU is in). This string is followed by a second "-" dash
* and from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline ListChildrenRequest& WithParentId(const char* value) { SetParentId(value); return *this;}
/**
* <p>Filters the output to include only the specified child type.</p>
*/
inline const ChildType& GetChildType() const{ return m_childType; }
/**
* <p>Filters the output to include only the specified child type.</p>
*/
inline bool ChildTypeHasBeenSet() const { return m_childTypeHasBeenSet; }
/**
* <p>Filters the output to include only the specified child type.</p>
*/
inline void SetChildType(const ChildType& value) { m_childTypeHasBeenSet = true; m_childType = value; }
/**
* <p>Filters the output to include only the specified child type.</p>
*/
inline void SetChildType(ChildType&& value) { m_childTypeHasBeenSet = true; m_childType = std::move(value); }
/**
* <p>Filters the output to include only the specified child type.</p>
*/
inline ListChildrenRequest& WithChildType(const ChildType& value) { SetChildType(value); return *this;}
/**
* <p>Filters the output to include only the specified child type.</p>
*/
inline ListChildrenRequest& WithChildType(ChildType&& value) { SetChildType(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListChildrenRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListChildrenRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListChildrenRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListChildrenRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_parentId;
bool m_parentIdHasBeenSet;
ChildType m_childType;
bool m_childTypeHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/Child.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListChildrenResult
{
public:
ListChildrenResult();
ListChildrenResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListChildrenResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The list of children of the specified parent container.</p>
*/
inline const Aws::Vector<Child>& GetChildren() const{ return m_children; }
/**
* <p>The list of children of the specified parent container.</p>
*/
inline void SetChildren(const Aws::Vector<Child>& value) { m_children = value; }
/**
* <p>The list of children of the specified parent container.</p>
*/
inline void SetChildren(Aws::Vector<Child>&& value) { m_children = std::move(value); }
/**
* <p>The list of children of the specified parent container.</p>
*/
inline ListChildrenResult& WithChildren(const Aws::Vector<Child>& value) { SetChildren(value); return *this;}
/**
* <p>The list of children of the specified parent container.</p>
*/
inline ListChildrenResult& WithChildren(Aws::Vector<Child>&& value) { SetChildren(std::move(value)); return *this;}
/**
* <p>The list of children of the specified parent container.</p>
*/
inline ListChildrenResult& AddChildren(const Child& value) { m_children.push_back(value); return *this; }
/**
* <p>The list of children of the specified parent container.</p>
*/
inline ListChildrenResult& AddChildren(Child&& value) { m_children.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListChildrenResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListChildrenResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListChildrenResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<Child> m_children;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,227 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/CreateAccountState.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListCreateAccountStatusRequest : public OrganizationsRequest
{
public:
ListCreateAccountStatusRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListCreateAccountStatus"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline const Aws::Vector<CreateAccountState>& GetStates() const{ return m_states; }
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline bool StatesHasBeenSet() const { return m_statesHasBeenSet; }
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline void SetStates(const Aws::Vector<CreateAccountState>& value) { m_statesHasBeenSet = true; m_states = value; }
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline void SetStates(Aws::Vector<CreateAccountState>&& value) { m_statesHasBeenSet = true; m_states = std::move(value); }
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline ListCreateAccountStatusRequest& WithStates(const Aws::Vector<CreateAccountState>& value) { SetStates(value); return *this;}
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline ListCreateAccountStatusRequest& WithStates(Aws::Vector<CreateAccountState>&& value) { SetStates(std::move(value)); return *this;}
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline ListCreateAccountStatusRequest& AddStates(const CreateAccountState& value) { m_statesHasBeenSet = true; m_states.push_back(value); return *this; }
/**
* <p>A list of one or more states that you want included in the response. If this
* parameter isn't present, all requests are included in the response.</p>
*/
inline ListCreateAccountStatusRequest& AddStates(CreateAccountState&& value) { m_statesHasBeenSet = true; m_states.push_back(std::move(value)); return *this; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListCreateAccountStatusRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListCreateAccountStatusRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListCreateAccountStatusRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListCreateAccountStatusRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::Vector<CreateAccountState> m_states;
bool m_statesHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,159 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/CreateAccountStatus.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListCreateAccountStatusResult
{
public:
ListCreateAccountStatusResult();
ListCreateAccountStatusResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListCreateAccountStatusResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline const Aws::Vector<CreateAccountStatus>& GetCreateAccountStatuses() const{ return m_createAccountStatuses; }
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline void SetCreateAccountStatuses(const Aws::Vector<CreateAccountStatus>& value) { m_createAccountStatuses = value; }
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline void SetCreateAccountStatuses(Aws::Vector<CreateAccountStatus>&& value) { m_createAccountStatuses = std::move(value); }
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline ListCreateAccountStatusResult& WithCreateAccountStatuses(const Aws::Vector<CreateAccountStatus>& value) { SetCreateAccountStatuses(value); return *this;}
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline ListCreateAccountStatusResult& WithCreateAccountStatuses(Aws::Vector<CreateAccountStatus>&& value) { SetCreateAccountStatuses(std::move(value)); return *this;}
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline ListCreateAccountStatusResult& AddCreateAccountStatuses(const CreateAccountStatus& value) { m_createAccountStatuses.push_back(value); return *this; }
/**
* <p>A list of objects with details about the requests. Certain elements, such as
* the accountId number, are present in the output only after the account has been
* successfully created.</p>
*/
inline ListCreateAccountStatusResult& AddCreateAccountStatuses(CreateAccountStatus&& value) { m_createAccountStatuses.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListCreateAccountStatusResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListCreateAccountStatusResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListCreateAccountStatusResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<CreateAccountStatus> m_createAccountStatuses;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,241 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListDelegatedAdministratorsRequest : public OrganizationsRequest
{
public:
ListDelegatedAdministratorsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListDelegatedAdministrators"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline const Aws::String& GetServicePrincipal() const{ return m_servicePrincipal; }
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline bool ServicePrincipalHasBeenSet() const { return m_servicePrincipalHasBeenSet; }
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline void SetServicePrincipal(const Aws::String& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = value; }
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline void SetServicePrincipal(Aws::String&& value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal = std::move(value); }
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline void SetServicePrincipal(const char* value) { m_servicePrincipalHasBeenSet = true; m_servicePrincipal.assign(value); }
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline ListDelegatedAdministratorsRequest& WithServicePrincipal(const Aws::String& value) { SetServicePrincipal(value); return *this;}
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline ListDelegatedAdministratorsRequest& WithServicePrincipal(Aws::String&& value) { SetServicePrincipal(std::move(value)); return *this;}
/**
* <p>Specifies a service principal name. If specified, then the operation lists
* the delegated administrators only for the specified service.</p> <p>If you don't
* specify a service principal, the operation lists all delegated administrators
* for all services in your organization.</p>
*/
inline ListDelegatedAdministratorsRequest& WithServicePrincipal(const char* value) { SetServicePrincipal(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListDelegatedAdministratorsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListDelegatedAdministratorsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListDelegatedAdministratorsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListDelegatedAdministratorsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_servicePrincipal;
bool m_servicePrincipalHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/DelegatedAdministrator.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListDelegatedAdministratorsResult
{
public:
ListDelegatedAdministratorsResult();
ListDelegatedAdministratorsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListDelegatedAdministratorsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline const Aws::Vector<DelegatedAdministrator>& GetDelegatedAdministrators() const{ return m_delegatedAdministrators; }
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline void SetDelegatedAdministrators(const Aws::Vector<DelegatedAdministrator>& value) { m_delegatedAdministrators = value; }
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline void SetDelegatedAdministrators(Aws::Vector<DelegatedAdministrator>&& value) { m_delegatedAdministrators = std::move(value); }
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline ListDelegatedAdministratorsResult& WithDelegatedAdministrators(const Aws::Vector<DelegatedAdministrator>& value) { SetDelegatedAdministrators(value); return *this;}
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline ListDelegatedAdministratorsResult& WithDelegatedAdministrators(Aws::Vector<DelegatedAdministrator>&& value) { SetDelegatedAdministrators(std::move(value)); return *this;}
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline ListDelegatedAdministratorsResult& AddDelegatedAdministrators(const DelegatedAdministrator& value) { m_delegatedAdministrators.push_back(value); return *this; }
/**
* <p>The list of delegated administrators in your organization.</p>
*/
inline ListDelegatedAdministratorsResult& AddDelegatedAdministrators(DelegatedAdministrator&& value) { m_delegatedAdministrators.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListDelegatedAdministratorsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListDelegatedAdministratorsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListDelegatedAdministratorsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<DelegatedAdministrator> m_delegatedAdministrators;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,225 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListDelegatedServicesForAccountRequest : public OrganizationsRequest
{
public:
ListDelegatedServicesForAccountRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListDelegatedServicesForAccount"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline const Aws::String& GetAccountId() const{ return m_accountId; }
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; }
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); }
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); }
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;}
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;}
/**
* <p>The account ID number of a delegated administrator account in the
* organization.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListDelegatedServicesForAccountRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_accountId;
bool m_accountIdHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/DelegatedService.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListDelegatedServicesForAccountResult
{
public:
ListDelegatedServicesForAccountResult();
ListDelegatedServicesForAccountResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListDelegatedServicesForAccountResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline const Aws::Vector<DelegatedService>& GetDelegatedServices() const{ return m_delegatedServices; }
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline void SetDelegatedServices(const Aws::Vector<DelegatedService>& value) { m_delegatedServices = value; }
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline void SetDelegatedServices(Aws::Vector<DelegatedService>&& value) { m_delegatedServices = std::move(value); }
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline ListDelegatedServicesForAccountResult& WithDelegatedServices(const Aws::Vector<DelegatedService>& value) { SetDelegatedServices(value); return *this;}
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline ListDelegatedServicesForAccountResult& WithDelegatedServices(Aws::Vector<DelegatedService>&& value) { SetDelegatedServices(std::move(value)); return *this;}
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline ListDelegatedServicesForAccountResult& AddDelegatedServices(const DelegatedService& value) { m_delegatedServices.push_back(value); return *this; }
/**
* <p>The services for which the account is a delegated administrator.</p>
*/
inline ListDelegatedServicesForAccountResult& AddDelegatedServices(DelegatedService&& value) { m_delegatedServices.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListDelegatedServicesForAccountResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListDelegatedServicesForAccountResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListDelegatedServicesForAccountResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<DelegatedService> m_delegatedServices;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,250 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/organizations/model/HandshakeFilter.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListHandshakesForAccountRequest : public OrganizationsRequest
{
public:
ListHandshakesForAccountRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListHandshakesForAccount"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>Filters the handshakes that you want included in the response. The default is
* all types. Use the <code>ActionType</code> element to limit the output to only a
* specified type, such as <code>INVITE</code>, <code>ENABLE_ALL_FEATURES</code>,
* or <code>APPROVE_ALL_FEATURES</code>. Alternatively, for the
* <code>ENABLE_ALL_FEATURES</code> handshake that generates a separate child
* handshake for each member account, you can specify
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline const HandshakeFilter& GetFilter() const{ return m_filter; }
/**
* <p>Filters the handshakes that you want included in the response. The default is
* all types. Use the <code>ActionType</code> element to limit the output to only a
* specified type, such as <code>INVITE</code>, <code>ENABLE_ALL_FEATURES</code>,
* or <code>APPROVE_ALL_FEATURES</code>. Alternatively, for the
* <code>ENABLE_ALL_FEATURES</code> handshake that generates a separate child
* handshake for each member account, you can specify
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
/**
* <p>Filters the handshakes that you want included in the response. The default is
* all types. Use the <code>ActionType</code> element to limit the output to only a
* specified type, such as <code>INVITE</code>, <code>ENABLE_ALL_FEATURES</code>,
* or <code>APPROVE_ALL_FEATURES</code>. Alternatively, for the
* <code>ENABLE_ALL_FEATURES</code> handshake that generates a separate child
* handshake for each member account, you can specify
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline void SetFilter(const HandshakeFilter& value) { m_filterHasBeenSet = true; m_filter = value; }
/**
* <p>Filters the handshakes that you want included in the response. The default is
* all types. Use the <code>ActionType</code> element to limit the output to only a
* specified type, such as <code>INVITE</code>, <code>ENABLE_ALL_FEATURES</code>,
* or <code>APPROVE_ALL_FEATURES</code>. Alternatively, for the
* <code>ENABLE_ALL_FEATURES</code> handshake that generates a separate child
* handshake for each member account, you can specify
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline void SetFilter(HandshakeFilter&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
/**
* <p>Filters the handshakes that you want included in the response. The default is
* all types. Use the <code>ActionType</code> element to limit the output to only a
* specified type, such as <code>INVITE</code>, <code>ENABLE_ALL_FEATURES</code>,
* or <code>APPROVE_ALL_FEATURES</code>. Alternatively, for the
* <code>ENABLE_ALL_FEATURES</code> handshake that generates a separate child
* handshake for each member account, you can specify
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline ListHandshakesForAccountRequest& WithFilter(const HandshakeFilter& value) { SetFilter(value); return *this;}
/**
* <p>Filters the handshakes that you want included in the response. The default is
* all types. Use the <code>ActionType</code> element to limit the output to only a
* specified type, such as <code>INVITE</code>, <code>ENABLE_ALL_FEATURES</code>,
* or <code>APPROVE_ALL_FEATURES</code>. Alternatively, for the
* <code>ENABLE_ALL_FEATURES</code> handshake that generates a separate child
* handshake for each member account, you can specify
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline ListHandshakesForAccountRequest& WithFilter(HandshakeFilter&& value) { SetFilter(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListHandshakesForAccountRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListHandshakesForAccountRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListHandshakesForAccountRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListHandshakesForAccountRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
HandshakeFilter m_filter;
bool m_filterHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,152 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListHandshakesForAccountResult
{
public:
ListHandshakesForAccountResult();
ListHandshakesForAccountResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListHandshakesForAccountResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline const Aws::Vector<Handshake>& GetHandshakes() const{ return m_handshakes; }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline void SetHandshakes(const Aws::Vector<Handshake>& value) { m_handshakes = value; }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline void SetHandshakes(Aws::Vector<Handshake>&& value) { m_handshakes = std::move(value); }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline ListHandshakesForAccountResult& WithHandshakes(const Aws::Vector<Handshake>& value) { SetHandshakes(value); return *this;}
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline ListHandshakesForAccountResult& WithHandshakes(Aws::Vector<Handshake>&& value) { SetHandshakes(std::move(value)); return *this;}
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline ListHandshakesForAccountResult& AddHandshakes(const Handshake& value) { m_handshakes.push_back(value); return *this; }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that is associated with the specified account.</p>
*/
inline ListHandshakesForAccountResult& AddHandshakes(Handshake&& value) { m_handshakes.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListHandshakesForAccountResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListHandshakesForAccountResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListHandshakesForAccountResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<Handshake> m_handshakes;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,250 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/organizations/model/HandshakeFilter.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListHandshakesForOrganizationRequest : public OrganizationsRequest
{
public:
ListHandshakesForOrganizationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListHandshakesForOrganization"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>A filter of the handshakes that you want included in the response. The
* default is all types. Use the <code>ActionType</code> element to limit the
* output to only a specified type, such as <code>INVITE</code>,
* <code>ENABLE-ALL-FEATURES</code>, or <code>APPROVE-ALL-FEATURES</code>.
* Alternatively, for the <code>ENABLE-ALL-FEATURES</code> handshake that generates
* a separate child handshake for each member account, you can specify the
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline const HandshakeFilter& GetFilter() const{ return m_filter; }
/**
* <p>A filter of the handshakes that you want included in the response. The
* default is all types. Use the <code>ActionType</code> element to limit the
* output to only a specified type, such as <code>INVITE</code>,
* <code>ENABLE-ALL-FEATURES</code>, or <code>APPROVE-ALL-FEATURES</code>.
* Alternatively, for the <code>ENABLE-ALL-FEATURES</code> handshake that generates
* a separate child handshake for each member account, you can specify the
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
/**
* <p>A filter of the handshakes that you want included in the response. The
* default is all types. Use the <code>ActionType</code> element to limit the
* output to only a specified type, such as <code>INVITE</code>,
* <code>ENABLE-ALL-FEATURES</code>, or <code>APPROVE-ALL-FEATURES</code>.
* Alternatively, for the <code>ENABLE-ALL-FEATURES</code> handshake that generates
* a separate child handshake for each member account, you can specify the
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline void SetFilter(const HandshakeFilter& value) { m_filterHasBeenSet = true; m_filter = value; }
/**
* <p>A filter of the handshakes that you want included in the response. The
* default is all types. Use the <code>ActionType</code> element to limit the
* output to only a specified type, such as <code>INVITE</code>,
* <code>ENABLE-ALL-FEATURES</code>, or <code>APPROVE-ALL-FEATURES</code>.
* Alternatively, for the <code>ENABLE-ALL-FEATURES</code> handshake that generates
* a separate child handshake for each member account, you can specify the
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline void SetFilter(HandshakeFilter&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
/**
* <p>A filter of the handshakes that you want included in the response. The
* default is all types. Use the <code>ActionType</code> element to limit the
* output to only a specified type, such as <code>INVITE</code>,
* <code>ENABLE-ALL-FEATURES</code>, or <code>APPROVE-ALL-FEATURES</code>.
* Alternatively, for the <code>ENABLE-ALL-FEATURES</code> handshake that generates
* a separate child handshake for each member account, you can specify the
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline ListHandshakesForOrganizationRequest& WithFilter(const HandshakeFilter& value) { SetFilter(value); return *this;}
/**
* <p>A filter of the handshakes that you want included in the response. The
* default is all types. Use the <code>ActionType</code> element to limit the
* output to only a specified type, such as <code>INVITE</code>,
* <code>ENABLE-ALL-FEATURES</code>, or <code>APPROVE-ALL-FEATURES</code>.
* Alternatively, for the <code>ENABLE-ALL-FEATURES</code> handshake that generates
* a separate child handshake for each member account, you can specify the
* <code>ParentHandshakeId</code> to see only the handshakes that were generated by
* that parent request.</p>
*/
inline ListHandshakesForOrganizationRequest& WithFilter(HandshakeFilter&& value) { SetFilter(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListHandshakesForOrganizationRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListHandshakesForOrganizationRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListHandshakesForOrganizationRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListHandshakesForOrganizationRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
HandshakeFilter m_filter;
bool m_filterHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,152 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/Handshake.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListHandshakesForOrganizationResult
{
public:
ListHandshakesForOrganizationResult();
ListHandshakesForOrganizationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListHandshakesForOrganizationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline const Aws::Vector<Handshake>& GetHandshakes() const{ return m_handshakes; }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline void SetHandshakes(const Aws::Vector<Handshake>& value) { m_handshakes = value; }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline void SetHandshakes(Aws::Vector<Handshake>&& value) { m_handshakes = std::move(value); }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline ListHandshakesForOrganizationResult& WithHandshakes(const Aws::Vector<Handshake>& value) { SetHandshakes(value); return *this;}
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline ListHandshakesForOrganizationResult& WithHandshakes(Aws::Vector<Handshake>&& value) { SetHandshakes(std::move(value)); return *this;}
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline ListHandshakesForOrganizationResult& AddHandshakes(const Handshake& value) { m_handshakes.push_back(value); return *this; }
/**
* <p>A list of <a>Handshake</a> objects with details about each of the handshakes
* that are associated with an organization.</p>
*/
inline ListHandshakesForOrganizationResult& AddHandshakes(Handshake&& value) { m_handshakes.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListHandshakesForOrganizationResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListHandshakesForOrganizationResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListHandshakesForOrganizationResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<Handshake> m_handshakes;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,273 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/organizations/OrganizationsRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Organizations
{
namespace Model
{
/**
*/
class AWS_ORGANIZATIONS_API ListOrganizationalUnitsForParentRequest : public OrganizationsRequest
{
public:
ListOrganizationalUnitsForParentRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListOrganizationalUnitsForParent"; }
Aws::String SerializePayload() const override;
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline const Aws::String& GetParentId() const{ return m_parentId; }
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline bool ParentIdHasBeenSet() const { return m_parentIdHasBeenSet; }
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetParentId(const Aws::String& value) { m_parentIdHasBeenSet = true; m_parentId = value; }
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetParentId(Aws::String&& value) { m_parentIdHasBeenSet = true; m_parentId = std::move(value); }
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline void SetParentId(const char* value) { m_parentIdHasBeenSet = true; m_parentId.assign(value); }
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline ListOrganizationalUnitsForParentRequest& WithParentId(const Aws::String& value) { SetParentId(value); return *this;}
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline ListOrganizationalUnitsForParentRequest& WithParentId(Aws::String&& value) { SetParentId(std::move(value)); return *this;}
/**
* <p>The unique identifier (ID) of the root or OU whose child OUs you want to
* list.</p> <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a> for
* a parent ID string requires one of the following:</p> <ul> <li> <p> <b>Root</b>
* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or
* digits.</p> </li> <li> <p> <b>Organizational unit (OU)</b> - A string that
* begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID
* of the root that the OU is in). This string is followed by a second "-" dash and
* from 8 to 32 additional lowercase letters or digits.</p> </li> </ul>
*/
inline ListOrganizationalUnitsForParentRequest& WithParentId(const char* value) { SetParentId(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListOrganizationalUnitsForParentRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListOrganizationalUnitsForParentRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>The parameter for receiving additional results if you receive a
* <code>NextToken</code> response in a previous request. A <code>NextToken</code>
* response indicates that more output is available. Set this parameter to the
* value of the previous call's <code>NextToken</code> response to indicate where
* the output should continue from.</p>
*/
inline ListOrganizationalUnitsForParentRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline int GetMaxResults() const{ return m_maxResults; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; }
/**
* <p>The total number of results that you want included on each page of the
* response. If you do not include this parameter, it defaults to a value that is
* specific to the operation. If additional items exist beyond the maximum you
* specify, the <code>NextToken</code> response element is present and has a value
* (is not null). Include that value as the <code>NextToken</code> request
* parameter in the next call to the operation to get the next part of the results.
* Note that Organizations might return fewer results than the maximum even when
* there are more results available. You should check <code>NextToken</code> after
* every operation to ensure that you receive all of the results.</p>
*/
inline ListOrganizationalUnitsForParentRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;}
private:
Aws::String m_parentId;
bool m_parentIdHasBeenSet;
Aws::String m_nextToken;
bool m_nextTokenHasBeenSet;
int m_maxResults;
bool m_maxResultsHasBeenSet;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

View File

@@ -0,0 +1,145 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/organizations/Organizations_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/organizations/model/OrganizationalUnit.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace Organizations
{
namespace Model
{
class AWS_ORGANIZATIONS_API ListOrganizationalUnitsForParentResult
{
public:
ListOrganizationalUnitsForParentResult();
ListOrganizationalUnitsForParentResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListOrganizationalUnitsForParentResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline const Aws::Vector<OrganizationalUnit>& GetOrganizationalUnits() const{ return m_organizationalUnits; }
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline void SetOrganizationalUnits(const Aws::Vector<OrganizationalUnit>& value) { m_organizationalUnits = value; }
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline void SetOrganizationalUnits(Aws::Vector<OrganizationalUnit>&& value) { m_organizationalUnits = std::move(value); }
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline ListOrganizationalUnitsForParentResult& WithOrganizationalUnits(const Aws::Vector<OrganizationalUnit>& value) { SetOrganizationalUnits(value); return *this;}
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline ListOrganizationalUnitsForParentResult& WithOrganizationalUnits(Aws::Vector<OrganizationalUnit>&& value) { SetOrganizationalUnits(std::move(value)); return *this;}
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline ListOrganizationalUnitsForParentResult& AddOrganizationalUnits(const OrganizationalUnit& value) { m_organizationalUnits.push_back(value); return *this; }
/**
* <p>A list of the OUs in the specified root or parent OU.</p>
*/
inline ListOrganizationalUnitsForParentResult& AddOrganizationalUnits(OrganizationalUnit&& value) { m_organizationalUnits.push_back(std::move(value)); return *this; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline const Aws::String& GetNextToken() const{ return m_nextToken; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListOrganizationalUnitsForParentResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListOrganizationalUnitsForParentResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
/**
* <p>If present, indicates that more output is available than is included in the
* current response. Use this value in the <code>NextToken</code> request parameter
* in a subsequent call to the operation to get the next part of the output. You
* should repeat this until the <code>NextToken</code> response element comes back
* as <code>null</code>.</p>
*/
inline ListOrganizationalUnitsForParentResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
private:
Aws::Vector<OrganizationalUnit> m_organizationalUnits;
Aws::String m_nextToken;
};
} // namespace Model
} // namespace Organizations
} // namespace Aws

Some files were not shown because too many files have changed in this diff Show More