Back to Collection Items
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
DECLARE @iTmp0 int
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
DECLARE @http int
-- Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
IF @hr <> 0
BEGIN
PRINT 'Failed to create ActiveX component'
RETURN
END
DECLARE @success int
-- Use this online tool to generate code from sample JSON: Generate Code to Create JSON
-- The following JSON is sent in the request body.
-- {
-- "authId": "{{authId}}",
-- "callbacks": [
-- {
-- "type": "ValidatedCreateUsernameCallback",
-- "output": [
-- {
-- "name": "policies",
-- "value": {
-- "policyRequirements": [
-- "REQUIRED",
-- "MIN_LENGTH",
-- "VALID_TYPE",
-- "VALID_USERNAME",
-- "CANNOT_CONTAIN_CHARACTERS",
-- "MAX_LENGTH"
-- ],
-- "fallbackPolicies": null,
-- "name": "userName",
-- "policies": [
-- {
-- "policyRequirements": [
-- "REQUIRED"
-- ],
-- "policyId": "required"
-- },
-- {
-- "policyRequirements": [
-- "REQUIRED"
-- ],
-- "policyId": "not-empty"
-- },
-- {
-- "policyRequirements": [
-- "MIN_LENGTH"
-- ],
-- "policyId": "minimum-length",
-- "params": {
-- "minLength": 1
-- }
-- },
-- {
-- "policyRequirements": [
-- "VALID_TYPE"
-- ],
-- "policyId": "valid-type",
-- "params": {
-- "types": [
-- "string"
-- ]
-- }
-- },
-- {
-- "policyId": "valid-username",
-- "policyRequirements": [
-- "VALID_USERNAME"
-- ]
-- },
-- {
-- "policyId": "cannot-contain-characters",
-- "params": {
-- "forbiddenChars": [
-- "/"
-- ]
-- },
-- "policyRequirements": [
-- "CANNOT_CONTAIN_CHARACTERS"
-- ]
-- },
-- {
-- "policyId": "minimum-length",
-- "params": {
-- "minLength": 1
-- },
-- "policyRequirements": [
-- "MIN_LENGTH"
-- ]
-- },
-- {
-- "policyId": "maximum-length",
-- "params": {
-- "maxLength": 255
-- },
-- "policyRequirements": [
-- "MAX_LENGTH"
-- ]
-- }
-- ],
-- "conditionalPolicies": null
-- }
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "prompt",
-- "value": "Username"
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken1",
-- "value": "{{myRandomUsername}}"
-- },
-- {
-- "name": "IDToken1validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 0
-- },
-- {
-- "type": "StringAttributeInputCallback",
-- "output": [
-- {
-- "name": "name",
-- "value": "givenName"
-- },
-- {
-- "name": "prompt",
-- "value": "First Name"
-- },
-- {
-- "name": "required",
-- "value": true
-- },
-- {
-- "name": "policies",
-- "value": {
-- "policyRequirements": [
-- "REQUIRED",
-- "VALID_TYPE"
-- ],
-- "fallbackPolicies": null,
-- "name": "givenName",
-- "policies": [
-- {
-- "policyRequirements": [
-- "REQUIRED"
-- ],
-- "policyId": "required"
-- },
-- {
-- "policyRequirements": [
-- "VALID_TYPE"
-- ],
-- "policyId": "valid-type",
-- "params": {
-- "types": [
-- "string"
-- ]
-- }
-- }
-- ],
-- "conditionalPolicies": null
-- }
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "value",
-- "value": ""
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken2",
-- "value": "Postman"
-- },
-- {
-- "name": "IDToken2validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 1
-- },
-- {
-- "type": "StringAttributeInputCallback",
-- "output": [
-- {
-- "name": "name",
-- "value": "sn"
-- },
-- {
-- "name": "prompt",
-- "value": "Last Name"
-- },
-- {
-- "name": "required",
-- "value": true
-- },
-- {
-- "name": "policies",
-- "value": {
-- "policyRequirements": [
-- "REQUIRED",
-- "VALID_TYPE"
-- ],
-- "fallbackPolicies": null,
-- "name": "sn",
-- "policies": [
-- {
-- "policyRequirements": [
-- "REQUIRED"
-- ],
-- "policyId": "required"
-- },
-- {
-- "policyRequirements": [
-- "VALID_TYPE"
-- ],
-- "policyId": "valid-type",
-- "params": {
-- "types": [
-- "string"
-- ]
-- }
-- }
-- ],
-- "conditionalPolicies": null
-- }
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "value",
-- "value": ""
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken3",
-- "value": "Self-Service-User"
-- },
-- {
-- "name": "IDToken3validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 2
-- },
-- {
-- "type": "StringAttributeInputCallback",
-- "output": [
-- {
-- "name": "name",
-- "value": "mail"
-- },
-- {
-- "name": "prompt",
-- "value": "Email Address"
-- },
-- {
-- "name": "required",
-- "value": true
-- },
-- {
-- "name": "policies",
-- "value": {
-- "policyRequirements": [
-- "REQUIRED",
-- "VALID_TYPE",
-- "VALID_EMAIL_ADDRESS_FORMAT"
-- ],
-- "fallbackPolicies": null,
-- "name": "mail",
-- "policies": [
-- {
-- "policyRequirements": [
-- "REQUIRED"
-- ],
-- "policyId": "required"
-- },
-- {
-- "policyRequirements": [
-- "VALID_TYPE"
-- ],
-- "policyId": "valid-type",
-- "params": {
-- "types": [
-- "string"
-- ]
-- }
-- },
-- {
-- "policyId": "valid-email-address-format",
-- "policyRequirements": [
-- "VALID_EMAIL_ADDRESS_FORMAT"
-- ]
-- }
-- ],
-- "conditionalPolicies": null
-- }
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "value",
-- "value": ""
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken4",
-- "value": "{{myRandomUsername}}@selfservice.example.com"
-- },
-- {
-- "name": "IDToken4validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 3
-- },
-- {
-- "type": "BooleanAttributeInputCallback",
-- "output": [
-- {
-- "name": "name",
-- "value": "preferences/marketing"
-- },
-- {
-- "name": "prompt",
-- "value": "Send me special offers and services"
-- },
-- {
-- "name": "required",
-- "value": true
-- },
-- {
-- "name": "policies",
-- "value": {}
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "value",
-- "value": false
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken5",
-- "value": "{{value}}"
-- },
-- {
-- "name": "IDToken5validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 4
-- },
-- {
-- "type": "BooleanAttributeInputCallback",
-- "output": [
-- {
-- "name": "name",
-- "value": "preferences/updates"
-- },
-- {
-- "name": "prompt",
-- "value": "Send me news and updates"
-- },
-- {
-- "name": "required",
-- "value": true
-- },
-- {
-- "name": "policies",
-- "value": {}
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "value",
-- "value": false
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken6",
-- "value": "{{value}}"
-- },
-- {
-- "name": "IDToken6validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 5
-- },
-- {
-- "type": "ValidatedCreatePasswordCallback",
-- "output": [
-- {
-- "name": "echoOn",
-- "value": false
-- },
-- {
-- "name": "policies",
-- "value": {
-- "policyRequirements": [
-- "REQUIRED",
-- "MIN_LENGTH",
-- "VALID_TYPE",
-- "AT_LEAST_X_CAPITAL_LETTERS",
-- "AT_LEAST_X_NUMBERS",
-- "CANNOT_CONTAIN_OTHERS"
-- ],
-- "fallbackPolicies": null,
-- "name": "password",
-- "policies": [
-- {
-- "policyRequirements": [
-- "REQUIRED"
-- ],
-- "policyId": "not-empty"
-- },
-- {
-- "policyRequirements": [
-- "MIN_LENGTH"
-- ],
-- "policyId": "minimum-length",
-- "params": {
-- "minLength": 8
-- }
-- },
-- {
-- "policyRequirements": [
-- "VALID_TYPE"
-- ],
-- "policyId": "valid-type",
-- "params": {
-- "types": [
-- "string"
-- ]
-- }
-- },
-- {
-- "policyId": "at-least-X-capitals",
-- "params": {
-- "numCaps": 1
-- },
-- "policyRequirements": [
-- "AT_LEAST_X_CAPITAL_LETTERS"
-- ]
-- },
-- {
-- "policyId": "at-least-X-numbers",
-- "params": {
-- "numNums": 1
-- },
-- "policyRequirements": [
-- "AT_LEAST_X_NUMBERS"
-- ]
-- },
-- {
-- "policyId": "cannot-contain-others",
-- "params": {
-- "disallowedFields": [
-- "userName",
-- "givenName",
-- "sn"
-- ]
-- },
-- "policyRequirements": [
-- "CANNOT_CONTAIN_OTHERS"
-- ]
-- }
-- ],
-- "conditionalPolicies": null
-- }
-- },
-- {
-- "name": "failedPolicies",
-- "value": [
-- ]
-- },
-- {
-- "name": "validateOnly",
-- "value": false
-- },
-- {
-- "name": "prompt",
-- "value": "Password"
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken7",
-- "value": "Password1!"
-- },
-- {
-- "name": "IDToken7validateOnly",
-- "value": false
-- }
-- ],
-- "_id": 6
-- },
-- {
-- "type": "KbaCreateCallback",
-- "output": [
-- {
-- "name": "prompt",
-- "value": "Select a security question"
-- },
-- {
-- "name": "predefinedQuestions",
-- "value": [
-- "What's your favorite color?"
-- ]
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken8question",
-- "value": "What's your favorite color?"
-- },
-- {
-- "name": "IDToken8answer",
-- "value": "Cornflower Blue"
-- }
-- ],
-- "_id": 7
-- },
-- {
-- "type": "TermsAndConditionsCallback",
-- "output": [
-- {
-- "name": "version",
-- "value": "0.0"
-- },
-- {
-- "name": "terms",
-- "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
-- },
-- {
-- "name": "createDate",
-- "value": "2019-10-28T04:20:11.320Z"
-- }
-- ],
-- "input": [
-- {
-- "name": "IDToken9",
-- "value": true
-- }
-- ],
-- "_id": 8
-- }
-- ],
-- "header": "Sign Up",
-- "description": "Signing up is fast and easy.<br>Already have an account? <a href='#/service/Login'>Sign In</a>"
-- }
DECLARE @json int
-- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @json OUT
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'authId', '{{authId}}'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].type', 'ValidatedCreateUsernameCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policyRequirements[1]', 'MIN_LENGTH'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policyRequirements[2]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policyRequirements[3]', 'VALID_USERNAME'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policyRequirements[4]', 'CANNOT_CONTAIN_CHARACTERS'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policyRequirements[5]', 'MAX_LENGTH'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[0].output[0].value.fallbackPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.name', 'userName'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[0].policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[0].policyId', 'required'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[1].policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[1].policyId', 'not-empty'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[2].policyRequirements[0]', 'MIN_LENGTH'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[2].policyId', 'minimum-length'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[0].output[0].value.policies[2].params.minLength', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[3].policyRequirements[0]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[3].policyId', 'valid-type'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[3].params.types[0]', 'string'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[4].policyId', 'valid-username'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[4].policyRequirements[0]', 'VALID_USERNAME'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[5].policyId', 'cannot-contain-characters'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[5].params.forbiddenChars[0]', '/'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[5].policyRequirements[0]', 'CANNOT_CONTAIN_CHARACTERS'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[6].policyId', 'minimum-length'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[0].output[0].value.policies[6].params.minLength', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[6].policyRequirements[0]', 'MIN_LENGTH'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[7].policyId', 'maximum-length'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[0].output[0].value.policies[7].params.maxLength', 255
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[0].value.policies[7].policyRequirements[0]', 'MAX_LENGTH'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[0].output[0].value.conditionalPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[1].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[0].output[1].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[2].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[0].output[2].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[3].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].output[3].value', 'Username'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].input[0].name', 'IDToken1'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].input[0].value', '{{myRandomUsername}}'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[0].input[1].name', 'IDToken1validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[0].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[0]._id', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].type', 'StringAttributeInputCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[0].name', 'name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[0].value', 'givenName'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[1].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[1].value', 'First Name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[2].name', 'required'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[1].output[2].value', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policyRequirements[1]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[1].output[3].value.fallbackPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.name', 'givenName'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policies[0].policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policies[0].policyId', 'required'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policies[1].policyRequirements[0]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policies[1].policyId', 'valid-type'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[3].value.policies[1].params.types[0]', 'string'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[1].output[3].value.conditionalPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[4].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[1].output[4].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[5].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[1].output[5].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[6].name', 'value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].output[6].value', ''
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].input[0].name', 'IDToken2'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].input[0].value', 'Postman'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[1].input[1].name', 'IDToken2validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[1].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[1]._id', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].type', 'StringAttributeInputCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[0].name', 'name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[0].value', 'sn'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[1].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[1].value', 'Last Name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[2].name', 'required'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[2].output[2].value', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policyRequirements[1]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[2].output[3].value.fallbackPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.name', 'sn'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policies[0].policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policies[0].policyId', 'required'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policies[1].policyRequirements[0]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policies[1].policyId', 'valid-type'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[3].value.policies[1].params.types[0]', 'string'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[2].output[3].value.conditionalPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[4].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[2].output[4].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[5].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[2].output[5].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[6].name', 'value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].output[6].value', ''
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].input[0].name', 'IDToken3'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].input[0].value', 'Self-Service-User'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[2].input[1].name', 'IDToken3validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[2].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[2]._id', 2
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].type', 'StringAttributeInputCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[0].name', 'name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[0].value', 'mail'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[1].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[1].value', 'Email Address'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[2].name', 'required'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[3].output[2].value', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policyRequirements[1]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policyRequirements[2]', 'VALID_EMAIL_ADDRESS_FORMAT'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[3].output[3].value.fallbackPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.name', 'mail'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[0].policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[0].policyId', 'required'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[1].policyRequirements[0]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[1].policyId', 'valid-type'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[1].params.types[0]', 'string'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[2].policyId', 'valid-email-address-format'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[3].value.policies[2].policyRequirements[0]', 'VALID_EMAIL_ADDRESS_FORMAT'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[3].output[3].value.conditionalPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[4].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[3].output[4].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[5].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[3].output[5].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[6].name', 'value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].output[6].value', ''
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].input[0].name', 'IDToken4'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].input[0].value', '{{myRandomUsername}}@selfservice.example.com'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[3].input[1].name', 'IDToken4validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[3].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[3]._id', 3
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].type', 'BooleanAttributeInputCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[0].name', 'name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[0].value', 'preferences/marketing'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[1].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[1].value', 'Send me special offers and services'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[2].name', 'required'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[4].output[2].value', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[3].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateNewObject', @success OUT, 'callbacks[4].output[3].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[4].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[4].output[4].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[5].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[4].output[5].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].output[6].name', 'value'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[4].output[6].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].input[0].name', 'IDToken5'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].input[0].value', '{{value}}'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[4].input[1].name', 'IDToken5validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[4].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[4]._id', 4
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].type', 'BooleanAttributeInputCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[0].name', 'name'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[0].value', 'preferences/updates'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[1].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[1].value', 'Send me news and updates'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[2].name', 'required'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[5].output[2].value', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[3].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateNewObject', @success OUT, 'callbacks[5].output[3].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[4].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[5].output[4].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[5].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[5].output[5].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].output[6].name', 'value'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[5].output[6].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].input[0].name', 'IDToken6'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].input[0].value', '{{value}}'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[5].input[1].name', 'IDToken6validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[5].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[5]._id', 5
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].type', 'ValidatedCreatePasswordCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[0].name', 'echoOn'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[6].output[0].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].name', 'policies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policyRequirements[1]', 'MIN_LENGTH'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policyRequirements[2]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policyRequirements[3]', 'AT_LEAST_X_CAPITAL_LETTERS'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policyRequirements[4]', 'AT_LEAST_X_NUMBERS'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policyRequirements[5]', 'CANNOT_CONTAIN_OTHERS'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[6].output[1].value.fallbackPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.name', 'password'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[0].policyRequirements[0]', 'REQUIRED'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[0].policyId', 'not-empty'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[1].policyRequirements[0]', 'MIN_LENGTH'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[1].policyId', 'minimum-length'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[6].output[1].value.policies[1].params.minLength', 8
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[2].policyRequirements[0]', 'VALID_TYPE'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[2].policyId', 'valid-type'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[2].params.types[0]', 'string'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[3].policyId', 'at-least-X-capitals'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[6].output[1].value.policies[3].params.numCaps', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[3].policyRequirements[0]', 'AT_LEAST_X_CAPITAL_LETTERS'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[4].policyId', 'at-least-X-numbers'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[6].output[1].value.policies[4].params.numNums', 1
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[4].policyRequirements[0]', 'AT_LEAST_X_NUMBERS'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[5].policyId', 'cannot-contain-others'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[5].params.disallowedFields[0]', 'userName'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[5].params.disallowedFields[1]', 'givenName'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[5].params.disallowedFields[2]', 'sn'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[1].value.policies[5].policyRequirements[0]', 'CANNOT_CONTAIN_OTHERS'
EXEC sp_OAMethod @json, 'UpdateNull', @success OUT, 'callbacks[6].output[1].value.conditionalPolicies'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[2].name', 'failedPolicies'
EXEC sp_OAMethod @json, 'UpdateNewArray', @success OUT, 'callbacks[6].output[2].value'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[3].name', 'validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[6].output[3].value', 0
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[4].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].output[4].value', 'Password'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].input[0].name', 'IDToken7'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].input[0].value', 'Password1!'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[6].input[1].name', 'IDToken7validateOnly'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[6].input[1].value', 0
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[6]._id', 6
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].type', 'KbaCreateCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].output[0].name', 'prompt'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].output[0].value', 'Select a security question'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].output[1].name', 'predefinedQuestions'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].output[1].value[0]', 'What''s your favorite color?'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].input[0].name', 'IDToken8question'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].input[0].value', 'What''s your favorite color?'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].input[1].name', 'IDToken8answer'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[7].input[1].value', 'Cornflower Blue'
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[7]._id', 7
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].type', 'TermsAndConditionsCallback'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].output[0].name', 'version'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].output[0].value', '0.0'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].output[1].name', 'terms'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].output[1].value', 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].output[2].name', 'createDate'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].output[2].value', '2019-10-28T04:20:11.320Z'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'callbacks[8].input[0].name', 'IDToken9'
EXEC sp_OAMethod @json, 'UpdateBool', @success OUT, 'callbacks[8].input[0].value', 1
EXEC sp_OAMethod @json, 'UpdateInt', @success OUT, 'callbacks[8]._id', 8
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'header', 'Sign Up'
EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'description', 'Signing up is fast and easy.<br>Already have an account? <a href=''#/service/Login''>Sign In</a>'
EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Content-Type', 'application/json'
EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Accept-API-Version', 'resource=2.0, protocol=1.0'
DECLARE @resp int
EXEC sp_OAMethod @http, 'PostJson3', @resp OUT, 'https://<tenant-name>.forgeblocks.com/am/json/realms/root/realms/alpha/authenticate?authIndexType=service&authIndexValue=Registration', 'application/json', @json
EXEC sp_OAGetProperty @http, 'LastMethodSuccess', @iTmp0 OUT
IF @iTmp0 = 0
BEGIN
EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @json
RETURN
END
DECLARE @sbResponseBody int
-- Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbResponseBody OUT
EXEC sp_OAMethod @resp, 'GetBodySb', @success OUT, @sbResponseBody
DECLARE @jResp int
-- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jResp OUT
EXEC sp_OAMethod @jResp, 'LoadSb', @success OUT, @sbResponseBody
EXEC sp_OASetProperty @jResp, 'EmitCompact', 0
PRINT 'Response Body:'
EXEC sp_OAMethod @jResp, 'Emit', @sTmp0 OUT
PRINT @sTmp0
DECLARE @respStatusCode int
EXEC sp_OAGetProperty @resp, 'StatusCode', @respStatusCode OUT
PRINT 'Response Status Code = ' + @respStatusCode
IF @respStatusCode >= 400
BEGIN
PRINT 'Response Header:'
EXEC sp_OAGetProperty @resp, 'Header', @sTmp0 OUT
PRINT @sTmp0
PRINT 'Failed.'
EXEC @hr = sp_OADestroy @resp
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @json
EXEC @hr = sp_OADestroy @sbResponseBody
EXEC @hr = sp_OADestroy @jResp
RETURN
END
EXEC @hr = sp_OADestroy @resp
-- Sample JSON response:
-- (Sample code for parsing the JSON response is shown below)
-- {
-- "tokenId": "N60dPV99pcqVVI.*AAJTSQACMDEAAANDVFMAAlMxAAA.*",
-- "successUrl": "/openam/console",
-- "realm": "/"
-- }
-- Sample code for parsing the JSON response...
-- Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
DECLARE @tokenId nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @tokenId OUT, 'tokenId'
DECLARE @successUrl nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @successUrl OUT, 'successUrl'
DECLARE @realm nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @realm OUT, 'realm'
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @json
EXEC @hr = sp_OADestroy @sbResponseBody
EXEC @hr = sp_OADestroy @jResp
END
GO
Curl Command
curl -X POST
-H "Content-Type: application/json"
-H "Accept-API-Version: resource=2.0, protocol=1.0"
-d '{
"authId": "{{authId}}",
"callbacks": [
{
"type": "ValidatedCreateUsernameCallback",
"output": [
{
"name": "policies",
"value": {
"policyRequirements": [
"REQUIRED",
"MIN_LENGTH",
"VALID_TYPE",
"VALID_USERNAME",
"CANNOT_CONTAIN_CHARACTERS",
"MAX_LENGTH"
],
"fallbackPolicies": null,
"name": "userName",
"policies": [
{
"policyRequirements": [
"REQUIRED"
],
"policyId": "required"
},
{
"policyRequirements": [
"REQUIRED"
],
"policyId": "not-empty"
},
{
"policyRequirements": [
"MIN_LENGTH"
],
"policyId": "minimum-length",
"params": {
"minLength": 1
}
},
{
"policyRequirements": [
"VALID_TYPE"
],
"policyId": "valid-type",
"params": {
"types": [
"string"
]
}
},
{
"policyId": "valid-username",
"policyRequirements": [
"VALID_USERNAME"
]
},
{
"policyId": "cannot-contain-characters",
"params": {
"forbiddenChars": [
"/"
]
},
"policyRequirements": [
"CANNOT_CONTAIN_CHARACTERS"
]
},
{
"policyId": "minimum-length",
"params": {
"minLength": 1
},
"policyRequirements": [
"MIN_LENGTH"
]
},
{
"policyId": "maximum-length",
"params": {
"maxLength": 255
},
"policyRequirements": [
"MAX_LENGTH"
]
}
],
"conditionalPolicies": null
}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "prompt",
"value": "Username"
}
],
"input": [
{
"name": "IDToken1",
"value": "{{myRandomUsername}}"
},
{
"name": "IDToken1validateOnly",
"value": false
}
],
"_id": 0
},
{
"type": "StringAttributeInputCallback",
"output": [
{
"name": "name",
"value": "givenName"
},
{
"name": "prompt",
"value": "First Name"
},
{
"name": "required",
"value": true
},
{
"name": "policies",
"value": {
"policyRequirements": [
"REQUIRED",
"VALID_TYPE"
],
"fallbackPolicies": null,
"name": "givenName",
"policies": [
{
"policyRequirements": [
"REQUIRED"
],
"policyId": "required"
},
{
"policyRequirements": [
"VALID_TYPE"
],
"policyId": "valid-type",
"params": {
"types": [
"string"
]
}
}
],
"conditionalPolicies": null
}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "value",
"value": ""
}
],
"input": [
{
"name": "IDToken2",
"value": "Postman"
},
{
"name": "IDToken2validateOnly",
"value": false
}
],
"_id": 1
},
{
"type": "StringAttributeInputCallback",
"output": [
{
"name": "name",
"value": "sn"
},
{
"name": "prompt",
"value": "Last Name"
},
{
"name": "required",
"value": true
},
{
"name": "policies",
"value": {
"policyRequirements": [
"REQUIRED",
"VALID_TYPE"
],
"fallbackPolicies": null,
"name": "sn",
"policies": [
{
"policyRequirements": [
"REQUIRED"
],
"policyId": "required"
},
{
"policyRequirements": [
"VALID_TYPE"
],
"policyId": "valid-type",
"params": {
"types": [
"string"
]
}
}
],
"conditionalPolicies": null
}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "value",
"value": ""
}
],
"input": [
{
"name": "IDToken3",
"value": "Self-Service-User"
},
{
"name": "IDToken3validateOnly",
"value": false
}
],
"_id": 2
},
{
"type": "StringAttributeInputCallback",
"output": [
{
"name": "name",
"value": "mail"
},
{
"name": "prompt",
"value": "Email Address"
},
{
"name": "required",
"value": true
},
{
"name": "policies",
"value": {
"policyRequirements": [
"REQUIRED",
"VALID_TYPE",
"VALID_EMAIL_ADDRESS_FORMAT"
],
"fallbackPolicies": null,
"name": "mail",
"policies": [
{
"policyRequirements": [
"REQUIRED"
],
"policyId": "required"
},
{
"policyRequirements": [
"VALID_TYPE"
],
"policyId": "valid-type",
"params": {
"types": [
"string"
]
}
},
{
"policyId": "valid-email-address-format",
"policyRequirements": [
"VALID_EMAIL_ADDRESS_FORMAT"
]
}
],
"conditionalPolicies": null
}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "value",
"value": ""
}
],
"input": [
{
"name": "IDToken4",
"value": "{{myRandomUsername}}@selfservice.example.com"
},
{
"name": "IDToken4validateOnly",
"value": false
}
],
"_id": 3
},
{
"type": "BooleanAttributeInputCallback",
"output": [
{
"name": "name",
"value": "preferences/marketing"
},
{
"name": "prompt",
"value": "Send me special offers and services"
},
{
"name": "required",
"value": true
},
{
"name": "policies",
"value": {}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "value",
"value": false
}
],
"input": [
{
"name": "IDToken5",
"value": {{$randomBoolean}}
},
{
"name": "IDToken5validateOnly",
"value": false
}
],
"_id": 4
},
{
"type": "BooleanAttributeInputCallback",
"output": [
{
"name": "name",
"value": "preferences/updates"
},
{
"name": "prompt",
"value": "Send me news and updates"
},
{
"name": "required",
"value": true
},
{
"name": "policies",
"value": {}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "value",
"value": false
}
],
"input": [
{
"name": "IDToken6",
"value": {{$randomBoolean}}
},
{
"name": "IDToken6validateOnly",
"value": false
}
],
"_id": 5
},
{
"type": "ValidatedCreatePasswordCallback",
"output": [
{
"name": "echoOn",
"value": false
},
{
"name": "policies",
"value": {
"policyRequirements": [
"REQUIRED",
"MIN_LENGTH",
"VALID_TYPE",
"AT_LEAST_X_CAPITAL_LETTERS",
"AT_LEAST_X_NUMBERS",
"CANNOT_CONTAIN_OTHERS"
],
"fallbackPolicies": null,
"name": "password",
"policies": [
{
"policyRequirements": [
"REQUIRED"
],
"policyId": "not-empty"
},
{
"policyRequirements": [
"MIN_LENGTH"
],
"policyId": "minimum-length",
"params": {
"minLength": 8
}
},
{
"policyRequirements": [
"VALID_TYPE"
],
"policyId": "valid-type",
"params": {
"types": [
"string"
]
}
},
{
"policyId": "at-least-X-capitals",
"params": {
"numCaps": 1
},
"policyRequirements": [
"AT_LEAST_X_CAPITAL_LETTERS"
]
},
{
"policyId": "at-least-X-numbers",
"params": {
"numNums": 1
},
"policyRequirements": [
"AT_LEAST_X_NUMBERS"
]
},
{
"policyId": "cannot-contain-others",
"params": {
"disallowedFields": [
"userName",
"givenName",
"sn"
]
},
"policyRequirements": [
"CANNOT_CONTAIN_OTHERS"
]
}
],
"conditionalPolicies": null
}
},
{
"name": "failedPolicies",
"value": []
},
{
"name": "validateOnly",
"value": false
},
{
"name": "prompt",
"value": "Password"
}
],
"input": [
{
"name": "IDToken7",
"value": "Password1!"
},
{
"name": "IDToken7validateOnly",
"value": false
}
],
"_id": 6
},
{
"type": "KbaCreateCallback",
"output": [
{
"name": "prompt",
"value": "Select a security question"
},
{
"name": "predefinedQuestions",
"value": [
"What\'s your favorite color?"
]
}
],
"input": [
{
"name": "IDToken8question",
"value": "What\'s your favorite color?"
},
{
"name": "IDToken8answer",
"value": "Cornflower Blue"
}
],
"_id": 7
},
{
"type": "TermsAndConditionsCallback",
"output": [
{
"name": "version",
"value": "0.0"
},
{
"name": "terms",
"value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
},
{
"name": "createDate",
"value": "2019-10-28T04:20:11.320Z"
}
],
"input": [
{
"name": "IDToken9",
"value": true
}
],
"_id": 8
}
],
"header": "Sign Up",
"description": "Signing up is fast and easy.<br>Already have an account? <a href=\'#/service/Login\'>Sign In</a>"
}'
https://<tenant-name>.forgeblocks.com/am/json/realms/root/realms/alpha/authenticate?authIndexType=service&authIndexValue=Registration
Postman Collection Item JSON
{
"name": "Step 2: Handle \"Registration\" Journey Callback",
"event": [
{
"listen": "test",
"script": {
"exec": [
"const JSONResponse = JSON.parse(responseBody);",
"",
"// Did request return SSO Token?",
"if(JSONResponse.tokenId && JSONResponse.tokenId != \"\")",
"{",
"",
" // Remove `authId` variable",
" pm.globals.unset(\"authId\");",
" ",
"}",
"",
"// Tests",
"",
"pm.test(\"Status code is 200\", () => {",
" pm.expect(pm.response.code).to.eql(200);",
"});",
"",
"pm.test(\"Response contains tokenId or authId\", function () {",
" pm.expect(JSONResponse).to.have.any.keys('tokenId', 'authId');",
"});",
""
],
"type": "text/javascript"
}
},
{
"listen": "prerequest",
"script": {
"exec": [
"pm.variables.set(\"myRandomUsername\", pm.variables.replaceIn('{{$randomUserName}}'));"
],
"type": "text/javascript"
}
}
],
"protocolProfileBehavior": {
"disableCookies": true
},
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": "Specifies that the `/json/authenticate` endpoint uses JSON format for requests."
},
{
"key": "Accept-API-Version",
"value": "resource=2.0, protocol=1.0",
"description": "Specifies the version of the `/json/authenticate` endpoint to use."
}
],
"body": {
"mode": "raw",
"raw": "{\n \"authId\": \"{{authId}}\",\n \"callbacks\": [\n {\n \"type\": \"ValidatedCreateUsernameCallback\",\n \"output\": [\n {\n \"name\": \"policies\",\n \"value\": {\n \"policyRequirements\": [\n \"REQUIRED\",\n \"MIN_LENGTH\",\n \"VALID_TYPE\",\n \"VALID_USERNAME\",\n \"CANNOT_CONTAIN_CHARACTERS\",\n \"MAX_LENGTH\"\n ],\n \"fallbackPolicies\": null,\n \"name\": \"userName\",\n \"policies\": [\n {\n \"policyRequirements\": [\n \"REQUIRED\"\n ],\n \"policyId\": \"required\"\n },\n {\n \"policyRequirements\": [\n \"REQUIRED\"\n ],\n \"policyId\": \"not-empty\"\n },\n {\n \"policyRequirements\": [\n \"MIN_LENGTH\"\n ],\n \"policyId\": \"minimum-length\",\n \"params\": {\n \"minLength\": 1\n }\n },\n {\n \"policyRequirements\": [\n \"VALID_TYPE\"\n ],\n \"policyId\": \"valid-type\",\n \"params\": {\n \"types\": [\n \"string\"\n ]\n }\n },\n {\n \"policyId\": \"valid-username\",\n \"policyRequirements\": [\n \"VALID_USERNAME\"\n ]\n },\n {\n \"policyId\": \"cannot-contain-characters\",\n \"params\": {\n \"forbiddenChars\": [\n \"/\"\n ]\n },\n \"policyRequirements\": [\n \"CANNOT_CONTAIN_CHARACTERS\"\n ]\n },\n {\n \"policyId\": \"minimum-length\",\n \"params\": {\n \"minLength\": 1\n },\n \"policyRequirements\": [\n \"MIN_LENGTH\"\n ]\n },\n {\n \"policyId\": \"maximum-length\",\n \"params\": {\n \"maxLength\": 255\n },\n \"policyRequirements\": [\n \"MAX_LENGTH\"\n ]\n }\n ],\n \"conditionalPolicies\": null\n }\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"prompt\",\n \"value\": \"Username\"\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken1\",\n \"value\": \"{{myRandomUsername}}\"\n },\n {\n \"name\": \"IDToken1validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 0\n },\n {\n \"type\": \"StringAttributeInputCallback\",\n \"output\": [\n {\n \"name\": \"name\",\n \"value\": \"givenName\"\n },\n {\n \"name\": \"prompt\",\n \"value\": \"First Name\"\n },\n {\n \"name\": \"required\",\n \"value\": true\n },\n {\n \"name\": \"policies\",\n \"value\": {\n \"policyRequirements\": [\n \"REQUIRED\",\n \"VALID_TYPE\"\n ],\n \"fallbackPolicies\": null,\n \"name\": \"givenName\",\n \"policies\": [\n {\n \"policyRequirements\": [\n \"REQUIRED\"\n ],\n \"policyId\": \"required\"\n },\n {\n \"policyRequirements\": [\n \"VALID_TYPE\"\n ],\n \"policyId\": \"valid-type\",\n \"params\": {\n \"types\": [\n \"string\"\n ]\n }\n }\n ],\n \"conditionalPolicies\": null\n }\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"value\",\n \"value\": \"\"\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken2\",\n \"value\": \"Postman\"\n },\n {\n \"name\": \"IDToken2validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 1\n },\n {\n \"type\": \"StringAttributeInputCallback\",\n \"output\": [\n {\n \"name\": \"name\",\n \"value\": \"sn\"\n },\n {\n \"name\": \"prompt\",\n \"value\": \"Last Name\"\n },\n {\n \"name\": \"required\",\n \"value\": true\n },\n {\n \"name\": \"policies\",\n \"value\": {\n \"policyRequirements\": [\n \"REQUIRED\",\n \"VALID_TYPE\"\n ],\n \"fallbackPolicies\": null,\n \"name\": \"sn\",\n \"policies\": [\n {\n \"policyRequirements\": [\n \"REQUIRED\"\n ],\n \"policyId\": \"required\"\n },\n {\n \"policyRequirements\": [\n \"VALID_TYPE\"\n ],\n \"policyId\": \"valid-type\",\n \"params\": {\n \"types\": [\n \"string\"\n ]\n }\n }\n ],\n \"conditionalPolicies\": null\n }\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"value\",\n \"value\": \"\"\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken3\",\n \"value\": \"Self-Service-User\"\n },\n {\n \"name\": \"IDToken3validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 2\n },\n {\n \"type\": \"StringAttributeInputCallback\",\n \"output\": [\n {\n \"name\": \"name\",\n \"value\": \"mail\"\n },\n {\n \"name\": \"prompt\",\n \"value\": \"Email Address\"\n },\n {\n \"name\": \"required\",\n \"value\": true\n },\n {\n \"name\": \"policies\",\n \"value\": {\n \"policyRequirements\": [\n \"REQUIRED\",\n \"VALID_TYPE\",\n \"VALID_EMAIL_ADDRESS_FORMAT\"\n ],\n \"fallbackPolicies\": null,\n \"name\": \"mail\",\n \"policies\": [\n {\n \"policyRequirements\": [\n \"REQUIRED\"\n ],\n \"policyId\": \"required\"\n },\n {\n \"policyRequirements\": [\n \"VALID_TYPE\"\n ],\n \"policyId\": \"valid-type\",\n \"params\": {\n \"types\": [\n \"string\"\n ]\n }\n },\n {\n \"policyId\": \"valid-email-address-format\",\n \"policyRequirements\": [\n \"VALID_EMAIL_ADDRESS_FORMAT\"\n ]\n }\n ],\n \"conditionalPolicies\": null\n }\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"value\",\n \"value\": \"\"\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken4\",\n \"value\": \"{{myRandomUsername}}@selfservice.example.com\"\n },\n {\n \"name\": \"IDToken4validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 3\n },\n {\n \"type\": \"BooleanAttributeInputCallback\",\n \"output\": [\n {\n \"name\": \"name\",\n \"value\": \"preferences/marketing\"\n },\n {\n \"name\": \"prompt\",\n \"value\": \"Send me special offers and services\"\n },\n {\n \"name\": \"required\",\n \"value\": true\n },\n {\n \"name\": \"policies\",\n \"value\": {}\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"value\",\n \"value\": false\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken5\",\n \"value\": {{$randomBoolean}}\n },\n {\n \"name\": \"IDToken5validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 4\n },\n {\n \"type\": \"BooleanAttributeInputCallback\",\n \"output\": [\n {\n \"name\": \"name\",\n \"value\": \"preferences/updates\"\n },\n {\n \"name\": \"prompt\",\n \"value\": \"Send me news and updates\"\n },\n {\n \"name\": \"required\",\n \"value\": true\n },\n {\n \"name\": \"policies\",\n \"value\": {}\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"value\",\n \"value\": false\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken6\",\n \"value\": {{$randomBoolean}}\n },\n {\n \"name\": \"IDToken6validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 5\n },\n {\n \"type\": \"ValidatedCreatePasswordCallback\",\n \"output\": [\n {\n \"name\": \"echoOn\",\n \"value\": false\n },\n {\n \"name\": \"policies\",\n \"value\": {\n \"policyRequirements\": [\n \"REQUIRED\",\n \"MIN_LENGTH\",\n \"VALID_TYPE\",\n \"AT_LEAST_X_CAPITAL_LETTERS\",\n \"AT_LEAST_X_NUMBERS\",\n \"CANNOT_CONTAIN_OTHERS\"\n ],\n \"fallbackPolicies\": null,\n \"name\": \"password\",\n \"policies\": [\n {\n \"policyRequirements\": [\n \"REQUIRED\"\n ],\n \"policyId\": \"not-empty\"\n },\n {\n \"policyRequirements\": [\n \"MIN_LENGTH\"\n ],\n \"policyId\": \"minimum-length\",\n \"params\": {\n \"minLength\": 8\n }\n },\n {\n \"policyRequirements\": [\n \"VALID_TYPE\"\n ],\n \"policyId\": \"valid-type\",\n \"params\": {\n \"types\": [\n \"string\"\n ]\n }\n },\n {\n \"policyId\": \"at-least-X-capitals\",\n \"params\": {\n \"numCaps\": 1\n },\n \"policyRequirements\": [\n \"AT_LEAST_X_CAPITAL_LETTERS\"\n ]\n },\n {\n \"policyId\": \"at-least-X-numbers\",\n \"params\": {\n \"numNums\": 1\n },\n \"policyRequirements\": [\n \"AT_LEAST_X_NUMBERS\"\n ]\n },\n {\n \"policyId\": \"cannot-contain-others\",\n \"params\": {\n \"disallowedFields\": [\n \"userName\",\n \"givenName\",\n \"sn\"\n ]\n },\n \"policyRequirements\": [\n \"CANNOT_CONTAIN_OTHERS\"\n ]\n }\n ],\n \"conditionalPolicies\": null\n }\n },\n {\n \"name\": \"failedPolicies\",\n \"value\": []\n },\n {\n \"name\": \"validateOnly\",\n \"value\": false\n },\n {\n \"name\": \"prompt\",\n \"value\": \"Password\"\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken7\",\n \"value\": \"Password1!\"\n },\n {\n \"name\": \"IDToken7validateOnly\",\n \"value\": false\n }\n ],\n \"_id\": 6\n },\n {\n \"type\": \"KbaCreateCallback\",\n \"output\": [\n {\n \"name\": \"prompt\",\n \"value\": \"Select a security question\"\n },\n {\n \"name\": \"predefinedQuestions\",\n \"value\": [\n \"What's your favorite color?\"\n ]\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken8question\",\n \"value\": \"What's your favorite color?\"\n },\n {\n \"name\": \"IDToken8answer\",\n \"value\": \"Cornflower Blue\"\n }\n ],\n \"_id\": 7\n },\n {\n \"type\": \"TermsAndConditionsCallback\",\n \"output\": [\n {\n \"name\": \"version\",\n \"value\": \"0.0\"\n },\n {\n \"name\": \"terms\",\n \"value\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\"\n },\n {\n \"name\": \"createDate\",\n \"value\": \"2019-10-28T04:20:11.320Z\"\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken9\",\n \"value\": true\n }\n ],\n \"_id\": 8\n }\n ],\n \"header\": \"Sign Up\",\n \"description\": \"Signing up is fast and easy.<br>Already have an account? <a href='#/service/Login'>Sign In</a>\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{amUrl}}/json{{realm}}/authenticate?authIndexType=service&authIndexValue=Registration",
"host": [
"{{amUrl}}"
],
"path": [
"json{{realm}}",
"authenticate"
],
"query": [
{
"key": "authIndexType",
"value": "service",
"description": "Allows the request to configure the service (for example, an authentication tree) to use for this request."
},
{
"key": "authIndexValue",
"value": "Registration",
"description": "Specifies the name of the service to use for this request.\nOverride this value using the `amAuthenticationTree` Postman variable."
}
]
},
"description": "Respond to the callbacks of the *Registration* journey.\n\nThe builtin *Registration* journey also authenticates the newly registered user and issues a session token."
},
"response": [
{
"name": "Success - authentication complete",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": "Specifies that the `/json/authenticate` endpoint uses JSON format for requests."
},
{
"key": "Accept-API-Version",
"value": "resource=2.0, protocol=1.0",
"description": "Specifies the version of the `/json/authenticate` endpoint to use."
}
],
"body": {
"mode": "raw",
"raw": "{\n \"authId\": \"{{authId}}\",\n \"callbacks\": [\n {\n \"type\": \"ChoiceCallback\",\n \"output\": [\n {\n \"name\": \"prompt\",\n \"value\": \"Succeed?\"\n },\n {\n \"name\": \"choices\",\n \"value\": [\n \"Yes\",\n \"No\"\n ]\n },\n {\n \"name\": \"defaultChoice\",\n \"value\": 0\n }\n ],\n \"input\": [\n {\n \"name\": \"IDToken1\",\n \"value\": 0\n }\n ]\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{amUrl}}/json{{realm}}/authenticate?authIndexType=service&authIndexValue={{loginJourney}}",
"host": [
"{{amUrl}}"
],
"path": [
"json{{realm}}",
"authenticate"
],
"query": [
{
"key": "authIndexType",
"value": "service",
"description": "Allows the request to configure the service (for example, an authentication tree) to use for this request."
},
{
"key": "authIndexValue",
"value": "{{loginJourney}}",
"description": "Specifies the name of the service to use for this request.\nOverride this value using the `amAuthenticationTree` Postman variable."
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
},
{
"key": "X-Content-Type-Options",
"value": "nosniff"
},
{
"key": "Cache-Control",
"value": "private"
},
{
"key": "Cache-Control",
"value": "no-cache, no-store, must-revalidate"
},
{
"key": "Set-Cookie",
"value": "iPlanetDirectoryPro=N60dPVcmOADQN170-8799pcqVVI.*AAJTSQACMDEAAlNLABw5QThIM0ZJd3RKcmNyWWYxSzlPaGhzcllsUXM9AAR0eXBlAANDVFMAAlMxAAA.*; Path=/; Domain=example.com; HttpOnly"
},
{
"key": "Set-Cookie",
"value": "amlbcookie=01; Path=/; Domain=example.com; HttpOnly"
},
{
"key": "Content-API-Version",
"value": "resource=2.1"
},
{
"key": "Expires",
"value": "0"
},
{
"key": "Pragma",
"value": "no-cache"
},
{
"key": "Content-Type",
"value": "application/json"
},
{
"key": "Content-Length",
"value": "167"
},
{
"key": "Date",
"value": "Wed, 12 Aug 2020 14:10:41 GMT"
}
],
"cookie": [
],
"body": "{\n \"tokenId\": \"N60dPV99pcqVVI.*AAJTSQACMDEAAANDVFMAAlMxAAA.*\",\n \"successUrl\": \"/openam/console\",\n \"realm\": \"/\"\n}"
}
]
}