Skip to content

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

MethodURLDescription
GET|HEADapi/maintenance/terrorists/report/makeCreate RFM report
GET|HEADapi/terrorists/all-clients/result/files
api/terrorists/check-all-clients-result/files
Get list of terrorist check result files
GET|HEADapi/terrorists/all-clients/result/file/{filename}
api/terrorists/check-all-clients-result/file/{filename}
Download terrorist check result file
GET|HEADapi/terrorists/all-clients/result/list
api/terrorists/check-all-clients-result/list
Get list of terrorist check results
GET|HEADapi/terrorists/all-clients/result/qty
api/terrorists/check-all-clients-result/qty
Get count of terrorist check results

Individual Client Checks

MethodURLDescription
GET|HEADapi/terrorists/check-client/{client_id}Get client terrorist check information
POSTapi/terrorists/check-client/{client_id}Run new client terrorist check
GET|HEADapi/terrorists/client/{client_id}/checkCheck client by ID against terrorists
POSTapi/terrorists/client/{client_id}/checkRun new client terrorist check
GET|HEADapi/terrorists/client/{client_id}/status
api/terrorists/client-status/{client_id}
Get current client status by ID
POSTapi/terrorists/client/{client_id}/statusUpdate 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/make

Successful Response Example

json
{
  "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/files

Successful Response Example

json
{
  "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.xlsx

Successful Response Example

On successful request, an Excel file (.xlsx) with terrorist check results is returned.

Error Response Example

json
{
  "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/list

Successful Response Example

json
{
  "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:

  1. Regular checks: Clients are checked regularly (every few days/weeks)
  2. Change history: Each check is saved in checkLog with date and result
  3. Dynamic status: Client status can change over time:
    • found: false - client not found in terrorist list
    • found: true - client found in terrorist list
  4. Current status: currentStatus reflects the result of the last check
  5. 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 records
    • found (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 be null for 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)
  • currentStatus reflects the current status at the time of the last check
  • checkLog contains the history of all client checks
  • Dates are in UTC ISO 8601 format
  • Clients without clientId may 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/qty

Successful Response Example

json
{
  "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/326

Successful Response Example (client found)

json
{
  "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)

json
{
  "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/129

Successful Response Example

json
{
  "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/check

Successful Response Example

json
{
  "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/1297

Successful Response Example

json
{
  "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:

  1. 20.02.2025: Client not found in terrorist list
  2. 06.03.2025: Client added to terrorist list
  3. 07.03.2025: Client remains in terrorist list
  4. 10.03.2025: Client removed from terrorist list
  5. 14.07.2025: Client added to terrorist list again
  6. 27.07.2025: Client removed from terrorist list again
  7. 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
  • currentStatus reflects 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/status

Successful Response Example

json
{
  "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
  }
}