1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/account/Account_EXPORTS.h> 8 #include <aws/account/AccountRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/account/model/AlternateContactType.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Account 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_ACCOUNT_API GetAlternateContactRequest : public AccountRequest 23 { 24 public: 25 GetAlternateContactRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "GetAlternateContact"; } 32 33 Aws::String SerializePayload() const override; 34 35 36 /** 37 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 38 * that you want to access or modify with this operation.</p> <p>If you do not 39 * specify this parameter, it defaults to the Amazon Web Services account of the 40 * identity used to call the operation.</p> <p>To use this parameter, the caller 41 * must be an identity in the <a 42 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 43 * management account</a> or a delegated administrator account, and the specified 44 * account ID must be a member account in the same organization. The organization 45 * must have <a 46 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 47 * features enabled</a>, and the organization must have <a 48 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 49 * access</a> enabled for the Account Management service, and optionally a <a 50 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 51 * admin</a> account assigned.</p> <p>The management account can't specify 52 * its own <code>AccountId</code>; it must call the operation in standalone context 53 * by not including the <code>AccountId</code> parameter.</p> <p>To call 54 * this operation on an account that is not a member of an organization, then don't 55 * specify this parameter, and call the operation using an identity belonging to 56 * the account whose contacts you wish to retrieve or modify.</p> 57 */ GetAccountId()58 inline const Aws::String& GetAccountId() const{ return m_accountId; } 59 60 /** 61 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 62 * that you want to access or modify with this operation.</p> <p>If you do not 63 * specify this parameter, it defaults to the Amazon Web Services account of the 64 * identity used to call the operation.</p> <p>To use this parameter, the caller 65 * must be an identity in the <a 66 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 67 * management account</a> or a delegated administrator account, and the specified 68 * account ID must be a member account in the same organization. The organization 69 * must have <a 70 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 71 * features enabled</a>, and the organization must have <a 72 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 73 * access</a> enabled for the Account Management service, and optionally a <a 74 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 75 * admin</a> account assigned.</p> <p>The management account can't specify 76 * its own <code>AccountId</code>; it must call the operation in standalone context 77 * by not including the <code>AccountId</code> parameter.</p> <p>To call 78 * this operation on an account that is not a member of an organization, then don't 79 * specify this parameter, and call the operation using an identity belonging to 80 * the account whose contacts you wish to retrieve or modify.</p> 81 */ AccountIdHasBeenSet()82 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } 83 84 /** 85 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 86 * that you want to access or modify with this operation.</p> <p>If you do not 87 * specify this parameter, it defaults to the Amazon Web Services account of the 88 * identity used to call the operation.</p> <p>To use this parameter, the caller 89 * must be an identity in the <a 90 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 91 * management account</a> or a delegated administrator account, and the specified 92 * account ID must be a member account in the same organization. The organization 93 * must have <a 94 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 95 * features enabled</a>, and the organization must have <a 96 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 97 * access</a> enabled for the Account Management service, and optionally a <a 98 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 99 * admin</a> account assigned.</p> <p>The management account can't specify 100 * its own <code>AccountId</code>; it must call the operation in standalone context 101 * by not including the <code>AccountId</code> parameter.</p> <p>To call 102 * this operation on an account that is not a member of an organization, then don't 103 * specify this parameter, and call the operation using an identity belonging to 104 * the account whose contacts you wish to retrieve or modify.</p> 105 */ SetAccountId(const Aws::String & value)106 inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } 107 108 /** 109 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 110 * that you want to access or modify with this operation.</p> <p>If you do not 111 * specify this parameter, it defaults to the Amazon Web Services account of the 112 * identity used to call the operation.</p> <p>To use this parameter, the caller 113 * must be an identity in the <a 114 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 115 * management account</a> or a delegated administrator account, and the specified 116 * account ID must be a member account in the same organization. The organization 117 * must have <a 118 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 119 * features enabled</a>, and the organization must have <a 120 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 121 * access</a> enabled for the Account Management service, and optionally a <a 122 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 123 * admin</a> account assigned.</p> <p>The management account can't specify 124 * its own <code>AccountId</code>; it must call the operation in standalone context 125 * by not including the <code>AccountId</code> parameter.</p> <p>To call 126 * this operation on an account that is not a member of an organization, then don't 127 * specify this parameter, and call the operation using an identity belonging to 128 * the account whose contacts you wish to retrieve or modify.</p> 129 */ SetAccountId(Aws::String && value)130 inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } 131 132 /** 133 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 134 * that you want to access or modify with this operation.</p> <p>If you do not 135 * specify this parameter, it defaults to the Amazon Web Services account of the 136 * identity used to call the operation.</p> <p>To use this parameter, the caller 137 * must be an identity in the <a 138 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 139 * management account</a> or a delegated administrator account, and the specified 140 * account ID must be a member account in the same organization. The organization 141 * must have <a 142 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 143 * features enabled</a>, and the organization must have <a 144 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 145 * access</a> enabled for the Account Management service, and optionally a <a 146 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 147 * admin</a> account assigned.</p> <p>The management account can't specify 148 * its own <code>AccountId</code>; it must call the operation in standalone context 149 * by not including the <code>AccountId</code> parameter.</p> <p>To call 150 * this operation on an account that is not a member of an organization, then don't 151 * specify this parameter, and call the operation using an identity belonging to 152 * the account whose contacts you wish to retrieve or modify.</p> 153 */ SetAccountId(const char * value)154 inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } 155 156 /** 157 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 158 * that you want to access or modify with this operation.</p> <p>If you do not 159 * specify this parameter, it defaults to the Amazon Web Services account of the 160 * identity used to call the operation.</p> <p>To use this parameter, the caller 161 * must be an identity in the <a 162 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 163 * management account</a> or a delegated administrator account, and the specified 164 * account ID must be a member account in the same organization. The organization 165 * must have <a 166 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 167 * features enabled</a>, and the organization must have <a 168 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 169 * access</a> enabled for the Account Management service, and optionally a <a 170 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 171 * admin</a> account assigned.</p> <p>The management account can't specify 172 * its own <code>AccountId</code>; it must call the operation in standalone context 173 * by not including the <code>AccountId</code> parameter.</p> <p>To call 174 * this operation on an account that is not a member of an organization, then don't 175 * specify this parameter, and call the operation using an identity belonging to 176 * the account whose contacts you wish to retrieve or modify.</p> 177 */ WithAccountId(const Aws::String & value)178 inline GetAlternateContactRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} 179 180 /** 181 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 182 * that you want to access or modify with this operation.</p> <p>If you do not 183 * specify this parameter, it defaults to the Amazon Web Services account of the 184 * identity used to call the operation.</p> <p>To use this parameter, the caller 185 * must be an identity in the <a 186 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 187 * management account</a> or a delegated administrator account, and the specified 188 * account ID must be a member account in the same organization. The organization 189 * must have <a 190 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 191 * features enabled</a>, and the organization must have <a 192 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 193 * access</a> enabled for the Account Management service, and optionally a <a 194 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 195 * admin</a> account assigned.</p> <p>The management account can't specify 196 * its own <code>AccountId</code>; it must call the operation in standalone context 197 * by not including the <code>AccountId</code> parameter.</p> <p>To call 198 * this operation on an account that is not a member of an organization, then don't 199 * specify this parameter, and call the operation using an identity belonging to 200 * the account whose contacts you wish to retrieve or modify.</p> 201 */ WithAccountId(Aws::String && value)202 inline GetAlternateContactRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} 203 204 /** 205 * <p>Specifies the 12 digit account ID number of the Amazon Web Services account 206 * that you want to access or modify with this operation.</p> <p>If you do not 207 * specify this parameter, it defaults to the Amazon Web Services account of the 208 * identity used to call the operation.</p> <p>To use this parameter, the caller 209 * must be an identity in the <a 210 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html#account">organization's 211 * management account</a> or a delegated administrator account, and the specified 212 * account ID must be a member account in the same organization. The organization 213 * must have <a 214 * href="https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html">all 215 * features enabled</a>, and the organization must have <a 216 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-trusted-access.html">trusted 217 * access</a> enabled for the Account Management service, and optionally a <a 218 * href="https://docs.aws.amazon.com/organizations/latest/userguide/using-orgs-delegated-admin.html">delegated 219 * admin</a> account assigned.</p> <p>The management account can't specify 220 * its own <code>AccountId</code>; it must call the operation in standalone context 221 * by not including the <code>AccountId</code> parameter.</p> <p>To call 222 * this operation on an account that is not a member of an organization, then don't 223 * specify this parameter, and call the operation using an identity belonging to 224 * the account whose contacts you wish to retrieve or modify.</p> 225 */ WithAccountId(const char * value)226 inline GetAlternateContactRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;} 227 228 229 /** 230 * <p>Specifies which alternate contact you want to retrieve.</p> 231 */ GetAlternateContactType()232 inline const AlternateContactType& GetAlternateContactType() const{ return m_alternateContactType; } 233 234 /** 235 * <p>Specifies which alternate contact you want to retrieve.</p> 236 */ AlternateContactTypeHasBeenSet()237 inline bool AlternateContactTypeHasBeenSet() const { return m_alternateContactTypeHasBeenSet; } 238 239 /** 240 * <p>Specifies which alternate contact you want to retrieve.</p> 241 */ SetAlternateContactType(const AlternateContactType & value)242 inline void SetAlternateContactType(const AlternateContactType& value) { m_alternateContactTypeHasBeenSet = true; m_alternateContactType = value; } 243 244 /** 245 * <p>Specifies which alternate contact you want to retrieve.</p> 246 */ SetAlternateContactType(AlternateContactType && value)247 inline void SetAlternateContactType(AlternateContactType&& value) { m_alternateContactTypeHasBeenSet = true; m_alternateContactType = std::move(value); } 248 249 /** 250 * <p>Specifies which alternate contact you want to retrieve.</p> 251 */ WithAlternateContactType(const AlternateContactType & value)252 inline GetAlternateContactRequest& WithAlternateContactType(const AlternateContactType& value) { SetAlternateContactType(value); return *this;} 253 254 /** 255 * <p>Specifies which alternate contact you want to retrieve.</p> 256 */ WithAlternateContactType(AlternateContactType && value)257 inline GetAlternateContactRequest& WithAlternateContactType(AlternateContactType&& value) { SetAlternateContactType(std::move(value)); return *this;} 258 259 private: 260 261 Aws::String m_accountId; 262 bool m_accountIdHasBeenSet; 263 264 AlternateContactType m_alternateContactType; 265 bool m_alternateContactTypeHasBeenSet; 266 }; 267 268 } // namespace Model 269 } // namespace Account 270 } // namespace Aws 271