Page created: 3 Jun 2022
|
Page updated: 16 Jun 2023
JavaScript Object Notation (JSON) Pointer defines a syntax for identifying a specific value within a JSON payload. Using the sample payload and JSON Pointer examples below, identify the attributes that you want to use to populate your attribute contract.
For a complete technical description of JSON Pointer syntax, see JavaScript Object Notation (JSON) Pointer on ietf.org.
Example PingOne Risk JSON payload
{
"_links": {
"self": {
"href": "https://api.pingone.com/v1/environments/fe561fe9-e374-4de8-be4c-0e38b3b83356/riskEvaluations/8d482f35-4ae5-4ecc-b9ff-db696a01f39f"
},
"environment": {
"href": "https://api.pingone.com/v1/environments/fe561fe9-e374-4de8-be4c-0e38b3b83356"
},
"event": {
"href": "https://api.pingone.com/v1/environments/fe561fe9-e374-4de8-be4c-0e38b3b83356/riskEvaluations/8d482f35-4ae5-4ecc-b9ff-db696a01f39f/event"
}
},
"id": "8d482f35-4ae5-4ecc-b9ff-db696a01f39f",
"environment": {
"id": "fe561fe9-e374-4de8-be4c-0e38b3b83356"
},
"createdAt": "2022-09-16T20:49:04.029Z",
"updatedAt": "2022-09-16T20:49:04.029Z",
"event": {
"completionStatus": "IN_PROGRESS",
"ip": "209.133.96.106",
"flow": {
"type": "AUTHENTICATION"
},
"user": {
"id": "john",
"name": "John DeMock",
"type": "EXTERNAL",
"groups": [
{
"name": "dev"
},
{
"name": "sre"
}
]
},
"origin": "PF_RISK_IK",
"customProp": {
"": {
"nested": [
"abcd",
3.14
]
}
},
"myNumber": 8.1,
"isManaged": "No"
},
"riskPolicySet": {
"id": "368a8459-3f46-4301-bc1e-f4214eb4a5f5",
"name": "IK-2406"
},
"result": {
"value": "Unmanaged device!",
"level": "HIGH",
"score": 1.8918918918918919,
"source": "OVERRIDE",
"type": "VALUE"
},
"details": {
"ipAddressReputation": {
"score": 0,
"level": "LOW"
},
"anonymousNetworkDetected": false,
"country": "united states",
"state": "georgia",
"city": "atlanta",
"impossibleTravel": false,
"ipVelocityByUser": {
"level": "LOW",
"threshold": {
"source": "MIN_NOT_REACHED"
},
"velocity": {
"distinctCount": 1,
"during": 3600
},
"type": "VELOCITY"
},
"userLocationAnomaly": {
"level": "HIGH",
"reason": "New transaction location",
"status": "NEW_LOCATION",
"type": "USER_LOCATION_ANOMALY"
},
"userVelocityByIp": {
"level": "LOW",
"threshold": {
"source": "MIN_NOT_REACHED"
},
"velocity": {
"distinctCount": 1,
"during": 3600
},
"type": "VELOCITY"
},
"geoVelocity": {
"level": "LOW",
"type": "GEO_VELOCITY"
},
"userRiskBehavior": {
"reason": "Not enough information to assess risk score",
"status": "NOT_AVAILABLE",
"type": "USER_RISK_BEHAVIOR"
},
"ipRisk": {
"level": "LOW",
"type": "IP_REPUTATION"
},
"userBasedRiskBehavior": {
"reason": "Not enough information to assess risk score",
"status": "IN_TRAINING_PERIOD",
"type": "USER_RISK_BEHAVIOR"
},
"anonymousNetwork": {
"level": "LOW",
"type": "ANONYMOUS_NETWORK"
},
"myNumber": {
"level": "HIGH",
"reason": "Attribute ${event.myNumber} is 8.1.",
"attribute": "${event.myNumber}",
"value": 8.1,
"type": "MAP"
},
"nested": {
"reason": "Not enough information to assess risk score",
"status": "NOT_AVAILABLE",
"attribute": "${event.customProp.nested}",
"type": "MAP"
},
"isManaged": {
"level": "HIGH",
"reason": "Attribute ${event.isManaged} is \"No\".",
"attribute": "${event.isManaged}",
"value": "No",
"type": "MAP"
}
}
}
Description | JSON Pointer | Example value |
---|---|---|
Minimum Risk Module Policy Score |
/details/policies/MIN_RISK_MODULE/score |
|
Minimum Risk Module Policy Level |
/details/policies/MIN_RISK_MODULE/level |
|
Note:
To populate an attribute with the entire JSON response, leave the PingOne Risk API Attribute Mapping field blank.