Risk Assessment (RA)
Client risk scoring is dedicated to evaluate the risks involved with a new or existing client. This process is key to preventing fraud, ensuring compliance with regulations, and managing financial exposure. It typically involves assessing various aspects of a client's profile to understand and mitigate potential risks.
The requests described below must contain basic auth headers where username is api key and password is api secret.
1. RA profile(s)
Firstly, a risk assessment profile should be created. You can do that by logging into our dashboard and navigating to Risk assessment -> Risk assessment profiles
- Retrieve all RA profiles
- Retrieve specific RA profile
Send a HTTP GET request to: https://ivs.idenfy.com/risk/assessment-profiles/
Example response:
[
{
"id": "dd121b5c-e3ef-4197-b036-8b7e872f6678",
"name": "RA profile name"
}
]
Send a HTTP GET request to: https://ivs.idenfy.com/risk/assessment-profiles/{id}/
Request must contain path parameters:
Key | Required | Explanation | Type |
---|---|---|---|
id | Yes | A unique integer value identifying this risk assessment. | Integer |
Example response:
{
"id": "61fbe03e-961c-4c6f-a2cd-801083ddbe0d",
"name": "Name",
"description": "",
"sections": [
{
"key": "bXUsmLJeMI",
"name": "Category",
"weight": 100,
"questions": [
{
"choices": [
{
"key": "XOCgRfvUlu",
"title": "Yes"
},
{
"key": "QQALQApLKI",
"title": "No"
}
],
"key": "lib-YHlTleSKmo",
"name": "Is shareholder PEP?",
"title": "Is shareholder PEP?",
"type": "SELECT",
"riskLevels": [],
"riskLevelDefault": "LOW"
},
{
"choices": [],
"key": "lib-AEgWHKDkwF",
"name": "Shareholder residency",
"title": "Shareholder residency",
"type": "COUNTRY",
"riskLevels": [],
"riskLevelDefault": "MEDIUM"
}
]
}
]
}
2. RA check
Construct body and send HTTP POST request to:
https://ivs.idenfy.com/risk/assessment-profiles/{id}/check/
{id}
in the request should be a legit RA profile ID that could be retrieved on previous steps. Request body must contain sections
object that should be filled according to previously set profiles, that could be retrieved from RA profiles.
Example request & response
- Request
- Response
Key | Required | Explanation | Type |
---|---|---|---|
sections | Yes | Section keys from a questionnaire. | Object |
name | Yes | Full name of the person that should be checked | String |
{
"sections": {
"bXUsmLJeMI": {
"lib-YHlTleSKmo": {
"value": ["XOCgRfvUlu"]
},
"lib-AEgWHKDkwF": {
"value": ["HU"]
}
}
},
"name": "Matthew Collins"
}
{
"id": "17CRlVRrxUa91BAMvMdeYP",
"name": "Matthew Collins",
"sections": [
{
"key": "bXUsmLJeMI",
"name": "Category",
"weight": 100,
"questions": [
{
"key": "lib-YHlTleSKmo",
"name": "Is shareholder PEP?",
"type": "SELECT",
"title": "Is shareholder PEP?",
"choices": [
{
"key": "XOCgRfvUlu",
"title": "Yes"
},
{
"key": "QQALQApLKI",
"title": "No"
}
],
"riskLevels": [],
"riskLevelDefault": "LOW",
"answers": [
{
"key": "XOCgRfvUlu",
"answer": "Yes",
"riskLevel": "LOW",
"riskScore": 2
}
]
},
{
"key": "lib-AEgWHKDkwF",
"name": "Shareholder residency",
"type": "COUNTRY",
"title": "Shareholder residency",
"choices": [],
"riskLevels": [],
"riskLevelDefault": "MEDIUM",
"answers": [
{
"key": "HU",
"answer": null,
"riskLevel": "MEDIUM",
"riskScore": 3
}
]
}
],
"riskScore": 5,
"maxRiskScore": 5
}
],
"riskScore": 100,
"riskLevel": "VERY_HIGH",
"comment": null,
"createdAt": "2024-05-16T08:57:04.654818Z",
"updatedAt": "2024-05-16T08:57:04.654821Z",
"updateRequired": false,
"stateChangeEvent": "INITIAL",
"companyId": null,
"partner": {
"id": 2253,
"created": "2023-10-11T14:09:40.458303Z",
"companyName": "Name Of Environment TESTING",
"environment": "TESTING",
"isActive": true
},
"profile": {
"id": "61fbe03e-961c-4c6f-a2cd-801083ddbe0d",
"name": "Name"
},
"riskLevelChangedBy": null
}
3. RA recheck
Construct body and send HTTP PUT request to:
https://ivs.idenfy.com/risk/assessments/{assessment-id}
The assessment-id
in the request should be a legit RA check ID that could be received by retrieving all RA checks. If answers were changed, body should be contructed according to RA check request.
Example request & response
- Request
- Response
Key | Required | Explanation | Type |
---|---|---|---|
sections | Yes | Section keys from a questionnaire. | Object |
name | Yes | Full name of the person that should be checked | String |
{
"sections": {
"bXUsmLJeMI": {
"lib-YHlTleSKmo": {
"value": ["QQALQApLKI"]
},
"lib-AEgWHKDkwF": {
"value": ["EE"]
}
}
},
"name": "Matthew Collins"
}
{
"id": "17CRlVRrxUa91BAMvMdeYP",
"name": "Matthew Collins",
"sections": [
{
"key": "bXUsmLJeMI",
"name": "Category",
"weight": 100,
"questions": [
{
"key": "lib-YHlTleSKmo",
"name": "Is shareholder PEP?",
"type": "SELECT",
"title": "Is shareholder PEP?",
"choices": [
{
"key": "XOCgRfvUlu",
"title": "Yes"
},
{
"key": "QQALQApLKI",
"title": "No"
}
],
"riskLevels": [],
"riskLevelDefault": "LOW",
"answers": [
{
"key": "XOCgRfvUlu",
"answer": "Yes",
"riskLevel": "LOW",
"riskScore": 2
}
]
},
{
"key": "lib-AEgWHKDkwF",
"name": "Shareholder residency",
"type": "COUNTRY",
"title": "Shareholder residency",
"choices": [],
"riskLevels": [],
"riskLevelDefault": "MEDIUM",
"answers": [
{
"key": "HU",
"answer": null,
"riskLevel": "MEDIUM",
"riskScore": 3
}
]
}
],
"riskScore": 5,
"maxRiskScore": 5
}
],
"riskScore": 100,
"riskLevel": "VERY_HIGH",
"comment": null,
"createdAt": "2024-05-16 08:57:04.654818+00:00",
"updatedAt": "2024-05-16 08:57:04.654821+00:00",
"updateRequired": false,
"stateChangeEvent": "INITIAL",
"companyId": null,
"partner": {
"id": 2253,
"created": "2023-10-11T14:09:40.458303Z",
"companyName": "Name Of Environment TESTING",
"environment": "TESTING",
"isActive": true
},
"profile": {
"id": "61fbe03e-961c-4c6f-a2cd-801083ddbe0d",
"name": "Name"
},
"riskLevelChangedBy": null
}
4. Retrieve RA check list/entry
- Retrieve all RA checks
- Retrieve specific RA check
To retrieve list of all RA checks send a HTTP GET request to: https://ivs.idenfy.com/risk/assessments/
Response Example
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"id": "17CRlVRrxUa91BAMvMdeYP",
"name": "Matthew Collins",
"riskLevel": "VERY_HIGH",
"createdAt": "2024-05-16T08:57:04.654818Z",
"updateRequired": false
},
{
"id": "F1WQIFa7EdHAvjanJ0pAKc",
"name": "Sarah Robins",
"riskLevel": "VERY_LOW",
"createdAt": "2024-05-07T12:50:03.816388Z",
"updateRequired": false
}
]
}
To retrieve specific RA check send a HTTP GET request to: https://ivs.idenfy.com/risk/assessments/{id}/
Response Example
{
"id": "Fi6cT2FO0AoDYyPljKhM41",
"name": "Matthew Collins",
"sections": [
{
"key": "OxTPlZAfHZ",
"name": "Second category",
"weight": 100,
"questions": [
{
"key": "lib-NObsdcmGfe",
"name": "Is shareholder PEP?",
"type": "SELECT",
"title": "Is shareholder PEP?",
"choices": [
{
"key": "HAwWshlziF",
"title": "Yes"
},
{
"key": "WuZBsvsyWC",
"title": "No"
}
],
"riskLevels": [],
"riskLevelDefault": "HIGH",
"answers": []
},
{
"key": "lib-tRdubSLIVr",
"name": "Country of Incorporation",
"type": "COUNTRY",
"title": "Country of Incorporation",
"choices": [],
"riskLevels": [],
"riskLevelDefault": "LOW",
"answers": []
}
],
"riskScore": 0,
"maxRiskScore": 0
}
],
"riskScore": 0,
"riskLevel": "VERY_LOW",
"comment": null,
"createdAt": "2024-05-06 09:45:02.405602+00:00",
"updatedAt": "2024-05-06 09:45:02.405609+00:00",
"updateRequired": false,
"stateChangeEvent": "INITIAL",
"companyId": null,
"partner": {
"id": 670,
"created": "2022-08-08T06:37:32.765693Z",
"companyName": "Mantas Tech",
"environment": "DEVELOPMENT",
"isActive": true
},
"profile": {
"id": "dd121b5c-e3ef-4197-b036-8b7e872f6678",
"name": "RA profile name"
},
"riskLevelChangedBy": null
}