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/cognito-identity/CognitoIdentity_EXPORTS.h>
8 #include <aws/cognito-identity/CognitoIdentityRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/memory/stl/AWSMap.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace CognitoIdentity
16 {
17 namespace Model
18 {
19 
20   /**
21    * <p>Input to the GetId action.</p><p><h3>See Also:</h3>   <a
22    * href="http://docs.aws.amazon.com/goto/WebAPI/cognito-identity-2014-06-30/GetIdInput">AWS
23    * API Reference</a></p>
24    */
25   class AWS_COGNITOIDENTITY_API GetIdRequest : public CognitoIdentityRequest
26   {
27   public:
28     GetIdRequest();
29 
30     // Service request name is the Operation name which will send this request out,
31     // each operation should has unique request name, so that we can get operation's name from this request.
32     // Note: this is not true for response, multiple operations may have the same response name,
33     // so we can not get operation's name from response.
GetServiceRequestName()34     inline virtual const char* GetServiceRequestName() const override { return "GetId"; }
35 
36     Aws::String SerializePayload() const override;
37 
38     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39 
40 
41     /**
42      * <p>A standard AWS account ID (9+ digits).</p>
43      */
GetAccountId()44     inline const Aws::String& GetAccountId() const{ return m_accountId; }
45 
46     /**
47      * <p>A standard AWS account ID (9+ digits).</p>
48      */
AccountIdHasBeenSet()49     inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
50 
51     /**
52      * <p>A standard AWS account ID (9+ digits).</p>
53      */
SetAccountId(const Aws::String & value)54     inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; }
55 
56     /**
57      * <p>A standard AWS account ID (9+ digits).</p>
58      */
SetAccountId(Aws::String && value)59     inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); }
60 
61     /**
62      * <p>A standard AWS account ID (9+ digits).</p>
63      */
SetAccountId(const char * value)64     inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); }
65 
66     /**
67      * <p>A standard AWS account ID (9+ digits).</p>
68      */
WithAccountId(const Aws::String & value)69     inline GetIdRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;}
70 
71     /**
72      * <p>A standard AWS account ID (9+ digits).</p>
73      */
WithAccountId(Aws::String && value)74     inline GetIdRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;}
75 
76     /**
77      * <p>A standard AWS account ID (9+ digits).</p>
78      */
WithAccountId(const char * value)79     inline GetIdRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;}
80 
81 
82     /**
83      * <p>An identity pool ID in the format REGION:GUID.</p>
84      */
GetIdentityPoolId()85     inline const Aws::String& GetIdentityPoolId() const{ return m_identityPoolId; }
86 
87     /**
88      * <p>An identity pool ID in the format REGION:GUID.</p>
89      */
IdentityPoolIdHasBeenSet()90     inline bool IdentityPoolIdHasBeenSet() const { return m_identityPoolIdHasBeenSet; }
91 
92     /**
93      * <p>An identity pool ID in the format REGION:GUID.</p>
94      */
SetIdentityPoolId(const Aws::String & value)95     inline void SetIdentityPoolId(const Aws::String& value) { m_identityPoolIdHasBeenSet = true; m_identityPoolId = value; }
96 
97     /**
98      * <p>An identity pool ID in the format REGION:GUID.</p>
99      */
SetIdentityPoolId(Aws::String && value)100     inline void SetIdentityPoolId(Aws::String&& value) { m_identityPoolIdHasBeenSet = true; m_identityPoolId = std::move(value); }
101 
102     /**
103      * <p>An identity pool ID in the format REGION:GUID.</p>
104      */
SetIdentityPoolId(const char * value)105     inline void SetIdentityPoolId(const char* value) { m_identityPoolIdHasBeenSet = true; m_identityPoolId.assign(value); }
106 
107     /**
108      * <p>An identity pool ID in the format REGION:GUID.</p>
109      */
WithIdentityPoolId(const Aws::String & value)110     inline GetIdRequest& WithIdentityPoolId(const Aws::String& value) { SetIdentityPoolId(value); return *this;}
111 
112     /**
113      * <p>An identity pool ID in the format REGION:GUID.</p>
114      */
WithIdentityPoolId(Aws::String && value)115     inline GetIdRequest& WithIdentityPoolId(Aws::String&& value) { SetIdentityPoolId(std::move(value)); return *this;}
116 
117     /**
118      * <p>An identity pool ID in the format REGION:GUID.</p>
119      */
WithIdentityPoolId(const char * value)120     inline GetIdRequest& WithIdentityPoolId(const char* value) { SetIdentityPoolId(value); return *this;}
121 
122 
123     /**
124      * <p>A set of optional name-value pairs that map provider names to provider
125      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
126      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
127      * Cognito user pool:
128      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
129      * for example,
130      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
131      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
132      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
133      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
134      * <code>www.digits.com</code> </p> </li> </ul>
135      */
GetLogins()136     inline const Aws::Map<Aws::String, Aws::String>& GetLogins() const{ return m_logins; }
137 
138     /**
139      * <p>A set of optional name-value pairs that map provider names to provider
140      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
141      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
142      * Cognito user pool:
143      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
144      * for example,
145      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
146      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
147      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
148      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
149      * <code>www.digits.com</code> </p> </li> </ul>
150      */
LoginsHasBeenSet()151     inline bool LoginsHasBeenSet() const { return m_loginsHasBeenSet; }
152 
153     /**
154      * <p>A set of optional name-value pairs that map provider names to provider
155      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
156      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
157      * Cognito user pool:
158      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
159      * for example,
160      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
161      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
162      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
163      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
164      * <code>www.digits.com</code> </p> </li> </ul>
165      */
SetLogins(const Aws::Map<Aws::String,Aws::String> & value)166     inline void SetLogins(const Aws::Map<Aws::String, Aws::String>& value) { m_loginsHasBeenSet = true; m_logins = value; }
167 
168     /**
169      * <p>A set of optional name-value pairs that map provider names to provider
170      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
171      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
172      * Cognito user pool:
173      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
174      * for example,
175      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
176      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
177      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
178      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
179      * <code>www.digits.com</code> </p> </li> </ul>
180      */
SetLogins(Aws::Map<Aws::String,Aws::String> && value)181     inline void SetLogins(Aws::Map<Aws::String, Aws::String>&& value) { m_loginsHasBeenSet = true; m_logins = std::move(value); }
182 
183     /**
184      * <p>A set of optional name-value pairs that map provider names to provider
185      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
186      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
187      * Cognito user pool:
188      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
189      * for example,
190      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
191      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
192      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
193      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
194      * <code>www.digits.com</code> </p> </li> </ul>
195      */
WithLogins(const Aws::Map<Aws::String,Aws::String> & value)196     inline GetIdRequest& WithLogins(const Aws::Map<Aws::String, Aws::String>& value) { SetLogins(value); return *this;}
197 
198     /**
199      * <p>A set of optional name-value pairs that map provider names to provider
200      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
201      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
202      * Cognito user pool:
203      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
204      * for example,
205      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
206      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
207      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
208      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
209      * <code>www.digits.com</code> </p> </li> </ul>
210      */
WithLogins(Aws::Map<Aws::String,Aws::String> && value)211     inline GetIdRequest& WithLogins(Aws::Map<Aws::String, Aws::String>&& value) { SetLogins(std::move(value)); return *this;}
212 
213     /**
214      * <p>A set of optional name-value pairs that map provider names to provider
215      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
216      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
217      * Cognito user pool:
218      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
219      * for example,
220      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
221      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
222      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
223      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
224      * <code>www.digits.com</code> </p> </li> </ul>
225      */
AddLogins(const Aws::String & key,const Aws::String & value)226     inline GetIdRequest& AddLogins(const Aws::String& key, const Aws::String& value) { m_loginsHasBeenSet = true; m_logins.emplace(key, value); return *this; }
227 
228     /**
229      * <p>A set of optional name-value pairs that map provider names to provider
230      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
231      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
232      * Cognito user pool:
233      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
234      * for example,
235      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
236      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
237      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
238      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
239      * <code>www.digits.com</code> </p> </li> </ul>
240      */
AddLogins(Aws::String && key,const Aws::String & value)241     inline GetIdRequest& AddLogins(Aws::String&& key, const Aws::String& value) { m_loginsHasBeenSet = true; m_logins.emplace(std::move(key), value); return *this; }
242 
243     /**
244      * <p>A set of optional name-value pairs that map provider names to provider
245      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
246      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
247      * Cognito user pool:
248      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
249      * for example,
250      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
251      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
252      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
253      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
254      * <code>www.digits.com</code> </p> </li> </ul>
255      */
AddLogins(const Aws::String & key,Aws::String && value)256     inline GetIdRequest& AddLogins(const Aws::String& key, Aws::String&& value) { m_loginsHasBeenSet = true; m_logins.emplace(key, std::move(value)); return *this; }
257 
258     /**
259      * <p>A set of optional name-value pairs that map provider names to provider
260      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
261      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
262      * Cognito user pool:
263      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
264      * for example,
265      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
266      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
267      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
268      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
269      * <code>www.digits.com</code> </p> </li> </ul>
270      */
AddLogins(Aws::String && key,Aws::String && value)271     inline GetIdRequest& AddLogins(Aws::String&& key, Aws::String&& value) { m_loginsHasBeenSet = true; m_logins.emplace(std::move(key), std::move(value)); return *this; }
272 
273     /**
274      * <p>A set of optional name-value pairs that map provider names to provider
275      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
276      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
277      * Cognito user pool:
278      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
279      * for example,
280      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
281      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
282      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
283      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
284      * <code>www.digits.com</code> </p> </li> </ul>
285      */
AddLogins(const char * key,Aws::String && value)286     inline GetIdRequest& AddLogins(const char* key, Aws::String&& value) { m_loginsHasBeenSet = true; m_logins.emplace(key, std::move(value)); return *this; }
287 
288     /**
289      * <p>A set of optional name-value pairs that map provider names to provider
290      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
291      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
292      * Cognito user pool:
293      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
294      * for example,
295      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
296      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
297      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
298      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
299      * <code>www.digits.com</code> </p> </li> </ul>
300      */
AddLogins(Aws::String && key,const char * value)301     inline GetIdRequest& AddLogins(Aws::String&& key, const char* value) { m_loginsHasBeenSet = true; m_logins.emplace(std::move(key), value); return *this; }
302 
303     /**
304      * <p>A set of optional name-value pairs that map provider names to provider
305      * tokens. The available provider names for <code>Logins</code> are as follows:</p>
306      * <ul> <li> <p>Facebook: <code>graph.facebook.com</code> </p> </li> <li> <p>Amazon
307      * Cognito user pool:
308      * <code>cognito-idp.&lt;region&gt;.amazonaws.com/&lt;YOUR_USER_POOL_ID&gt;</code>,
309      * for example,
310      * <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>. </p> </li>
311      * <li> <p>Google: <code>accounts.google.com</code> </p> </li> <li> <p>Amazon:
312      * <code>www.amazon.com</code> </p> </li> <li> <p>Twitter:
313      * <code>api.twitter.com</code> </p> </li> <li> <p>Digits:
314      * <code>www.digits.com</code> </p> </li> </ul>
315      */
AddLogins(const char * key,const char * value)316     inline GetIdRequest& AddLogins(const char* key, const char* value) { m_loginsHasBeenSet = true; m_logins.emplace(key, value); return *this; }
317 
318   private:
319 
320     Aws::String m_accountId;
321     bool m_accountIdHasBeenSet;
322 
323     Aws::String m_identityPoolId;
324     bool m_identityPoolIdHasBeenSet;
325 
326     Aws::Map<Aws::String, Aws::String> m_logins;
327     bool m_loginsHasBeenSet;
328   };
329 
330 } // namespace Model
331 } // namespace CognitoIdentity
332 } // namespace Aws
333