List latest node definitions
Use the listLatestNodeDefinitions action on the realm-config/authentication/authenticationtrees/nodes endpoint to get the most up-to-date
definitions for all available nodes. This information is useful when creating or updating journeys because it provides the current node details.
This endpoint returns a list of node definitions for the latest version of each node, including the following information:
-
Node version
-
Node schema
The node schema includes the configuration property type, which is required when creating ESV variables to use in nodes. Make sure the ESV
expressionTypematches the propertytype.For example, to create an ESV variable for the Minimum Password Length property in the Identity Store Decision node, you’d set the ESV
expressionTypetointto match the property type returned in the node schema, as shown in the example response below. -
Configuration template
-
Node outcomes
The following example shows a partial response for the IdentityStoreDecisionNode:
$ curl \
--request POST \
--header "Authorization: Bearer <access-token>" \
--header "Content-Type: application/json" \
--header "Accept-API-Version: protocol=2.1,resource=3.0" \
"https://<tenant-env-fqdn>/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes?_action=listLatestNodeDefinitions"
{
"result": {
...
"IdentityStoreDecisionNode": {
"_id": "IdentityStoreDecisionNode",
"name": "Identity Store Decision",
"collection": true,
"tags": [
"basic authn",
"basic authentication"
],
"metadata": {
"tags": [
"basic authn",
"basic authentication"
]
},
"help": "Verifies that the username and password values exist in the Identity Store configured in the realm.",
"version": "1.0",
"schema": {
"type": "object",
"properties": {
"minimumPasswordLength": {
"title": "Minimum Password Length",
"description": "When the password is changed the node will reject passwords which are shorter than this value. If this value is set to 0 the minimum password length is not checked by the node.",
"propertyOrder": 200,
"type": "integer",
"exampleValue": "",
"default": 8
},
"useUniversalIdForUsername": {
"title": "Username as Universal Identifier",
"description": "Set to true to allow the username to be represented by the user’s universal identifier (uuid). If set to false, the username representation will remain unchanged.",
"propertyOrder": 300,
"type": "boolean",
"exampleValue": "",
"default": false
},
"mixedCaseForPasswordChangeMessages": {
"title": "Use mixed case for password change messages",
"description": "Defines whether password change messages returned are in mixed (sentence) case or uppercase. Default: false",
"propertyOrder": 400,
"type": "boolean",
"exampleValue": "",
"default": false
}
},
"required": [
"minimumPasswordLength",
"useUniversalIdForUsername",
"mixedCaseForPasswordChangeMessages"
]
},
"template": {
"useUniversalIdForUsername": false,
"minimumPasswordLength": 8,
"mixedCaseForPasswordChangeMessages": false
},
"outcomes": [
{
"id": "TRUE",
"displayName": "True"
},
{
"id": "FALSE",
"displayName": "False"
},
{
"id": "LOCKED",
"displayName": "Locked"
},
{
"id": "CANCELLED",
"displayName": "Cancelled"
},
{
"id": "EXPIRED",
"displayName": "Expired"
}
]
},
...
}