## Документация API проверка по реестру террористов и экстремистов Росфинмониторинга ### Проверка физических лиц Для проверки наличия физического лица в реестре террористов и экстремистов Росфинмониторинга используйте следующий запрос: ``` https://service.api-assist.com/parser/ter_ext_api/search_fiz?key=ВАШ_КЛЮЧ_ДОСТУПА&lastName=ФАМИЛИЯ&firstName=ИМЯ&middleName=ОТЧЕСТВО&dob=ДАТА_РОЖДЕНИЯ ``` **Параметры запроса:** - **key** — ключ доступа к сервису (обязательный). - **lastName** — фамилия проверяемого лица (обязательный). - **firstName** — имя проверяемого лица (обязательный). - **middleName** — отчество проверяемого лица (необязательный). - **dob** — дата рождения в формате YYYY-MM-DD (необязательный). **Пример запроса:** ``` https://service.api-assist.com/parser/ter_ext_api/search_fiz?key=ВАШ_КЛЮЧ_ДОСТУПА&lastName=Сысоев&firstName=Александр&middleName=Сергеевич&dob=1983-04-15 ``` **Пример ответа на запрос:** Ответ на запрос возвращается в формате JSON. Пример ответа: ```json { "success": 1, // Флаг успешности выполнения запроса. При получении 0 сделайте повторный запрос сразу же или через несколько минут. "found": 1, // Найдено ли лицо в реестре. 1 - найдено, 0 - не найдено "records": [ // Массив найденных записей. Пустой массив если ничего не найдено { "text": "15389. СЫСОЕВ АЛЕКСАНДР СЕРГЕЕВИЧ*, 15.04.1983 г.р. , С. КАРАГАЙ ПЕРМСКОЙ ОБЛАСТИ;" } ] } ``` **Пример ответа при отсутствии в реестре:** ```json { "success": 1, "found": 0, "records": [] } ``` --- ### Интерпретация ответа и обработка ошибок **Общие рекомендации:** - Если поле `success` заполнено и `success = 1` — перед вами успешный ответ, с которым можно работать. Только такие запросы учитываются в статистике и расходуют оплаченный лимит. - Иначе, если поле `error` заполнено — запрос требует вашего внимания. Текст ошибки рекомендуется сохранить или отправить для дальнейшего анализа. - Иначе, если поле `error` не заполнено — это ошибка, связанная со стабильностью источника. В таком случае мы рекомендуем игнорировать ответ и повторить запрос. В данном разделе описаны возможные коды ответов сервиса и их значения. Каждый код ответа сопровождается пояснением и примером JSON-ответа. #### 1. Код ответа - 200 - Поле `success = 1` - удалось получить информацию от источника. Такие и только такие запросы можно запускать в дальнейшую обработку. - Поле `success = 0` - не удалось получить информацию от источника. Запрос не будет учтен в статистике. Необходимо повторить запрос. #### 2. Код ответа - 403 Выдается сервисом в случае невозможности обработки запроса из-за ограничения доступа: закончилась подписка, превышен лимит и так далее. Причины ошибок отражены в поле `error` ответа. Ниже приведен список возможных ошибок с их описанием и кодами: - **Invalid access key** `error_code = 40301` Указанный ключ доступа недействителен или отсутствует. - **The subscription period has expired** `error_code = 40302` Доступ к сервису истек, требуется продление. - **Invalid IP** `error_code = 40303` Запрос выполнен с IP-адреса, который не разрешён для доступа. - **Day limit of requests exceeded** `error_code = 40304` Достигнут оплаченный лимит запросов на день. - **Month limit of requests exceeded** `error_code = 40305` Достигнут оплаченный лимит запросов на месяц. **Пример ответа:** ```json { "error": "Invalid access key", "error_code": 40301 } ``` #### 3. Код ответа - 400 Выдается сервисом в случае невозможности обработки запроса из-за ошибки валидации запроса, неверного или отсутствующего значения какого-либо поля. Поле `error_code` всегда равно `40001`, подробности доступны в поле `error`. **Пример ответа:** ```json { "error": "lastName is required", "error_code": 40001 } ``` **Возможные ошибки валидации:** - `lastName is required` — не указана фамилия - `firstName is required` — не указано имя - `Invalid dob format. Use YYYY-MM-DD` — неверный формат даты рождения