API rfm-terrorist (Rosfinmonitoring)
API for checking clients against Rosfinmonitoring terrorist lists.
The service provides methods for bulk and individual client verification against official terrorist lists, report generation, and integration with the decision-making system.
All Clients Check Results
| Method | URL | Description |
|---|---|---|
| GET|HEAD | api/maintenance/terrorists/report/make | Create RFM report |
| GET|HEAD | api/terrorists/all-clients/result/filesapi/terrorists/check-all-clients-result/files | Get list of terrorist check result files |
| GET|HEAD | api/terrorists/all-clients/result/file/{filename}api/terrorists/check-all-clients-result/file/{filename} | Download terrorist check result file |
| GET|HEAD | api/terrorists/all-clients/result/listapi/terrorists/check-all-clients-result/list | Get list of terrorist check results |
| GET|HEAD | api/terrorists/all-clients/result/qtyapi/terrorists/check-all-clients-result/qty | Get count of terrorist check results |
Individual Client Checks
| Method | URL | Description |
|---|---|---|
| GET|HEAD | api/terrorists/check-client/{client_id} | Get client terrorist check information |
| POST | api/terrorists/check-client/{client_id} | Run new client terrorist check |
| GET|HEAD | api/terrorists/client/{client_id}/check | Check client by ID against terrorists |
| POST | api/terrorists/client/{client_id}/check | Run new client terrorist check |
| GET|HEAD | api/terrorists/client/{client_id}/statusapi/terrorists/client-status/{client_id} | Get current client status by ID |
| POST | api/terrorists/client/{client_id}/status | Update client status by ID in terrorists |
API Methods Description
All Clients Check Results
Create RFM Report
GET|HEAD /api/maintenance/terrorists/report/make
Description
Methods are designed to create a report in the RFM system with terrorist check results for all clients. The method is used to generate analytical reports on check results, monitor system performance, and prepare data for external systems.
Request Examples
GET /api/maintenance/terrorists/report/makeSuccessful Response Example
{
"status": "ok", // Operation execution status ("ok" on success)
"timestamp": 1755006198000, // Response timestamp in milliseconds
"data": null // Response data (null, as the methods only initiate the report creation process)
}Get List of Terrorist Check Result Files
GET|HEAD /api/terrorists/all-clients/result/filesGET|HEAD /api/terrorists/check-all-clients-result/files
Description
The method returns a list of all available files with terrorist check results for all clients.
Request Example
GET /api/terrorists/all-clients/result/filesSuccessful Response Example
{
"status": "ok", // Response status
"timestamp": 1754031854000, // Response timestamp
"data": [
// Array of result file names
"2023-07-05_143308.xlsx", // File from July 5, 2023, 14:33:08
"2023-07-07_010058.xlsx", // File from July 7, 2023, 01:00:58
"2023-07-12_111400.xlsx", // File from July 12, 2023, 11:14:00
"2023-07-14_010144.xlsx", // File from July 14, 2023, 01:01:44
"2023-07-21_010219.xlsx" // File from July 21, 2023
]
}Download Terrorist Check Result File
GET|HEAD /api/terrorists/all-clients/result/file/\{filename\} GET|HEAD /api/terrorists/check-all-clients-result/file/\{filename\}
Description
The method allows downloading a specific file with terrorist check results for all clients by file name.
Request Parameters
\{filename\} (string, required) — file name to download in YYYY-MM-DD_HHMMSS.xlsx format.
Request Example
GET /api/terrorists/all-clients/result/file/2023-07-05_143308.xlsxSuccessful Response Example
On successful request, an Excel file (.xlsx) with terrorist check results is returned.
Error Response Example
{
"message": "",
"code": "[UNHANDLED_EXCEPTION]",
"type": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
"details": [],
"stackTrace": null,
"cause": null,
"activityLabel": "rfm-5d07f067-37d2-4cf7-ae31-a0ddc017e0dd"
}Get List of Terrorist Check Results
GET|HEAD /api/terrorists/all-clients/result/list
Description
The method returns a list of all terrorist check results for all clients with detailed information about each check.
Request Example
GET /api/terrorists/all-clients/result/listSuccessful Response Example
{
"status": "ok", // Response status
"timestamp": 1754033710000, // Response timestamp
"data": [
// Array of check results
{
"checkLog": [
// Client check log
{
"found": false, // Check result (false - not found)
"date": "2025-02-20T10:43:40+00:00" // Check date and time (UTC)
},
{
"found": true, // Check result (true - found)
"date": "2025-03-06T15:35:27+00:00" // Check date and time (UTC)
},
{
"found": true, // Check result (true - found)
"date": "2025-03-07T11:49:07+00:00" // Check date and time (UTC)
},
{
"found": false, // Check result (false - not found)
"date": "2025-03-10T13:47:11+00:00" // Check date and time (UTC)
},
{
"found": true, // Check result (true - found)
"date": "2025-07-14T07:46:29+00:00" // Check date and time (UTC)
}
],
"clientId": 1190, // Client ID
"currentStatus": true, // Current status (true - found in terrorists)
"num": 6846 // Record sequence number
}
]
}Check Mechanism
The terrorist check system works as follows:
- Regular checks: Clients are checked regularly (every few days/weeks)
- Change history: Each check is saved in
checkLogwith date and result - Dynamic status: Client status can change over time:
found: false- client not found in terrorist listfound: true- client found in terrorist list
- Current status:
currentStatusreflects the result of the last check - Volatility: Some clients may appear and disappear from the terrorist list
Example Analysis of Client ID 1190:
- 20.02.2025: Not found in terrorists
- 06.03.2025: Found in terrorists
- 07.03.2025: Found in terrorists
- 10.03.2025: Not found in terrorists (removed from list)
- 14.07.2025: Found in terrorists again (added back)
- Current status: Found in terrorists
Result Field Descriptions
checkLog(array) — array of client check recordsfound(boolean) — check result (true- found in terrorists,false- not found)date(string) — check date and time in ISO 8601 format (UTC)
clientId(integer|null) — client identifier (can benullfor anonymous records)currentStatus(boolean) — current client status (true- found in terrorists,false- not found)num(integer) — record sequence number in the system
Notes
- Results are sorted by sequence number (
num) currentStatusreflects the current status at the time of the last checkcheckLogcontains the history of all client checks- Dates are in UTC ISO 8601 format
- Clients without
clientIdmay be anonymous records or records with undefined client
Get Count of Terrorist Check Results
GET|HEAD /api/terrorists/all-clients/result/qty
Description
The method returns the count of clients found in the terrorist list (with current status true).
Request Example
GET /api/terrorists/all-clients/result/qtySuccessful Response Example
{
"status": "ok", // Response status
"timestamp": 1754034220000, // Response timestamp
"data": {
"count": 7 // Total count of clients found in terrorist list (with current status `true`)
}
}Notes
- The method returns the count of clients with
currentStatus: true(found in terrorists) - Includes both clients with ID and anonymous records
- Count may change when client statuses are updated
- Corresponds to the count of records with positive status from method GET
/api/terrorists/all-clients/result/list
Practical Applications:
- Quick data volume assessment
- Monitoring growth of verified client database
Individual Client Checks
Get Client Terrorist Check Information
GET|HEAD /api/terrorists/check-client/{client_id}
Description
The method returns the current client check status in the terrorist list. Important: the method shows only the current status at the time of request, without considering change history.
Request Parameters
{client_id} (integer, required) — unique client identifier.
Request Example
GET /api/terrorists/check-client/326Successful Response Example (client found)
{
"status": "ok", // Response status
"timestamp": 1754037420000, // Response timestamp
"data": {
"found": "found", // Check result - client found in terrorist list
"status": "FOUND" // Client status - in terrorist list
}
}Successful Response Example (client not found)
{
"status": "ok", // Response status
"timestamp": 1754037438000, // Response timestamp
"data": {
"found": "not found", // Check result - client not found in terrorist list
"status": "NOT_FOUND" // Client status - not in terrorist list
}
}Important Features
- Current status: The method returns only the current client status at the time of request
- No history: Does not show client status change history
- Instant check: Result reflects the state at the current moment
- Does not consider past: If a client was previously on the terrorist list but is now removed, the method will show
NOT_FOUND
Notes
To get client status change history, use the method:
GET /api/terrorists/client-status/{client_id}
- Status may change over time when terrorist lists are updated
- The method is suitable for quick current status check of a specific client
Run New Client Terrorist Check
POST /api/terrorists/check-client/{client_id}POST /api/terrorists/client/{client_id}/check
Description
The method runs a new client check against the terrorist list and returns the current result. Unlike the GET method, this method forcibly updates the client status.
Request Parameters
{client_id} (integer, required) — unique client identifier.
Request Example
POST /api/terrorists/check-client/129Successful Response Example
{
"status": "ok", // Response status
"timestamp": 1754037941000, // Response timestamp
"data": {
"found": "not found", // Check result - client not found in terrorist list
"status": "NOT_FOUND" // Client status - not in terrorist list
}
}Check Client by ID Against Terrorists
GET|HEAD /api/terrorists/client/{client_id}/check
Description
The method returns the check result for a specific client against the terrorist list. Shows the current client status at the time of request.
Request Parameters
{client_id} (integer, required) — unique client identifier.
Request Example
GET /api/terrorists/client/129/checkSuccessful Response Example
{
"status": "ok", // Response status
"timestamp": 1754039505000, // Response timestamp
"data": {
"found": "not found", // Check result - client not found in terrorist list
"status": "NOT_FOUND" // Client status - not in terrorist list
}
}Features
- The method returns only the current client status at the time of request
- Does not show client status change history
- Result reflects the state at the current moment
Notes
To get status change history, use the method:
GET /api/terrorists/client-status/{client_id}
- Status may change over time when terrorist lists are updated
- The method is suitable for quick current status check of a specific client
Get Current Client Status by ID
GET|HEAD /api/terrorists/client/{client_id}/status
GET|HEAD /api/terrorists/client-status/{client_id}
Description
The method provides full client status change history over time, including current status and last check details.
Request Parameters
{client_id} (integer, required) — unique client identifier.
Request Example
GET /api/terrorists/client-status/1297Successful Response Example
{
"status": "ok", // Response status
"timestamp": 1754038181000, // Response timestamp
"data": {
"clientId": "1297", // Client ID
"checkLog": [
// Client check history
{
"found": false, // Check result - not found
"date": "2025-02-20T10:43:49+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-03-06T15:36:07+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-03-07T11:48:16+00:00" // Check date and time
},
{
"found": false, // Check result - not found
"date": "2025-03-10T13:47:27+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-07-14T07:46:12+00:00" // Check date and time
},
{
"found": false, // Check result - not found
"date": "2025-07-27T20:40:11+00:00" // Check date and time
}
],
"currentStatus": false, // Current client status
"rfm_id": 0, // RFM registry record identifier
"lastCheck": "2025-08-01T08:45:32+00:00" // Last check date
}
}Client ID 1297 Change History Analysis:
- 20.02.2025: Client not found in terrorist list
- 06.03.2025: Client added to terrorist list
- 07.03.2025: Client remains in terrorist list
- 10.03.2025: Client removed from terrorist list
- 14.07.2025: Client added to terrorist list again
- 27.07.2025: Client removed from terrorist list again
- 01.08.2025: Client remains outside terrorist list
Current status: Client is not in terrorist list (currentStatus: false)
Notes
- The method provides full client status change history
- Shows dynamics of addition/removal from terrorist list
- Useful for analyzing client checks over time
currentStatusreflects the current status at the time of the last check
Update Client Status by ID in Terrorists
POST /api/terrorists/client/{client_id}/status
Description
The method forcibly updates the client status in the terrorist check system. Runs a new client check and returns updated information, including full check history.
Request Parameters
{client_id} (integer, required) — unique client identifier.
Request Example
POST /api/terrorists/client/1190/statusSuccessful Response Example
{
"status": "ok", // Response status
"timestamp": 1754135981000, // Response timestamp
"data": {
"clientId": "1190", // Client ID
"checkLog": [
// Client check history
{
"found": false, // Check result - not found
"date": "2025-02-20T10:43:40+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-03-06T15:35:27+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-03-07T11:49:07+00:00" // Check date and time
},
{
"found": false, // Check result - not found
"date": "2025-03-10T13:47:11+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-07-14T07:46:29+00:00" // Check date and time
},
{
"found": true, // Check result - found
"date": "2025-07-27T20:40:17+00:00" // Check date and time
}
],
"currentStatus": true, // Current client status
"rfm_id": 6846, // RFM registry record identifier
"lastCheck": "2025-07-27T20:40:17+00:00" // Last check date
}
}