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
(PureBasic) Amazon Cognito - Create User PoolSee more Amazon Cognito ExamplesCreates a new Amazon Cognito user pool and sets the password policy for the pool. For more information, see https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html
IncludeFile "CkStringBuilder.pb" IncludeFile "CkAuthAws.pb" IncludeFile "CkJsonObject.pb" IncludeFile "CkRest.pb" Procedure ChilkatExample() ; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. rest.i = CkRest::ckCreate() If rest.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i authAws.i = CkAuthAws::ckCreate() If authAws.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkAuthAws::setCkAccessKey(authAws, "AWS_ACCESS_KEY") CkAuthAws::setCkSecretKey(authAws, "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.) CkAuthAws::setCkRegion(authAws, "us-west-2") CkAuthAws::setCkServiceName(authAws, "cognito-idp") ; SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date CkRest::ckSetAuthAws(rest,authAws) ; URL: https://cognito-idp.us-west-2.amazonaws.com/ bTls.i = 1 port.i = 443 bAutoReconnect.i = 1 ; Use the same region as specified above. success = CkRest::ckConnect(rest,"cognito-idp.us-west-2.amazonaws.com",port,bTls,bAutoReconnect) If success <> 1 Debug "ConnectFailReason: " + Str(CkRest::ckConnectFailReason(rest)) Debug CkRest::ckLastErrorText(rest) CkRest::ckDispose(rest) CkAuthAws::ckDispose(authAws) ProcedureReturn EndIf ; 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. ; Use this online tool to generate code from sample JSON: ; Generate Code to Create JSON ; The following JSON is sent in the request body. ; This example wil demonstrate creating a pool with many options specified. ; The only required JSON member is "PoolName". ; { ; "AccountRecoverySetting": { ; "RecoveryMechanisms": [ ; { ; "Name": "verified_phone_number", ; "Priority": 1 ; }, ; { ; "Name": "verified_email", ; "Priority": 2 ; } ; ] ; }, ; "AdminCreateUserConfig": { ; "AllowAdminCreateUserOnly": false, ; "InviteMessageTemplate": { ; "EmailMessage": "Your username is {username} and temporary password is {####}. ", ; "EmailSubject": "Your temporary password", ; "SMSMessage": "Your username is {username} and temporary password is {####}. " ; }, ; "TemporaryPasswordValidityDays": 7 ; }, ; "AutoVerifiedAttributes": [ ; "email", ; "phone_number" ; ], ; "EmailConfiguration": { ; "EmailSendingAccount": "DEVELOPER", ; "From": "joe@example.com", ; "ReplyToEmailAddress": "joe@example.com", ; "SourceArn": "arn:aws:ses:us-west-2:954491834127:identity/joe@example.com" ; }, ; "EmailVerificationMessage": "Your verification code is {####}. ", ; "EmailVerificationSubject": "Your verification code", ; "LambdaConfig": {}, ; "MfaConfiguration": "OFF", ; "PoolName": "MyTestPool", ; "Policies": { ; "PasswordPolicy": { ; "MinimumLength": 8, ; "RequireLowercase": true, ; "RequireNumbers": true, ; "RequireSymbols": true, ; "RequireUppercase": true, ; "TemporaryPasswordValidityDays": 7 ; } ; }, ; "Schema": [ ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": false, ; "Name": "sub", ; "Required": true, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "1" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "name", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "given_name", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "family_name", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "middle_name", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "nickname", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "preferred_username", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "profile", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "picture", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "website", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "email", ; "Required": true, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "Boolean", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "email_verified", ; "Required": false ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "gender", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "birthdate", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "10", ; "MinLength": "10" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "zoneinfo", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "locale", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "phone_number", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "String", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "address", ; "Required": false, ; "StringAttributeConstraints": { ; "MaxLength": "2048", ; "MinLength": "0" ; } ; }, ; { ; "AttributeDataType": "Number", ; "DeveloperOnlyAttribute": false, ; "Mutable": true, ; "Name": "updated_at", ; "NumberAttributeConstraints": { ; "MinValue": "0" ; }, ; "Required": false ; } ; ], ; "SmsAuthenticationMessage": "Your verification code is {####}. ", ; "SmsConfiguration": { ; "ExternalId": "94b17737-216b-4cf7-a29e-17e990e91300", ; "SnsCallerArn": "arn:aws:iam::954491834127:role/service-role/chilkat-SMS-Role" ; }, ; "SmsVerificationMessage": "Your verification code is {####}. ", ; "UsernameConfiguration": { ; "CaseSensitive": false ; }, ; "VerificationMessageTemplate": { ; "DefaultEmailOption": "CONFIRM_WITH_CODE", ; "EmailMessage": "Your verification code is {####}. ", ; "EmailSubject": "Your verification code", ; "SmsMessage": "Your verification code is {####}. " ; } ; } ; json.i = CkJsonObject::ckCreate() If json.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::ckUpdateString(json,"AccountRecoverySetting.RecoveryMechanisms[0].Name","verified_phone_number") CkJsonObject::ckUpdateInt(json,"AccountRecoverySetting.RecoveryMechanisms[0].Priority",1) CkJsonObject::ckUpdateString(json,"AccountRecoverySetting.RecoveryMechanisms[1].Name","verified_email") CkJsonObject::ckUpdateInt(json,"AccountRecoverySetting.RecoveryMechanisms[1].Priority",2) CkJsonObject::ckUpdateBool(json,"AdminCreateUserConfig.AllowAdminCreateUserOnly",0) CkJsonObject::ckUpdateString(json,"AdminCreateUserConfig.InviteMessageTemplate.EmailMessage","Your username is {username} and temporary password is {####}. ") CkJsonObject::ckUpdateString(json,"AdminCreateUserConfig.InviteMessageTemplate.EmailSubject","Your temporary password") CkJsonObject::ckUpdateString(json,"AdminCreateUserConfig.InviteMessageTemplate.SMSMessage","Your username is {username} and temporary password is {####}. ") CkJsonObject::ckUpdateInt(json,"AdminCreateUserConfig.TemporaryPasswordValidityDays",7) CkJsonObject::ckUpdateString(json,"AutoVerifiedAttributes[0]","email") CkJsonObject::ckUpdateString(json,"AutoVerifiedAttributes[1]","phone_number") CkJsonObject::ckUpdateString(json,"EmailConfiguration.EmailSendingAccount","DEVELOPER") CkJsonObject::ckUpdateString(json,"EmailConfiguration.From","joe@example.com") CkJsonObject::ckUpdateString(json,"EmailConfiguration.ReplyToEmailAddress","joe@example.com") CkJsonObject::ckUpdateString(json,"EmailConfiguration.SourceArn","arn:aws:ses:us-west-2:954491834127:identity/joe@example.com") CkJsonObject::ckUpdateString(json,"EmailVerificationMessage","Your verification code is {####}. ") CkJsonObject::ckUpdateString(json,"EmailVerificationSubject","Your verification code") CkJsonObject::ckUpdateNewObject(json,"LambdaConfig") CkJsonObject::ckUpdateString(json,"MfaConfiguration","OFF") CkJsonObject::ckUpdateString(json,"PoolName","MyTestPool") CkJsonObject::ckUpdateInt(json,"Policies.PasswordPolicy.MinimumLength",8) CkJsonObject::ckUpdateBool(json,"Policies.PasswordPolicy.RequireLowercase",1) CkJsonObject::ckUpdateBool(json,"Policies.PasswordPolicy.RequireNumbers",1) CkJsonObject::ckUpdateBool(json,"Policies.PasswordPolicy.RequireSymbols",1) CkJsonObject::ckUpdateBool(json,"Policies.PasswordPolicy.RequireUppercase",1) CkJsonObject::ckUpdateInt(json,"Policies.PasswordPolicy.TemporaryPasswordValidityDays",7) CkJsonObject::ckUpdateString(json,"Schema[0].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[0].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[0].Mutable",0) CkJsonObject::ckUpdateString(json,"Schema[0].Name","sub") CkJsonObject::ckUpdateBool(json,"Schema[0].Required",1) CkJsonObject::ckUpdateString(json,"Schema[0].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[0].StringAttributeConstraints.MinLength","1") CkJsonObject::ckUpdateString(json,"Schema[1].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[1].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[1].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[1].Name","name") CkJsonObject::ckUpdateBool(json,"Schema[1].Required",0) CkJsonObject::ckUpdateString(json,"Schema[1].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[1].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[2].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[2].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[2].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[2].Name","given_name") CkJsonObject::ckUpdateBool(json,"Schema[2].Required",0) CkJsonObject::ckUpdateString(json,"Schema[2].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[2].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[3].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[3].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[3].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[3].Name","family_name") CkJsonObject::ckUpdateBool(json,"Schema[3].Required",0) CkJsonObject::ckUpdateString(json,"Schema[3].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[3].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[4].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[4].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[4].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[4].Name","middle_name") CkJsonObject::ckUpdateBool(json,"Schema[4].Required",0) CkJsonObject::ckUpdateString(json,"Schema[4].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[4].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[5].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[5].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[5].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[5].Name","nickname") CkJsonObject::ckUpdateBool(json,"Schema[5].Required",0) CkJsonObject::ckUpdateString(json,"Schema[5].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[5].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[6].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[6].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[6].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[6].Name","preferred_username") CkJsonObject::ckUpdateBool(json,"Schema[6].Required",0) CkJsonObject::ckUpdateString(json,"Schema[6].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[6].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[7].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[7].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[7].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[7].Name","profile") CkJsonObject::ckUpdateBool(json,"Schema[7].Required",0) CkJsonObject::ckUpdateString(json,"Schema[7].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[7].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[8].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[8].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[8].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[8].Name","picture") CkJsonObject::ckUpdateBool(json,"Schema[8].Required",0) CkJsonObject::ckUpdateString(json,"Schema[8].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[8].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[9].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[9].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[9].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[9].Name","website") CkJsonObject::ckUpdateBool(json,"Schema[9].Required",0) CkJsonObject::ckUpdateString(json,"Schema[9].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[9].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[10].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[10].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[10].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[10].Name","email") CkJsonObject::ckUpdateBool(json,"Schema[10].Required",1) CkJsonObject::ckUpdateString(json,"Schema[10].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[10].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[11].AttributeDataType","Boolean") CkJsonObject::ckUpdateBool(json,"Schema[11].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[11].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[11].Name","email_verified") CkJsonObject::ckUpdateBool(json,"Schema[11].Required",0) CkJsonObject::ckUpdateString(json,"Schema[12].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[12].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[12].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[12].Name","gender") CkJsonObject::ckUpdateBool(json,"Schema[12].Required",0) CkJsonObject::ckUpdateString(json,"Schema[12].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[12].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[13].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[13].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[13].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[13].Name","birthdate") CkJsonObject::ckUpdateBool(json,"Schema[13].Required",0) CkJsonObject::ckUpdateString(json,"Schema[13].StringAttributeConstraints.MaxLength","10") CkJsonObject::ckUpdateString(json,"Schema[13].StringAttributeConstraints.MinLength","10") CkJsonObject::ckUpdateString(json,"Schema[14].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[14].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[14].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[14].Name","zoneinfo") CkJsonObject::ckUpdateBool(json,"Schema[14].Required",0) CkJsonObject::ckUpdateString(json,"Schema[14].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[14].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[15].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[15].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[15].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[15].Name","locale") CkJsonObject::ckUpdateBool(json,"Schema[15].Required",0) CkJsonObject::ckUpdateString(json,"Schema[15].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[15].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[16].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[16].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[16].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[16].Name","phone_number") CkJsonObject::ckUpdateBool(json,"Schema[16].Required",0) CkJsonObject::ckUpdateString(json,"Schema[16].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[16].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[17].AttributeDataType","String") CkJsonObject::ckUpdateBool(json,"Schema[17].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[17].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[17].Name","address") CkJsonObject::ckUpdateBool(json,"Schema[17].Required",0) CkJsonObject::ckUpdateString(json,"Schema[17].StringAttributeConstraints.MaxLength","2048") CkJsonObject::ckUpdateString(json,"Schema[17].StringAttributeConstraints.MinLength","0") CkJsonObject::ckUpdateString(json,"Schema[18].AttributeDataType","Number") CkJsonObject::ckUpdateBool(json,"Schema[18].DeveloperOnlyAttribute",0) CkJsonObject::ckUpdateBool(json,"Schema[18].Mutable",1) CkJsonObject::ckUpdateString(json,"Schema[18].Name","updated_at") CkJsonObject::ckUpdateString(json,"Schema[18].NumberAttributeConstraints.MinValue","0") CkJsonObject::ckUpdateBool(json,"Schema[18].Required",0) CkJsonObject::ckUpdateString(json,"SmsAuthenticationMessage","Your verification code is {####}. ") ; Use your own value here: CkJsonObject::ckUpdateString(json,"SmsConfiguration.ExternalId","94b17737-216b-4cf7-a29e-17e990e91300") CkJsonObject::ckUpdateString(json,"SmsConfiguration.SnsCallerArn","arn:aws:iam::954491834127:role/service-role/chilkat-SMS-Role") CkJsonObject::ckUpdateString(json,"SmsVerificationMessage","Your verification code is {####}. ") CkJsonObject::ckUpdateBool(json,"UsernameConfiguration.CaseSensitive",0) CkJsonObject::ckUpdateString(json,"VerificationMessageTemplate.DefaultEmailOption","CONFIRM_WITH_CODE") CkJsonObject::ckUpdateString(json,"VerificationMessageTemplate.EmailMessage","Your verification code is {####}. ") CkJsonObject::ckUpdateString(json,"VerificationMessageTemplate.EmailSubject","Your verification code") CkJsonObject::ckUpdateString(json,"VerificationMessageTemplate.SmsMessage","Your verification code is {####}. ") CkRest::ckAddHeader(rest,"Content-Type","application/x-amz-json-1.0") CkRest::ckAddHeader(rest,"X-Amz-Target","AWSCognitoIdentityProviderService.CreateUserPool") CkRest::ckAddHeader(rest,"Accept-Encoding","identity") sbRequestBody.i = CkStringBuilder::ckCreate() If sbRequestBody.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::ckEmitSb(json,sbRequestBody) sbResponseBody.i = CkStringBuilder::ckCreate() If sbResponseBody.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkRest::ckFullRequestSb(rest,"POST","/",sbRequestBody,sbResponseBody) If success <> 1 Debug CkRest::ckLastErrorText(rest) CkRest::ckDispose(rest) CkAuthAws::ckDispose(authAws) CkJsonObject::ckDispose(json) CkStringBuilder::ckDispose(sbRequestBody) CkStringBuilder::ckDispose(sbResponseBody) ProcedureReturn EndIf respStatusCode.i = CkRest::ckResponseStatusCode(rest) Debug "response status code = " + Str(respStatusCode) If respStatusCode <> 200 Debug "Response Status Code = " + Str(respStatusCode) Debug "Response Header:" Debug CkRest::ckResponseHeader(rest) Debug "Response Body:" Debug CkStringBuilder::ckGetAsString(sbResponseBody) CkRest::ckDispose(rest) CkAuthAws::ckDispose(authAws) CkJsonObject::ckDispose(json) CkStringBuilder::ckDispose(sbRequestBody) CkStringBuilder::ckDispose(sbResponseBody) ProcedureReturn EndIf jsonResponse.i = CkJsonObject::ckCreate() If jsonResponse.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::ckLoadSb(jsonResponse,sbResponseBody) CkJsonObject::setCkEmitCompact(jsonResponse, 0) Debug CkJsonObject::ckEmit(jsonResponse) ; The response is similar to the response at Cognito Describe User Pool CkRest::ckDispose(rest) CkAuthAws::ckDispose(authAws) CkJsonObject::ckDispose(json) CkStringBuilder::ckDispose(sbRequestBody) CkStringBuilder::ckDispose(sbResponseBody) CkJsonObject::ckDispose(jsonResponse) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.