AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateAccountRequest.h
1
6#pragma once
7#include <aws/organizations/Organizations_EXPORTS.h>
8#include <aws/organizations/OrganizationsRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/organizations/model/IAMUserAccessToBilling.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/organizations/model/Tag.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Organizations
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_ORGANIZATIONS_API CreateAccountRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateAccount"; }
34
35 AWS_ORGANIZATIONS_API Aws::String SerializePayload() const override;
36
37 AWS_ORGANIZATIONS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
38
39
41
58 inline const Aws::String& GetEmail() const { return m_email; }
59 inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
60 template<typename EmailT = Aws::String>
61 void SetEmail(EmailT&& value) { m_emailHasBeenSet = true; m_email = std::forward<EmailT>(value); }
62 template<typename EmailT = Aws::String>
63 CreateAccountRequest& WithEmail(EmailT&& value) { SetEmail(std::forward<EmailT>(value)); return *this;}
65
67
70 inline const Aws::String& GetAccountName() const { return m_accountName; }
71 inline bool AccountNameHasBeenSet() const { return m_accountNameHasBeenSet; }
72 template<typename AccountNameT = Aws::String>
73 void SetAccountName(AccountNameT&& value) { m_accountNameHasBeenSet = true; m_accountName = std::forward<AccountNameT>(value); }
74 template<typename AccountNameT = Aws::String>
75 CreateAccountRequest& WithAccountName(AccountNameT&& value) { SetAccountName(std::forward<AccountNameT>(value)); return *this;}
77
79
98 inline const Aws::String& GetRoleName() const { return m_roleName; }
99 inline bool RoleNameHasBeenSet() const { return m_roleNameHasBeenSet; }
100 template<typename RoleNameT = Aws::String>
101 void SetRoleName(RoleNameT&& value) { m_roleNameHasBeenSet = true; m_roleName = std::forward<RoleNameT>(value); }
102 template<typename RoleNameT = Aws::String>
103 CreateAccountRequest& WithRoleName(RoleNameT&& value) { SetRoleName(std::forward<RoleNameT>(value)); return *this;}
105
107
119 inline IAMUserAccessToBilling GetIamUserAccessToBilling() const { return m_iamUserAccessToBilling; }
120 inline bool IamUserAccessToBillingHasBeenSet() const { return m_iamUserAccessToBillingHasBeenSet; }
121 inline void SetIamUserAccessToBilling(IAMUserAccessToBilling value) { m_iamUserAccessToBillingHasBeenSet = true; m_iamUserAccessToBilling = value; }
124
126
137 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
138 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
139 template<typename TagsT = Aws::Vector<Tag>>
140 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
141 template<typename TagsT = Aws::Vector<Tag>>
142 CreateAccountRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
143 template<typename TagsT = Tag>
144 CreateAccountRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
146 private:
147
148 Aws::String m_email;
149 bool m_emailHasBeenSet = false;
150
151 Aws::String m_accountName;
152 bool m_accountNameHasBeenSet = false;
153
154 Aws::String m_roleName;
155 bool m_roleNameHasBeenSet = false;
156
158 bool m_iamUserAccessToBillingHasBeenSet = false;
159
160 Aws::Vector<Tag> m_tags;
161 bool m_tagsHasBeenSet = false;
162 };
163
164} // namespace Model
165} // namespace Organizations
166} // namespace Aws
CreateAccountRequest & WithAccountName(AccountNameT &&value)
CreateAccountRequest & WithRoleName(RoleNameT &&value)
AWS_ORGANIZATIONS_API Aws::String SerializePayload() const override
CreateAccountRequest & WithEmail(EmailT &&value)
IAMUserAccessToBilling GetIamUserAccessToBilling() const
CreateAccountRequest & WithTags(TagsT &&value)
AWS_ORGANIZATIONS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateAccountRequest & AddTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
void SetIamUserAccessToBilling(IAMUserAccessToBilling value)
CreateAccountRequest & WithIamUserAccessToBilling(IAMUserAccessToBilling value)
AWS_ORGANIZATIONS_API CreateAccountRequest()=default
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector