Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Ruby) Amazon Cognito - List UsersSee more Amazon Cognito ExamplesLists the users in the Amazon Cognito user pool. For more information, see https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ListUsers.html
require 'chilkat' # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. rest = Chilkat::CkRest.new() authAws = Chilkat::CkAuthAws.new() authAws.put_AccessKey("AWS_ACCESS_KEY") authAws.put_SecretKey("AWS_SECRET_KEY") # Don't forget to change the region to your particular region. (Also make the same change in the call to Connect below.) authAws.put_Region("us-west-2") authAws.put_ServiceName("cognito-idp") # SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date rest.SetAuthAws(authAws) # URL: https://cognito-idp.us-west-2.amazonaws.com/ bTls = true port = 443 bAutoReconnect = true # Use the same region as specified above. success = rest.Connect("cognito-idp.us-west-2.amazonaws.com",port,bTls,bAutoReconnect) if (success != true) print "ConnectFailReason: " + rest.get_ConnectFailReason().to_s() + "\n"; print rest.lastErrorText() + "\n"; exit end # Note: The above code does not need to be repeatedly called for each REST request. # The rest object can be setup once, and then many requests can be sent. Chilkat will automatically # reconnect within a FullRequest* method as needed. It is only the very first connection that is explicitly # made via the Connect method. # The following JSON is sent in the request body. # { # "UserPoolId": "us-west-2_yt6WzO3SA" # } # json = Chilkat::CkJsonObject.new() json.UpdateString("UserPoolId","us-west-2_yt6WzO3SA") rest.AddHeader("Content-Type","application/x-amz-json-1.0") rest.AddHeader("X-Amz-Target","AWSCognitoIdentityProviderService.ListUsers") rest.AddHeader("Accept-Encoding","identity") sbRequestBody = Chilkat::CkStringBuilder.new() json.EmitSb(sbRequestBody) sbResponseBody = Chilkat::CkStringBuilder.new() success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody) if (success != true) print rest.lastErrorText() + "\n"; exit end respStatusCode = rest.get_ResponseStatusCode() print "response status code = " + respStatusCode.to_s() + "\n"; if (respStatusCode != 200) print "Response Status Code = " + respStatusCode.to_s() + "\n"; print "Response Header:" + "\n"; print rest.responseHeader() + "\n"; print "Response Body:" + "\n"; print sbResponseBody.getAsString() + "\n"; exit end jsonResponse = Chilkat::CkJsonObject.new() jsonResponse.LoadSb(sbResponseBody) jsonResponse.put_EmitCompact(false) print jsonResponse.emit() + "\n"; # Sample JSON response: # (Sample code for parsing the JSON response is shown below) # Use this online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON # { # "Users": [ # { # "Attributes": [ # { # "Name": "sub", # "Value": "1874cf28-00d3-4ac1-a24a-68dcb0cecf09" # }, # { # "Name": "email_verified", # "Value": "true" # }, # { # "Name": "phone_number_verified", # "Value": "true" # }, # { # "Name": "phone_number", # "Value": "+16302581871" # }, # { # "Name": "email", # "Value": "admin@chilkatsoft.com" # } # ], # "Enabled": true, # "UserCreateDate": 1.636404386657E9, # "UserLastModifiedDate": 1.636404386657E9, # "UserStatus": "FORCE_CHANGE_PASSWORD", # "Username": "matt" # }, # { # . . . # } # ] # } i = 0 count_i = jsonResponse.SizeOfArray("Users") while i < count_i jsonResponse.put_I(i) Enabled = jsonResponse.BoolOf("Users[i].Enabled") UserCreateDate = jsonResponse.stringOf("Users[i].UserCreateDate") UserLastModifiedDate = jsonResponse.stringOf("Users[i].UserLastModifiedDate") UserStatus = jsonResponse.stringOf("Users[i].UserStatus") Username = jsonResponse.stringOf("Users[i].Username") j = 0 count_j = jsonResponse.SizeOfArray("Users[i].Attributes") while j < count_j jsonResponse.put_J(j) Name = jsonResponse.stringOf("Users[i].Attributes[j].Name") Value = jsonResponse.stringOf("Users[i].Attributes[j].Value") j = j + 1 end i = i + 1 end |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.