---
title: "Приказ Минцифры России от 16.12.2025 N 1174"
number: "1174"
issuer: "Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации"
issued_on: 2025-12-16
status: действует
canonical: "https://bukva.ai/docs/prikaz-1174-2025-mintsifry-rossii-ministerstvo"
---

## Приказ Минцифры России от 16.12.2025 N 1174

# Приказ Минцифры России от 16.12.2025 N 1174

"Об утверждении Требований к сетям и средствам связи собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в информационно-телекоммуникационной сети "Интернет", для проведения уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации, в случаях, установленных федеральными законами, мероприятий в целях реализации возложенных на них задач"

(Зарегистрировано в Минюсте России 22.05.2026 N 86587)

> [!IMPORTANT]
> Начало действия документа - 03.06.2026.


<a id="p100001"></a>Зарегистрировано в Минюсте России 22 мая 2026 г. N 86587

---


<a id="p100002"></a>МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ
И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

<a id="p100003"></a>ПРИКАЗ
от 16 декабря 2025 г. N 1174

<div align="center">

<a id="p100004"></a>ОБ УТВЕРЖДЕНИИ ТРЕБОВАНИЙ<br>
К СЕТЯМ И СРЕДСТВАМ СВЯЗИ СОБСТВЕННИКОВ ИЛИ ИНЫХ<br>
ВЛАДЕЛЬЦЕВ ТЕХНОЛОГИЧЕСКИХ СЕТЕЙ СВЯЗИ, ИМЕЮЩИХ УНИКАЛЬНЫЙ

</div>

ИДЕНТИФИКАТОР СОВОКУПНОСТИ СРЕДСТВ СВЯЗИ И ИНЫХ ТЕХНИЧЕСКИХ
СРЕДСТВ В ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННОЙ СЕТИ
"ИНТЕРНЕТ", ДЛЯ ПРОВЕДЕНИЯ УПОЛНОМОЧЕННЫМИ ГОСУДАРСТВЕННЫМИ
ОРГАНАМИ, ОСУЩЕСТВЛЯЮЩИМИ ОПЕРАТИВНО-РАЗЫСКНУЮ ДЕЯТЕЛЬНОСТЬ
ИЛИ ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ,
В СЛУЧАЯХ, УСТАНОВЛЕННЫХ ФЕДЕРАЛЬНЫМИ ЗАКОНАМИ,
МЕРОПРИЯТИЙ В ЦЕЛЯХ РЕАЛИЗАЦИИ ВОЗЛОЖЕННЫХ
НА НИХ ЗАДАЧ

<a id="p100005"></a>В соответствии с [подпунктом 3 пункта 9 статьи 56.2](https://bukva.ai/docs/zakon-126-fz-2003/statya-56-2#p540) Федерального закона от 7 июля 2003 г. N 126-ФЗ "О связи", [подпунктом 5.2.55 пункта 5](https://bukva.ai/docs/postanovlenie-418-2008#p173) Положения о Министерстве цифрового развития, связи и массовых коммуникаций Российской Федерации, утвержденного постановлением Правительства Российской Федерации от 2 июня 2008 г. N 418, приказываю:
1. <a id="p100006"></a>Утвердить прилагаемые [Требования](#p100011) к сетям и средствам связи собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в информационно-телекоммуникационной сети "Интернет", для проведения уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации, в случаях, установленных федеральными законами, мероприятий в целях реализации возложенных на них задач.
2. <a id="p100007"></a>Признать утратившим силу [приказ](https://bukva.ai/docs/prikaz-646-2019-minkomsvyaz-rossii) Минкомсвязи России от 5 ноября 2019 г. N 646 "Об утверждении Требований к сетям и средствам связи собственников или иных владельцев технологических сетей связи, имеющих номер автономной системы, для проведения уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации, в случаях, установленных федеральными законами, мероприятий в целях реализации возложенных на них задач" (зарегистрирован Министерством юстиции Российской Федерации 22 января 2020 г., регистрационный N 57223).

<a id="p100008"></a>Министр
М.И.ШАДАЕВ





<a id="p100010"></a>Утверждены
приказом Министерства
цифрового развития, связи

<div align="center">

и массовых коммуникаций<br>
Российской Федерации<br>
от 16.12.2025 N 1174

<a id="p100011"></a>**ТРЕБОВАНИЯ**<br>
**К СЕТЯМ И СРЕДСТВАМ СВЯЗИ СОБСТВЕННИКОВ ИЛИ ИНЫХ**<br>
**ВЛАДЕЛЬЦЕВ ТЕХНОЛОГИЧЕСКИХ СЕТЕЙ СВЯЗИ, ИМЕЮЩИХ УНИКАЛЬНЫЙ**<br>
**ИДЕНТИФИКАТОР СОВОКУПНОСТИ СРЕДСТВ СВЯЗИ И ИНЫХ ТЕХНИЧЕСКИХ**<br>
**СРЕДСТВ В ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННОЙ СЕТИ**<br>
**"ИНТЕРНЕТ", ДЛЯ ПРОВЕДЕНИЯ УПОЛНОМОЧЕННЫМИ ГОСУДАРСТВЕННЫМИ**<br>
**ОРГАНАМИ, ОСУЩЕСТВЛЯЮЩИМИ ОПЕРАТИВНО-РАЗЫСКНУЮ ДЕЯТЕЛЬНОСТЬ**<br>
**ИЛИ ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ,**<br>
**В СЛУЧАЯХ, УСТАНОВЛЕННЫХ ФЕДЕРАЛЬНЫМИ ЗАКОНАМИ,**<br>
**МЕРОПРИЯТИЙ В ЦЕЛЯХ РЕАЛИЗАЦИИ ВОЗЛОЖЕННЫХ**<br>
**НА НИХ ЗАДАЧ**

</div>


<a id="p100012"></a>I. Общие положения

1. <a id="p100013"></a>Настоящие Требования к сетям и средствам связи собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в информационно-коммуникационной сети "Интернет", для проведения уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации, в случаях, установленных федеральными законами, мероприятий в целях реализации возложенных на них задач (далее - Требования к ПТС), устанавливают правила применения программных и технических средств, используемых собственниками или иными владельцами технологических сетей связи, имеющими уникальный идентификатор совокупности средств связи и иных технических средств в информационно-телекоммуникационной сети "Интернет" (далее - сеть "Интернет"), в эксплуатируемых им информационных системах (далее - ИС).
2. <a id="p100014"></a>При реализации программных и технических средств, используемых собственниками или иными владельцами технологических сетей связи, имеющими уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет" (далее - ПТС), в эксплуатируемых им ИС должен быть использован один из вариантов их построения:
<a id="p100015"></a>а) отдельный аппаратно-программный комплекс;
<a id="p100016"></a>б) отдельный программный модуль в ИС;
<a id="p100017"></a>в) комбинированный вариант, предусматривающий совместное использование элементов в соответствии с [подпунктами "а"](#p100015) и ["б"](#p100016) настоящего пункта.
3. <a id="p100018"></a>Для каждого варианта построения собственниками или иными владельцами технологических сетей связи, имеющими уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет", должны реализовываться требования по информационной безопасности и защите от несанкционированного доступа к информации, связанной с проведением оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации, в соответствии с подпунктами "з" и "и" пункта 16 Требований к ПТС. ПТС должны входить в состав узлов связи технологических сетей связи собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет".

<a id="p100019"></a>II. Функциональные требования к ПТС

4. <a id="p100020"></a>Посредством использования ПТС осуществляются поиск, обработка и передача на пункт управления уполномоченных государственных органов, осуществляющих оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации (далее - ПУ), по их запросу или в автоматическом режиме информации, хранящейся в ИС и передаваемой по технологическим сетям связи.
5. <a id="p100021"></a>Перечень доступной для поиска информации, хранящейся в ИС и передаваемой по технологическим сетям связи, и схема ее представления должны согласовываться с уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации.
6. <a id="p100022"></a>Взаимодействие ПТС с ПУ должно осуществляться по единому каналу передачи данных.
7. <a id="p100023"></a>Пропускная способность канала передачи данных между ПТС и ПУ должна соответствовать данным, приведенным в таблице N 1.

<a id="p100024"></a>Таблица N 1


| <a id="p100025"></a>N п/п | <a id="p100026"></a>Среднесуточный объем новых данных, поступающих в ИС, Гбайт | <a id="p100027"></a>Суммарная пропускная способность каналов передачи данных между ПТС и ПУ, не менее Мбит/с |
| --- | --- | --- |
| <a id="p100028"></a>1. | < 1 | 10 |
| <a id="p100029"></a>2. | 1 - 10 | 50 |
| <a id="p100030"></a>3. | 10 - 100 | 100 |
| <a id="p100031"></a>4. | 100 - 500 | 500 |
| <a id="p100032"></a>5. | 500 - 1000 | 800 |
| <a id="p100033"></a>6. | 1000 - 10000 | 1000 |
| <a id="p100034"></a>7. | > 10000 | 10000 |


8. <a id="p100035"></a>Посредством использования ПТС обеспечивается:
<a id="p100036"></a>а) подключение к ПУ в соответствии с [пунктом 10](https://bukva.ai/docs/postanovlenie-1385-2019#p100022) Правил взаимодействия собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в информационно-телекоммуникационной сети "Интернет", с уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации, утвержденных постановлением Правительства Российской Федерации от 29 октября 2019 г. N 1385;
<a id="p100037"></a>б) реализация интерфейса взаимодействия между ПТС и ПУ в соответствии с [приложением N 1](#p100082) к Требованиям к ПТС;
<a id="p100038"></a>в) прием от ПУ поисковых запросов и запросов постановки объектов на контроль;
<a id="p100039"></a>г) поиск информации, хранящейся в ИС, в соответствии с поступившими с ПУ поисковыми запросами и запросами постановки объектов на контроль. Для ПТС, осуществляющих поиск информации в ИС АС со среднесуточным объемом новых данных свыше 1 Гбайт, устанавливаются требования к критериям поиска в соответствии с [пунктом 21](#p100115) приложения N 1 к Требованиям к ПТС;
<a id="p100040"></a>д) передача на ПУ от ПТС данных в соответствии с поступившими с ПУ поисковыми запросами (допускается постраничная передача) и запросами постановки объектов на контроль;
<a id="p100041"></a>е) прием от ПУ критериев поиска и передача на ПУ статистической, текстовой, мультимедийной, звуковой, графической информации в исходном (декодированном) виде, хранящейся в ИС и отбираемой по критериям поиска, без дополнительной обработки (далее - неформатированные данные);
<a id="p100042"></a>ж) предоставление информации, хранящейся в схеме данных, при выполнении запросов от ПУ согласно [приложению N 2](#p100164) к Требованиям к ПТС;
<a id="p100043"></a>з) описание схемы данных в соответствии с перечнем базовых типов согласно [приложению N 3](#p100251) к Требованиям к ПТС;
<a id="p100044"></a>и) передача на ПУ схемы данных в соответствии с поступившим с ПУ запросом согласно [приложению N 4](#p100279) к Требованиям к ПТС;
<a id="p100045"></a>к) задание параметров поиска в соответствии с перечнем входных объектов согласно [приложению N 5](#p100291) к Требованиям к ПТС;
<a id="p100046"></a>л) защита от несанкционированного доступа со стороны производителей ПТС, неавторизованных пользователей, технического персонала, третьих лиц к хранящейся в ПТС информации и информации, непосредственно связанной с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации;
<a id="p100047"></a>м) информирование ПУ о попытках несанкционированного доступа к ПТС, если ПТС исполнен в виде отдельного аппаратно-программного комплекса:
<a id="p100048"></a>к данным, связанным с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации с использованием команд или сервисных программ;
<a id="p100049"></a>о резервном копировании данных, связанных с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации;
<a id="p100050"></a>к ПТС через интерфейсы, не предусмотренные для доступа к ним;
<a id="p100051"></a>о вскрытии корпуса технических средств, с использованием которых обеспечивается проведение уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечение безопасности Российской Федерации;
<a id="p100052"></a>н) информирование ПУ о попытках несанкционированного доступа к ПТС, если ПТС исполнен в виде отдельного программного модуля в ИС:
<a id="p100053"></a>к данным, связанным с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации, с использованием команд или сервисных программ;
<a id="p100054"></a>о резервном копировании данных, связанных с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации;
<a id="p100055"></a>о) информирование ПУ о попытках несанкционированного доступа к ПТС, если ПТС имеет комбинированный вариант исполнения:
<a id="p100056"></a>к данным, связанным с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации, с использованием команд или сервисных программ;
<a id="p100057"></a>о резервном копировании данных, связанных с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации;

<div align="center">

<a id="p100058"></a>к ПТС через интерфейсы, не предусмотренные для доступа к ним;<br>
<a id="p100059"></a>о вскрытии корпуса технических средств, с использованием которых обеспечивается проведение уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечение безопасности Российской Федерации;<br>
<a id="p100060"></a>о контроле работоспособности и загруженности ПТС;<br>
<a id="p100061"></a>о контроле за соблюдением предоставленных прав доступа к хранящейся в ПТС информации;<br>
<a id="p100062"></a>о круглосуточном удаленном доступе со стороны операторов ПУ к хранящейся в ИС информации по интерфейсу взаимодействия ПУ и ПТС в соответствии с [приложением N 1](#p100082) к Требованиям к ПТС;

</div>

<a id="p100063"></a>п) ведение в автоматическом режиме системных журналов, содержащих информацию о работе ПТС и данные, связанные с проведением уполномоченными государственными органами оперативно-разыскных мероприятий или обеспечением безопасности Российской Федерации, включая сведения:
<a id="p100064"></a>о сеансах связи с ПУ, а также о попытках установления таких сеансов;
<a id="p100065"></a>о фактах получения и выполнения поисковых запросов и запросов постановки объектов на контроль ПУ (только идентификаторы запросов, время получения и (или) выполнения, результат выполнения (успешно или неуспешно);
<a id="p100066"></a>об ответах на поисковые запросы и запросы постановки объектов на контроль ПУ;
<a id="p100067"></a>о текущей конфигурации ПТС, системного и прикладного ПО;
<a id="p100068"></a>об изменениях в конфигурации ПТС, системного и прикладного ПО;
<a id="p100069"></a>о сбоях в работе ПТС, системном и прикладном ПО;
<a id="p100070"></a>об изменениях схемы данных;
<a id="p100071"></a>о доступе персонала к программному обеспечению и оборудованию ПТС;
<a id="p100072"></a>о сохранности и доступности для дальнейшего использования ранее накопленных данных при модернизации ПТС;
<a id="p100073"></a>об автоматическом определении способа выполнения поступивших с ПУ поисковых запросов (в режиме реального времени или в отложенном режиме) в соответствии с [пунктом 20](#p100114) приложения N 1 к Требованиям к ПТС в соответствии с заданными временными параметрами;
<a id="p100074"></a>о временном хранении результатов выполнения поисковых запросов в отложенном режиме согласно [пункту 12](#p100079) Требований к ПТС.
9. <a id="p100075"></a>Функционирование ПТС не должно оказывать влияние на работоспособность ИС и технологические сети связи.
10. <a id="p100076"></a>ПТС не должны иметь иных интерфейсов взаимодействия, кроме интерфейсов взаимодействия с ИС и ПУ.
11. <a id="p100077"></a>ПТС, применяемые в распределенных технологических сетях связи и (или) нескольких технологических сетях связи, должны иметь функционал выполнения поисковых запросов для тех технологических сетей связи, которые заданы с ПУ в запросе.

<a id="p100078"></a>III. Требования, предъявляемые к ПТС в части
обеспечения временных характеристик обработки запроса
и поиска информации

12. <a id="p100079"></a>Максимальное время предварительной обработки информации с момента ее поступления в ПТС до момента, когда она становится доступной для выполнения поисковых запросов с ПУ, а также максимальное время выполнения поисковых запросов и запросов постановки объектов на контроль определяются в процессе внедрения ПТС в сети связи собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет". В процессе внедрения ПТС в сети связи собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет", должны быть установлены временные параметры для определения способа выполнения поисковых запросов (в режиме реального времени или в отложенном режиме в соответствии с [пунктом 20](#p100114) приложения N 1 к Требованиям к ПТС) и максимальное время хранения результатов выполнения поисковых запросов в отложенном режиме. Мероприятие по определению указанных временных параметров должно включаться в план мероприятий по внедрению ПТС и согласовываться с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации, в соответствии с [постановлением](https://bukva.ai/docs/postanovlenie-1385-2019) Правительства Российской Федерации от 29.10.2019 N 1385 "Об утверждении Правил взаимодействия собственников или иных владельцев технологических сетей связи, имеющих уникальный идентификатор совокупности средств связи и иных технических средств в информационно-телекоммуникационной сети "Интернет", с уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации".
13. <a id="p100080"></a>Временные параметры, указанные в [пункте 12](#p100079) Требований к ПТС, могут корректироваться собственниками или иными владельцами технологических сетей связи, имеющими уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет", во время эксплуатации ПТС по согласованию с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации.





<a id="p100081"></a>Приложение N 1
к Требованиям к сетям и средствам
связи собственников или иных владельцев
технологических сетей связи, имеющих
уникальный идентификатор совокупности
средств связи и иных технических средств
в информационно-телекоммуникационной
сети "Интернет", для проведения
уполномоченными государственными
органами, осуществляющими
оперативно-разыскную деятельность
или обеспечение безопасности
Российской Федерации, в случаях,
установленных федеральными законами,
мероприятий в целях реализации
возложенных на них задач,
утвержденным приказом
Минцифры России
от 16 декабря 2025 г. N 1174

<a id="p100082"></a>ТРЕБОВАНИЯ,
ПРЕДЪЯВЛЯЕМЫЕ К ИНТЕРФЕЙСУ ВЗАИМОДЕЙСТВИЯ МЕЖДУ
ПУНКТАМИ УПРАВЛЕНИЯ УПОЛНОМОЧЕННЫХ ГОСУДАРСТВЕННЫХ
ОРГАНОВ, ОСУЩЕСТВЛЯЮЩИХ ОПЕРАТИВНО-РАЗЫСКНУЮ ДЕЯТЕЛЬНОСТЬ
ИЛИ ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ,

<div align="center">

И ПРОГРАММНЫМИ И ТЕХНИЧЕСКИМИ СРЕДСТВАМИ, ИСПОЛЬЗУЕМЫМИ<br>
СОБСТВЕННИКАМИ ИЛИ ИНЫМИ ВЛАДЕЛЬЦАМИ ТЕХНОЛОГИЧЕСКИХ СЕТЕЙ<br>
СВЯЗИ, ИМЕЮЩИМИ УНИКАЛЬНЫЙ ИДЕНТИФИКАТОР СОВОКУПНОСТИ<br>
СРЕДСТВ СВЯЗИ И ИНЫХ ТЕХНИЧЕСКИХ СРЕДСТВ<br>
В ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННОЙ

</div>

СЕТИ "ИНТЕРНЕТ"

1. <a id="p100083"></a>ПТС подключаются к ПУ в точках подключения выделенных каналов связи.
2. <a id="p100084"></a>Для передачи данных между ПУ и ПТС должен использоваться набор протоколов TCP/IP.
3. <a id="p100085"></a>Для организации линий (каналов) связи, соединяющих ПТС и ПУ, должен быть использован сетевой интерфейс физического уровня протокола взаимодействия открытых систем.
4. <a id="p100086"></a>Посредством использования ПТС обеспечивается возможность создания виртуальной сети VPN (Virtual Private Network) между ПТС и ПУ.
5. <a id="p100087"></a>Посредством использования ПТС обеспечивается взаимодействие с оборудованием ПУ на транспортном уровне протокола взаимодействия открытых систем (ПТС должен являться сервером).
6. <a id="p100088"></a>При построении ПТС должны соблюдаться согласованные с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации, способы защиты линий (каналов) связи. Соединение ПУ и ПТС должно устанавливаться по протоколу TLS. При установлении соединения ПУ и ПТС должны осуществлять взаимную аутентификацию. В случае невозможности аутентифицировать ПУ или ПТС TCP-соединение разрывается автоматически. Для аутентификации ПУ и ПТС используются сертификаты в формате международного стандарта ITU X.509 для инфраструктуры открытого ключа.
7. <a id="p100089"></a>Взаимодействие ПТС с ПУ должно осуществляться по единому каналу передачи данных, предназначенному для передачи:
1) <a id="p100090"></a>от ПУ в ПТС поисковых запросов и запросов постановки объектов на контроль;
2) <a id="p100091"></a>от ПТС на ПУ результатов выполнения поисковых запросов и запросов постановки объектов на контроль;
3) <a id="p100092"></a>от ПУ в ПТС запросов на получение неформатированных данных (далее - запросы неформатированных данных);
4) <a id="p100093"></a>от ПТС на ПУ ответов на запросы неформатированных данных;
5) <a id="p100094"></a>от ПУ в ПТС запросов для получения схемы данных, статуса поисковых запросов в отложенном режиме согласно [пункту 20](#p100114) настоящего приложения к Требованиям к ПТС и сигналов о функционировании ПТС в соответствии с [пунктом 29](#p100140) настоящего приложения к Требованиям к ПТС;
6) <a id="p100095"></a>от ПТС на ПУ текущей схемы данных, статуса поисковых запросов в отложенном режиме и сигналов о функционировании ПТС;
7) <a id="p100096"></a>от ПУ в ПТС запросов о текущей конфигурации оборудования, системного и прикладного ПО ПТС, а также их состоянии (далее - запросы мониторинга);
8) <a id="p100097"></a>от ПТС на ПУ ответов на запросы мониторинга.
8. <a id="p100098"></a>Единый канал передачи данных создается для подключения к ПТС в виде TCP-соединений. Посредством использования ПТС должен выполняться мониторинг данного порта для создания TCP-соединений с ПУ.
9. <a id="p100099"></a>ПУ должен осуществлять попытки установления подключения к ПТС в соответствии с задаваемым интервалом по предоставленному ПТС TCP-порту.
10. <a id="p100100"></a>Обмен данными в едином канале передачи данных на прикладном уровне должен осуществляться по протоколам HTTP 1.1 и WebSocket.
11. <a id="p100101"></a>В ПТС должны поддерживаться четыре интерфейса (endpoints) взаимодействия с ПУ:
1) <a id="p100102"></a>"/query" - для получения от ПУ поисковых запросов и специальных запросов для получения схемы данных, управления поисковыми запросами в отложенном режиме, а также передачи на ПУ результатов выполнения данных запросов (в том числе постранично) в режиме реального времени в соответствии с [пунктом 20](#p100114) настоящего приложения к Требованиям к ПТС;
2) <a id="p100103"></a>"/subscription" - для получения от ПУ запросов постановки объектов на контроль и передачи на ПУ результатов их выполнения, а также для передачи на ПУ статуса выполнения поисковых запросов ПТС, которые выполняются в отложенном режиме согласно [пункту 20](#p100114) настоящего приложения к Требованиям к ПТС, и сигналов о функционировании ПТС согласно [пункту 29](#p100140) настоящего приложения к Требованиям к ПТС;
3) <a id="p100104"></a>"/download" - для получения от ПУ запросов неформатированных данных и передачи на ПУ результатов выполнения данных запросов;
4) <a id="p100105"></a>"/metric" - для получения от ПУ запросов мониторинга и передачи на ПУ результатов выполнения данных запросов.
12. <a id="p100106"></a>Обмен данными для конечных точек "/query", "/download" и "/metric" должен осуществляться по протоколу HTTP 1.1, для конечной точки "/subscription" - по протоколу WebSocket. ПУ и ПТС для конечной точки "/subscription" должны поддерживать сетевое соединение с помощью механизмов протокола WebSocket.
13. <a id="p100107"></a>Собственники или иные владельцы технологических сетей связи, имеющие уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет", обязаны реализовать механизм запросов и ответов в ПТС для конечных интерфейсов "/query" и "/subscription" с использованием версии языка описания данных и запросов GraphQL. Для кодирования содержимого запросов и ответов необходимо применять формат JSON.
14. <a id="p100108"></a>Посредством использования ПТС должен обеспечиваться функционал передачи данных на языке GraphQL по протоколу WebSocket до конечной точки "/subscription". В соответствии с требованиями, предъявляемыми к формату передачи данных на языке GraphQL по протоколу WebSocket для конечной точки "/subscription", приведенными в [приложении N 6](#p100357) к Требованиям к ПТС.
15. <a id="p100109"></a>Посредством использования ПТС должен обеспечиваться функционал передачи данных до конечной точки "/metric". В соответствии с требованиями, предъявляемыми к формату передачи данных для конечной точки "/metric", приведенными в [приложении N 7](#p100388) к Требованиям к ПТС.
16. <a id="p100110"></a>Собственники или иные владельцы технологических сетей связи, имеющие уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет", обязаны реализовать механизм запросов и ответов в ПТС для конечной точки "/download" с использованием протокола HTTP 1.1. ПТС для данной конечной точки должны поддерживать механизм передачи данных по частям и механизм частичных запросов.
17. <a id="p100111"></a>Если результаты выполнения поисковых запросов и запросов постановки объектов на контроль для конечных точек "/query" и "/subscription" содержат неформатированные данные (файлы), то ответ ПТС должен содержать вместо непосредственно неформатированных данных (файлов) ссылки (HTTP URI в полном формате согласно RFC7230 http(s)://<IP-адрес или доменное имя ПТС>:<порт>/download/<уникальный путь к файлу>) для каждого файла для конечной точки "/download". В ПТС должна поддерживаться функциональная возможность автоматического формирования уникальной ссылки для каждого файла.
18. <a id="p100112"></a>Для получения неформатированных данных, ссылки на которые содержатся в ответе ПТС на поисковый запрос, посредством использования ПУ для каждого файла автоматически инициируется запрос на конечную точку "/download" отдельные (от поисковых запросов) запросы получения неформатированных данных (HTTP GET-запросы) в ПТС, содержащие ссылку на запрашиваемые данные.
19. <a id="p100113"></a>Для отправления на ПУ текущей схемы данных посредством использования ПТС необходимо получить запрос "getSchema" согласно [приложению N 4](#p100279) к Требованиям к ПТС на конечную точку "/query". В ответ посредством использования ПТС автоматически направляется схема данных, описанная на языке SDL GraphQL.
20. <a id="p100114"></a>Поисковые запросы должны выполняться в ПТС в двух режимах: режиме реального времени и отложенном режиме (далее - отложенный поисковый запрос). Режим выполнения поисковых запросов определяется ПТС в соответствии с установленными временными параметрами согласно [пункту 12](#p100079) Требований к ПТС и параметрами запроса (количество запрашиваемых полей и критериев поиска), количества данных, хранящихся в ИС, и производительностью ПТС. Посредством использования ПТС принимаются все поисковые запросы на конечную точку "/query".
21. <a id="p100115"></a>В ПТС должна поддерживаться функциональная возможность выполнения поисковых запросов только с критериями поиска, заданными на верхнем уровне запроса (без вложенных объектов "and", "or", "not"), включая базовые фильтры, согласно [пункту 8](#p100205) приложения N 2 к Требованиям к ПТС при следующих условиях:
<a id="p100116"></a>по согласованию с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации в соответствии с правилами взаимодействия, если среднесуточный объем новых данных, поступающих в ИС, составляет от 1 до 10 Гбайт;
<a id="p100117"></a>без согласования с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации, если среднесуточный объем новых данных, поступающих в ИС АС, превышает 10 Гбайт.
22. <a id="p100118"></a>В ПТС до получения поисковых запросов с ПУ должно обеспечиваться выполнение запроса "statusOfflineRequest" (запрос "Subscription" языка GraphQL) через интерфейс "/subscription" по протоколу WebSocket в соответствии с [приложением N 4](#p100279) к Требованиям к ПТС.
23. <a id="p100119"></a>В режиме реального времени посредством использования ПТС должно автоматически поддерживаться сетевое соединение, по которому поступил запрос от ПУ, и результаты выполнения запроса должны передаваться от ПТС на ПУ по тому же сетевому соединению, не позднее установленных временных параметров согласно [пункту 22](#p100118) настоящего приложения к Требованиям к ПТС.
24. <a id="p100120"></a>Посредством использования ПТС обеспечивается выполнение отложенного поискового запроса по следующему сценарию:
1) <a id="p100121"></a>получение от ПУ поискового запроса на конечную точку "/query";
2) <a id="p100122"></a>автоматическое определение способа выполнения запроса;
3) <a id="p100123"></a>автоматическая генерация уникального идентификатора для поискового запроса в рамках данной ПТС;
4) <a id="p100124"></a>автоматический возврат на ПУ идентификатора отложенного поискового запроса и информации о том, что запрос выполняется в отложенном режиме;
5) <a id="p100125"></a>отправка в непрерывном режиме уведомления на ПУ (путем ответа на запрос "statusOfflineRequest") на интерфейс "/subscription" по протоколу WebSocket согласно [пункту 22](#p100118) настоящего приложения к Требованиям к ПТС об изменениях статуса выполнения отложенного поискового запроса.
<a id="p100126"></a>Посредством использования ПТС должны поддерживаться следующие статусы выполнения отложенного запроса:

<div align="center">

<a id="p100127"></a>"NOTSTARTED" - запрос получен, но не запущен на выполнение;<br>
<a id="p100128"></a>"RUNNING" - запрос получен и в настоящее время выполняется;<br>
<a id="p100129"></a>"READY" - выполнение запроса завершено, результирующие данные готовы;<br>
<a id="p100130"></a>"ABORTED" - выполнение запроса прервано сервером;<br>
<a id="p100131"></a>"CANCELED" - запрос отменен со стороны ПУ;

</div>

6) <a id="p100132"></a>направление на ПУ уведомления о завершении выполнения отложенного поискового запроса (статус "READY"). С ПУ направляется специальный запрос "getOfflineRequest" согласно [приложению N 4](#p100279) к Требованиям к ПТС на конечную точку "/query" с указанием идентификатора запроса. В ПТС должна поддерживаться функция отправления результатов выполнения отложенного запроса постранично в соответствии с [подпунктом 2 пункта 8](#p100208) приложения N 2 к Требованиям к ПТС;
7) <a id="p100133"></a>после получения запроса "getOfflineRequest" в ПТС должна быть обеспечена передача на ПУ результатов выполнения отложенного поискового запроса в режиме реального времени в формате JSON. Структура результатов выполнения отложенного поискового запроса должна соответствовать структуре исходного поискового запроса, полученного на ПТС через интерфейс "/query";
8) <a id="p100134"></a>в момент выполнения отложенного запроса в ПТС должна обеспечиваться возможность прерывания данной операции, после получения запроса "cancelOfflineRequest", в соответствии с [приложением N 4](#p100279) к Требованиям к ПТС на интерфейс "/query" с указанием идентификатора запроса. В ответ посредством ПТС должен быть направлен результат выполнения данного запроса.
25. <a id="p100135"></a>Посредством использования ПТС должно обеспечиваться автоматическое удаление промежуточных результатов прерванного отложенного запроса.
26. <a id="p100136"></a>В ПТС должно обеспечиваться хранение результатов выполнения отложенных запросов согласно [пункту 22](#p100118) настоящего приложения к Требованиям к ПТС или немедленное их удаление при получении запроса.
<a id="p100137"></a>Для удаления результатов выполнения отложенного поискового запроса на ПТС в ПТС должно быть предусмотрено получение от ПУ запроса "delOfflineRequest" в соответствии с [приложением N 4](#p100279) к Требованиям к ПТС на интерфейс "/query" с указанием идентификатора запроса. В ответ посредством использования ПТС обеспечивается автоматическая отправка результатов выполнения данного специального запроса на ПУ.
27. <a id="p100138"></a>В ПТС должна поддерживаться постраничная передача результатов выполнения поисковых запросов в соответствии с параметрами, задаваемыми с ПУ ("offset" и "cursor"). По согласованию с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации в соответствии с правилами взаимодействия, собственниками или иными владельцами технологических сетей связи, имеющими уникальный идентификатор совокупности средств связи и иных технических средств в сети "Интернет", на ПТС допустима реализация только одного из видов постраничной передачи результатов.
28. <a id="p100139"></a>В ПТС должна обеспечиваться функциональная возможность получения запросов постановки объектов на контроль от ПУ через интерфейс "/subscription" по протоколу WebSocket. После получения запроса с ПТС автоматически направляются на ПУ результаты выполнения данного запроса по мере появления новых данных (с момента получения запроса) в ИС, соответствующих критериям отбора, заданным в запросе ПУ. Передача результатов выполнения запросов постановки объектов на контроль осуществляется в непрерывном режиме, без дополнительных запросов от ПУ.
29. <a id="p100140"></a>Для снятия объектов с контроля на ПТС должно быть получено сообщение "Complete" от ПУ в соответствии с [подпунктом 6 пункта 8](#p100383) приложения N 6 к Требованиям к ПТС на интерфейс "/subscription" по протоколу WebSocket. После получения сообщения "Complete" должно прекратиться исполнение запроса постановки объекта на контроль и передача на ПУ результатов выполнения данного запроса.
30. <a id="p100141"></a>В ПТС должен обеспечиваться автоматический контроль функционирования собственных параметров и передачу на ПУ следующих сигналов:
1) <a id="p100142"></a>"Перезапуск программного обеспечения" ("RESTARTDB");
2) <a id="p100143"></a>"Попытка несанкционированного доступа" ("UNAUTHORIZEDACCESS");
3) <a id="p100144"></a>"Критическая ошибка программного обеспечения, потеря данных, дальнейшая работа невозможна" ("CRITICALERROR");
4) <a id="p100145"></a>"Серьезная ошибка программного обеспечения, потеря данных, но дальнейшая работа возможна" ("MAJORERROR");
5) <a id="p100146"></a>"Незначительная ошибка программного обеспечения, данные не потеряны, дальнейшая работа возможна" ("MINORERROR");
6) <a id="p100147"></a>"Изменение схемы данных" ("SCHEMACHANGED");
7) <a id="p100148"></a>"Предупреждение о проблеме с контролируемыми параметрами (метриками)" ("METRICALERTS"). Для данного сигнала ПТС должны возвращать дополнительную информацию о предупреждениях, указанную в [приложении N 4](#p100279) к Требованиям к ПТС. Список контролируемых метрик и предупреждений о проблемах с ними определяется разработчиком ПТС и согласовывается с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации.
31. <a id="p100149"></a>Для отправки на ПУ сигналов в ПТС необходимо предусмотреть функциональную возможность исполнения запроса от ПУ "trap" (запрос Subscription языка GraphQL) через интерфейс "/subscription" по протоколу WebSocket. Посредством использования ПТС автоматически в непрерывном режиме (без дополнительных запросов от ПУ) отправляются на ПУ сигналы сразу после их возникновения на ПТС. Если в момент получения запроса "trap" на ПТС есть сигналы, которые не были отправлены ранее ПУ, то посредством использования ПТС должна быть обеспечена передача на ПУ данных сигналов.
32. <a id="p100150"></a>В ПТС должны быть предусмотрены следующие коды ошибок для языка GraphQL:


| <a id="p100151"></a>Код ошибки | <a id="p100152"></a>Описание ошибки |
| --- | --- |
| <a id="p100153"></a>GRAPHQL_PARSE_FAILED | Запрос на языке GraphQL содержит синтаксическую ошибку |
| <a id="p100154"></a>GRAPHQL_VALIDATION_FAILED | Запрос на языке GraphQL недействителен для текущей схемы данных |
| <a id="p100155"></a>BAD_USER_INPUT | Запрос на языке GraphQL содержит некорректное значение для аргумента поля |
| <a id="p100156"></a>OPERATION_RESOLUTION_FAILURE | Невозможно определить операцию для выполнения из запроса на языке GraphQL |
| <a id="p100157"></a>BAD_REQUEST | Ошибка возникла до начала анализа запроса на языке GraphQL |
| <a id="p100158"></a>REQUEST_NOT_FOUND | Отложенный запрос с указанным идентификатором не найден |
| <a id="p100159"></a>NO_REQUEST_RESULT | Результаты выполнения отложенного запроса с указанным идентификатором не найдены |
| <a id="p100160"></a>REQUEST_TOO_COMPLEX | Запрос на языке GraphQL содержит критерии поиска (аргументы поля) |
| <a id="p100161"></a>INTERNAL_SERVER_ERROR | Внутренняя ошибка |


33. <a id="p100162"></a>В ПТС должно обеспечиваться выполнение всех запросов мониторинга и неформатированных данных, поступающих на ПТС от ПУ, в режиме реального времени.





<a id="p100163"></a>Приложение N 2
к Требованиям к сетям и средствам

<div align="right">

связи собственников или иных владельцев<br>
технологических сетей связи, имеющих<br>
уникальный идентификатор совокупности<br>
средств связи и иных технических средств<br>
в информационно-телекоммуникационной<br>
сети "Интернет", для проведения<br>
уполномоченными государственными<br>
органами, осуществляющими<br>
оперативно-разыскную деятельность<br>
или обеспечение безопасности<br>
Российской Федерации, в случаях,<br>
установленных федеральными законами,<br>
мероприятий в целях реализации<br>
возложенных на них задач,<br>
утвержденным приказом<br>
Минцифры России<br>
от 16 декабря 2025 г. N 1174

<a id="p100164"></a>ТРЕБОВАНИЯ<br>
К ПРОГРАММНЫМ И ТЕХНИЧЕСКИМ СРЕДСТВАМ, ИСПОЛЬЗУЕМЫМ<br>
СОБСТВЕННИКАМИ ИЛИ ИНЫМИ ВЛАДЕЛЬЦАМИ ТЕХНОЛОГИЧЕСКИХ

</div>

<div align="center">

**СЕТЕЙ СВЯЗИ, ИМЕЮЩИМИ УНИКАЛЬНЫЙ ИДЕНТИФИКАТОР**<br>
**СОВОКУПНОСТИ СРЕДСТВ СВЯЗИ И ИНЫХ ТЕХНИЧЕСКИХ СРЕДСТВ**<br>
**В ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННОЙ СЕТИ "ИНТЕРНЕТ",**<br>
В ЧАСТИ ПРЕДОСТАВЛЕНИЯ ИНФОРМАЦИИ, ХРАНЯЩЕЙСЯ В СХЕМЕ<br>
ДАННЫХ, ПРИ ВЫПОЛНЕНИИ ЗАПРОСОВ ОТ ПУНКТОВ УПРАВЛЕНИЯ<br>
УПОЛНОМОЧЕННЫХ ГОСУДАРСТВЕННЫХ ОРГАНОВ, ОСУЩЕСТВЛЯЮЩИХ<br>
ОПЕРАТИВНО-РАЗЫСКНУЮ ДЕЯТЕЛЬНОСТЬ ИЛИ ОБЕСПЕЧЕНИЕ<br>
БЕЗОПАСНОСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ

</div>


1. <a id="p100165"></a>Данные, хранящиеся в ИС, должны быть описаны с помощью схемы данных на языке SDL GraphQL (далее - схема данных).
2. <a id="p100166"></a>Произвольный тип данных "A" в схеме данных должен иметь связь с произвольным типом данных "B", если произвольный тип данных "A" содержит поле произвольного типа данных "B" или поле, являющееся списком типа данных "B".
3. <a id="p100167"></a>Произвольный тип данных "C" в схеме данных должен иметь двухстороннюю связь с произвольным типом данных "D", если произвольный тип данных "C" связан с произвольным типом данных "D" и произвольный тип данных "D" связан с произвольным типом данных "C".
4. <a id="p100168"></a>Для схемы данных разработчиком ПТС должен быть определен перечень базовых типов данных на языке GraphQL, содержащих информацию, которая должна быть доступна для поиска в ПТС по запросам ПУ. Перечень базовых типов данных ([приложение N 3](#p100251) к Требованиям к ПТС) должен содержать параметры идентифицирующих признаков объектов физического мира.
5. <a id="p100169"></a>Для схемы данных разработчиком ПТС определяется перечень сервисных типов на языке GraphQL, отражающих информацию о схеме данных, или описывающих HTTP URI для неформатированных данных, или предназначенных для получения статуса отложенных поисковых запросов или сигналов о функционировании ПТС. Посредством использования ПТС должен поддерживаться перечень сервисных типов, приведенный в [приложении N 4](#p100279) к Требованиям к ПТС.
6. <a id="p100170"></a>Пользовательский тип данных на языке GraphQL, не являющийся базовым сервисным типом или встроенным типом языка GraphQL, должен содержать идентифицирующий признак объекта физического мира. Пользовательские типы используются для описания данных, содержащихся в ИС и отличных от данных, описываемых базовыми типами. Требования к пользовательским типам должны соответствовать пункту 6 настоящего приложения к Требованиям к ПТС.
7. <a id="p100171"></a>Схема данных в части базовых, пользовательских и сервисных типов должна соответствовать следующим требованиям:
1) <a id="p100172"></a>каждое поле пользовательского типа, которое отражает идентифицирующий признак объекта физического мира и будет доступно в качестве критерия поиска в ПТС по запросам ПУ, должно представляться базовым типом (или его списком);
2) <a id="p100173"></a>поля пользовательского типа, которые содержат ссылки (HTTP URI) на неформатированные данные (файлы), должны представляться сервисным типом "Media";
3) <a id="p100174"></a>остальные поля пользовательских типов должны представляться в том числе встроенными типами языка GraphQL;
4) <a id="p100175"></a>для каждого пользовательского типа, имеющего хотя бы одно поле базового типа или связанного с другим пользовательским типом, имеющим хотя бы одно поле базового типа, должны быть определены следующие объекты языка GraphQL: тип для представления результатов выполнения поисковых запросов и входной объект для задания параметров поиска (далее - входной объект);
5) <a id="p100176"></a>тип для представления результатов выполнения поисковых запросов должен иметь следующую структуру:


| <a id="p100177"></a>Имя поля | <a id="p100178"></a>Тип поля | <a id="p100179"></a>Назначение поля |
| --- | --- | --- |
| <a id="p100180"></a>cursor | String | значение курсора для последнего элемента списка (поле "result") с результатами выполнения поискового запроса для данного пользовательского типа |
| <a id="p100181"></a>hasNextPage | Boolean | признак наличия следующей страницы с результатами выполнения поискового запроса для данного пользовательского типа (может использоваться с любым видом постраничного получения результатов выполнения запроса) |
| <a id="p100182"></a>result | список пользовательского типа | результат выполнения поискового запроса для данного пользовательского типа |


<a id="p100183"></a>Программный код (тип поля представления результатов) выполнения поисковых запросов:

<a id="p100184"></a>    type {{UserTypeResult}} {
     cursor: String
     hasNextPage: Boolean
     result: [{{UserType}}!]
    },

<a id="p100185"></a>в котором:
<a id="p100186"></a>{{UserTypeResult}} - произвольное имя типа для представления результатов выполнения поисковых запросов,
<a id="p100187"></a>{{UserType}} - имя пользовательского типа, для которого определен тип {{UserTypeResult}};
6) <a id="p100188"></a>каждый входной объект для пользовательского типа должен иметь следующую структуру:


| <a id="p100189"></a>Имя поля | <a id="p100190"></a>Тип поля | <a id="p100191"></a>Назначение поля |
| --- | --- | --- |
| <a id="p100192"></a>and | список исходных входных объектов | для задания параметров поиска с логической функцией "И" |
| <a id="p100193"></a>or | список исходных входных объектов | для задания параметров поиска с логической функцией "ИЛИ" |
| <a id="p100194"></a>not | исходный входной объект | для задания параметров поиска с логической функцией "НЕ" |
| <a id="p100195"></a>все имена полей пользовательского типа, представленные базовыми типами | входные объекты для базовых типов, определенные в [приложении N](#p100291) 5 к Требованиям к ПТС | для задания параметров поиска конкретных полей пользовательского типа, представленных базовыми типами |


<a id="p100196"></a>Программный код входного объекта для пользовательского типа должен иметь следующую структуру:

<a id="p100197"></a>    input {{UserTypeFilterInput}} {
     and: [{{UserTypeFilterInput}}]
     or: [{{UserTypeFilterInput}}]
     not: {{UserTypeFilterInput}}
     {{base Field1}}: {{BaseFilterInput1}}
     ...
     {{baseFieldN}}: {{BaseFilterlnputN}}},

<a id="p100198"></a>в котором:
<a id="p100199"></a>{{UserTypeFilterInput}} - произвольное имя входного объекта для пользовательского типа,
<a id="p100200"></a>{{baseFieldl}...{{baseFieldN}} - поля пользовательского типа, представленные одним из базовых типов,
<a id="p100201"></a>{{baseFilterInputl}}...{{baseFilterInputN}} - входные объекты для базовых типов, определенные в [приложении N 5](#p100291) к Требованиям к ПТС;
7) <a id="p100202"></a>все пользовательские типы, их поля и аргументы должны иметь описание на русском языке;
8) <a id="p100203"></a>связь между двумя произвольными пользовательскими типами должна быть двухсторонней, за исключением случаев, если один из пользовательских типов не имеет ни одного поля базового типа;
9) <a id="p100204"></a>схема данных должна содержать все сервисные типы из перечня, определенного в [приложении N 4](#p100279) к Требованиям к ПТС.
8. <a id="p100205"></a>Схема данных в части стандартных типов "Query", "Subscription" языка GraphQL должна соответствовать следующим требованиям:
1) <a id="p100206"></a>тип "Query" должен иметь поле "request" для задания поисковых запросов:
<a id="p100207"></a>"request: Query Message!"
2) <a id="p100208"></a>тип "QueryMessage" должен иметь следующую структуру:


| <a id="p100209"></a>Имя поля | <a id="p100210"></a>Тип поля | <a id="p100211"></a>Назначение поля |
| --- | --- | --- |
| <a id="p100212"></a>requestID | String | идентификатор запроса |
| <a id="p100213"></a>offline | Boolean | признак выполнения запроса в отложенном режиме |
| <a id="p100214"></a>maxPageSize | Int | максимальное количество элементов в списке с результатами выполнения поискового запроса для одной страницы |
| <a id="p100215"></a>все имена пользовательских типов, имеющие хотя бы одно поле базового типа | тип для представления результатов выполнения поисковых запросов, соответствующий пользовательскому типу | задание параметров поиска и постраничной передачи результатов поиска для пользовательского типа |


<a id="p100216"></a>Поле типа "QueryMessage", содержащее все имена пользовательских типов, имеющее хотя бы одно поле базового типа, заданное списком пользовательского типа, должно иметь следующие аргументы:
<a id="p100217"></a>"filter" - задает параметры поиска и представляется входным объектом для данного пользовательского типа;
<a id="p100218"></a>"offset" - задает начальное смещение для постраничной передачи результатов;
<a id="p100219"></a>"limit" - задает максимальное количество элементов на одной странице при постраничной передаче результатов, но не более значения maxPageSize;
<a id="p100220"></a>"cursor" - значение курсора при использовании курсорной постраничной передачи результатов.
<a id="p100221"></a>Аргументы "offset" и "limit" должны использоваться для постраничной передачи результатов со смещением, аргументы "limit" и "cursor" - для курсорной постраничной передачи результатов.
<a id="p100222"></a>Программный код типа QueryMessage должен иметь следующую структуру:

<a id="p100223"></a>    type QueryMessage {
    requestID: String!
    offline: Boolean!
    maxPageSize: Int
    {{userTypel}}(filter: {{UserTypeFilterInputl}}!, offset: Int, limit: Int, cursor: String):
                          {{UserTypeResultl}}!
    ...
    {{userTypeN}}(filter: {{UserTypeFilterInputN}}!, offset: Int, limit: Int, cursor: String):
                          {{UserTypeResultN}}!
    },

<a id="p100224"></a>в котором:
<a id="p100225"></a>{{userTypel}}...{{userTypeN}} - имена пользовательских типов, имеющих хотя бы одно поле базового типа;
<a id="p100226"></a>{{UserTypeResultl}}...{{UserTypeResultN}} - имена типов для представления результатов выполнения поисковых запросов, соответствующие пользовательским типам;
<a id="p100227"></a>{{UserTypeFilterInputl}}...{{UserTypeFilterInputN}} - входные объекты, соответствующие пользовательским типам;
3) <a id="p100228"></a>тип "Subscription" должен содержать следующие поля для задания запросов постановки объектов на контроль:


| <a id="p100229"></a>Имя поля | <a id="p100230"></a>Тип поля | <a id="p100231"></a>Назначение поля |
| --- | --- | --- |
| <a id="p100232"></a>все имена пользовательских типов, имеющие хотя бы одно поле базового типа | список пользовательского типа | задание параметров постановки объектов на контроль для пользовательского типа |


<a id="p100233"></a>Каждое поле в типе "Subscription", представленное списком пользовательского типа, должно иметь аргумент "filter" для задания параметров постановки объектов на контроль и представляться входным объектом для данного пользовательского типа.
<a id="p100234"></a>Программный код типа "Subscription" должен иметь следующую структуру:

<a id="p100235"></a>type Subscription {
<a id="p100236"></a>{{userTypel}}(filter: {{UserTypeFilterInputl}}!): [{{UserTypel}}!]
<a id="p100237"></a>...
<a id="p100238"></a>{{userTypeN}}(filter: {{UserTypeFilterInputN}}!): [{{UserTypeN}}]!
<a id="p100239"></a>},

<a id="p100240"></a>в котором:
<a id="p100241"></a>{{userTypel}}...{{userTypeN}} - имена пользовательских типов, имеющих хотя бы одно поле базового типа,
<a id="p100242"></a>{{UserTypeFilterInputl}}...{{UserTypeFilterInputN}} - входные объекты, соответствующие пользовательским типам.
4) <a id="p100243"></a>типы "Query" и "Subscription" должны содержать все запросы, соответствующие сервисным типам, которые приведены в [приложении N 4](#p100279) к Требованиям к ПТС.
9. <a id="p100244"></a>В ПТС должны поддерживаться переменные типа "variables" языка GraphQL в поисковых запросах и запросах постановки объектов на контроль, получаемых от ПУ. В ПТС должна обеспечиваться возможность использования актуальных перечней базовых, сервисных типов и входных объектов для поиска.
10. <a id="p100245"></a>Использование базовых, сервисных типов и входных объектов для задания параметров поиска, не предусмотренными [Требованиями](#p100011) к ПТС, должно согласовываться во время внедрения ПТС с уполномоченными государственными органами, осуществляющими оперативно-разыскные мероприятия или обеспечение безопасности Российской Федерации.
11. <a id="p100246"></a>Наименование пользовательского типа и его полей должно соответствовать следующим требованиям:
<a id="p100247"></a>использование символа подчеркивания "_" в именах типов и их полей не допускается;
<a id="p100248"></a>имена пользовательских типов пишутся с заглавной буквы и могут состоять из нескольких слов, написанных слитно без пробелов, каждое слово должно быть написано с заглавной буквы;
<a id="p100249"></a>имена полей пользовательских типов пишутся со строчной буквы и могут состоять из нескольких слов, написанных слитно без пробелов, каждое слово, кроме первого слова, должно быть написано с заглавной буквы.





<a id="p100250"></a>Приложение N 3
к Требованиям к сетям и средствам
связи собственников или иных владельцев
технологических сетей связи, имеющих
уникальный идентификатор совокупности
средств связи и иных технических средств
в информационно-телекоммуникационной
сети "Интернет", для проведения
уполномоченными государственными
органами, осуществляющими
оперативно-разыскную деятельность
или обеспечение безопасности
Российской Федерации, в случаях,
установленных федеральными законами,
мероприятий в целях реализации
возложенных на них задач,
утвержденным приказом
Минцифры России
от 16 декабря 2025 г. N 1174

<a id="p100251"></a>ПЕРЕЧЕНЬ БАЗОВЫХ ТИПОВ (КОДОВ) ДЛЯ ОПИСАНИЯ СХЕМЫ ДАННЫХ


| <a id="p100252"></a>N п/п | <a id="p100253"></a>Описание | <a id="p100254"></a>Базовый тип (код) |
| --- | --- | --- |
| <a id="p100255"></a>1. | Идентификатор мобильного абонента | """<br>Базовый тип идентификатора мобильного абонента<br>"""<br>type ImsiBase {<br>"""<br>Идентификатор мобильного абонента<br>"""<br>imsi: String!<br>} |
| <a id="p100256"></a>2. | Идентификатор мобильной станции | """<br>Базовый тип идентификатора мобильной станции<br>"""<br>type ImeiBase {<br>"""<br>Идентификатор мобильной станции<br>"""<br>imei: String!<br>} |
| <a id="p100257"></a>3. | Номер абонента сети сотовой связи | """<br>Базовый тип номера абонента сети сотовой связи<br>"""<br>type MsisdnBase {<br>"""<br>Номер абонента сети сотовой связи<br>"""<br>msisdn: String!<br>} |
| <a id="p100258"></a>4. | Код страны, в которой находится оператор мобильной связи | """<br>Базовый тип кода страны, в которой находится оператор связи<br>"""<br>type MccBase {<br>"""<br>Код страны<br>"""<br>mcc: Int!<br>} |
| <a id="p100259"></a>5. | Код оператора связи | """<br>Базовый тип кода оператора связи<br>"""<br>type MncBase {<br>"""<br>Код оператора связи<br>"""<br>mnc: Int!<br>} |
| <a id="p100260"></a>6. | Код географической зоны, которая обслуживается одним контроллером базовых станций | """<br>Базовый тип кода географической зоны, обслуживаемой одним контроллером базовых станций<br>"""<br>type LacBase {<br>"""<br>Код географической зоны<br>"""<br>lac: Int!<br>} |
| <a id="p100261"></a>7. | Идентификатор сектора базовой станции | """<br>Базовый тип идентификатора сектора базовой станции<br>"""<br>type CellBase {<br>"""<br>Идентификатор сектора базовой станции<br>"""<br>cell: Int!<br>} |
| <a id="p100262"></a>8. | Адрес электронной почты | """<br>Базовый тип адреса электронной почты<br>"""<br>type EmailBase {<br>"""<br>Адрес электронной почты<br>"""<br>email: String!<br>} |
| <a id="p100263"></a>9. | Адресная информация | """<br>Базовый тип адресных данных<br>"""<br>type AddressBase {<br>"""<br>Неструктурированный адрес<br>"""<br>address: String<br>"""<br>Почтовый индекс, zip-код<br>"""<br>zip: String<br>"""<br>Страна<br>"""<br>county: String<br>"""<br>Область<br>"""<br>region: String<br>"""<br>Район, муниципальный округ<br>"""<br>zone: String<br>"""<br>Город, поселок, деревня<br>"""<br>city: String<br>"""<br>Улица<br>"""<br>street: String<br>"""<br>Дом, строение<br>"""<br>building: String<br>"""<br>Корпус<br>"""<br>buildsect: String<br>"""<br>Квартира, офис<br>"""<br>apartment: String<br>} |
| <a id="p100264"></a>10. | Паспортные данные | """<br>Базовый тип паспортных данных<br>"""<br>type PassportBase {<br>"""<br>Серия паспорта<br>"""<br>series: String!<br>"""<br>Номер паспорта<br>"""<br>number: String! |
| <a id="p100265"></a>11. | Фамилия, имя, отчество (при наличии) | """<br>Базовый тип ФИО<br>"""<br>type PersonBase {<br>"""<br>Неструктурированная информация о ФИО<br>"""<br>fullName: String!<br>"""<br>Имя<br>"""<br>name: String<br>"""<br>Отчество (при наличии)<br>"""<br>middleName: String<br>"""<br>Фамилия<br>"""<br>lastName: String<br>} |
| <a id="p100266"></a>12. | Номер водительского удостоверения | """<br>Базовый тип номера удостоверения водителя транспортного средства<br>"""<br>type DrivingLicenseNumberBase {<br>"""<br>Номер удостоверения водителя транспортного средства<br>"""<br>drivingLicenseNumber: String!<br>} |
| <a id="p100267"></a>13. | Государственный регистрационный номер транспортного средства | """<br>Базовый тип государственного регистрационного номера транспортного средства<br>"""<br>type VehicleGosNumberBase {<br>"""<br>Государственный регистрационный номер транспортного средства<br>"""<br>vehicleGosNumber: String!<br>} |
| <a id="p100268"></a>14. | Идентификационный номер налогоплательщика | """<br>Базовый тип идентификационного номера налогоплательщика<br>"""<br>type InnBase {<br>"""<br>Идентификационный номер налогоплательщика<br>"""<br>inn: String!<br>} |
| <a id="p100269"></a>15 | Информация о дате и времени | """<br>Базовый тип информации о дате и времени<br>""""<br>type DateTimeBase {<br>"""<br>Информация о дате и времени в расширенном формате местного времени с разницей со Всемирным координированным временем (UTC) YYYY-MM-DDThh:mm:ss $\pm$ hh:mm<br>"""<br>utc: String!<br>} |
| <a id="p100270"></a>16. | Геометрические пространственно-временные данные: точка, массив точек, информация о месте и времени, полигон, мультиполигон, геотрек | """<br>Базовый тип пространственной информации: точка<br>"""<br>type PointBase {<br>"""<br>Долгота<br>"""<br>longitude: Float!<br>"""<br>Широта<br>"""<br>latitude: Float!<br>}<br>"""<br>Базовый тип пространственной информации: последовательность точек (линия)<br>"""<br>type LineBase {<br>"""<br>Последовательность точек в пространстве<br>"""<br>points: [PointBase!]!<br>}<br>"""<br>Базовый тип пространственно-временной информации: точка в пространстве с привязкой к дате и времени<br>"""<br>type PointTimeBase {<br>"""<br>Точка в пространстве<br>"""<br>point: PointBase!<br>"""<br>Информация о дате и времени<br>"""<br>time: DateTimeBase!<br>}<br>"""<br>Базовый тип пространственной информации: полигон<br>"""<br>type PolygonBase {<br>"""<br>Последовательность линий<br>"""<br>lines: [LineBase!]!<br>}<br>"""<br>Базовый тип пространственной информации: мультиполигон<br>"""<br>type MultiPolygonBase {<br>"""<br>Последовательность полигонов<br>"""<br>polygons: [PolygonBase!]!<br>}<br>"""<br>Базовый тип пространственно-временной информации: трек<br>"""<br>type GeoTrackBase {<br>"""<br>Последовательность точек в пространстве с привязкой к дате и времени<br>"""<br>pointsInTime: [PointTimeBase!]!<br>} |
| <a id="p100271"></a>17. | Сведения о юридических лицах и индивидуальных предпринимателях | """<br>Базовый тип сведений о юридических лицах и индивидуальных предпринимателях<br>"""<br>type OrganizationInfoBase {<br>"""<br>Полное наименование юридического лица или ИНН индивидуального предпринимателя<br>"""<br>nameFull: String<br>"""<br>Сокращенное наименование юридического лица (при наличии)<br>"""<br>nameSmall: String<br>"""<br>ОГРН и/или ОГРНИП<br>"""<br>gm: GRNBase!<br>"""<br>Идентификационный номер налогоплательщика<br>"""<br>inn: InnBase<br>"""<br>Информация о банковских данных<br>"""<br>bankInfo: BankAccountInfoBase<br>"""<br>Адрес<br>"""<br>address: AddressBase<br>"""<br>Информация о номере телефона<br>"""<br>msisdn: [MsisdnBase!]<br>"""<br>Сайт в сети "Интернет"<br>"""<br>webSite: URLBase<br>"""<br>Электронная почта<br>"""<br>email: EmailBase<br>"""<br>Дата регистрации<br>"""<br>dateRegistration: DateTimeBase!<br>""" |
|  |  | Сведения о лице, имеющем право без доверенности действовать от имени юридического лица<br>"""<br>representative: Organ izationRepresentativeBase!<br>"""<br>[ОКВЭД](https://bukva.ai/docs/klassifikator-ok-029-2014-kdes-red-2)<br>"""<br>okved: [String!]<br>"""<br>ЕГРЮЛ<br>"""<br>egrul: String<br>"""<br>ЕГРИП<br>"""<br>egrip: String<br>}<br>"""<br>Базовый тип ОГРН или ОГРНИП<br>"""<br>type GRNBase {<br>"""<br>Государственный регистрационный номер - ОГРН и ОГРНИП<br>"""<br>gm: String!<br>}<br>"""<br>Базовый тип сведений об учредителях (участниках) юридического лица, лицах, имеющих право без доверенности действовать от имени юридического лица<br>"""<br>type OrganizationRepresentativeBase {<br>"""<br>Фамилия, имя, отчество (при наличии) представителя<br>"""<br>name: PersonBase!<br>"""<br>Идентификационный номер налогоплательщика<br>"""<br>inn: InnBase!<br>"""<br>Должность<br>"""<br>position: String!<br>} |
| <a id="p100272"></a>18. | Банковские данные | """<br>Базовый тип банковских данных<br>"""<br>type BankAccountInfoBase {<br>"""<br>Наименование банка<br>"""<br>bankName: String<br>"""<br>Номер банковского счета<br>"""<br>account: String<br>"""<br>Корреспондентский счет<br>"""<br>corrAccount: String<br>"""<br>Номер банковской карты<br>"""<br>cardNumber: String!<br>"""<br>Адрес банка<br>"""<br>bankAddress: AddressBase<br>"""<br>Банковский идентификационный код<br>"""<br>rcbic: String<br>"""<br>Код причины постановки на учет кредитной организации предназначен для идентификации юридического лица, которое является налогоплательщиком<br>"""<br>kpp: String<br>}<br>"""<br>Базовый тип банковских переводов<br>"""<br>type BankTransferInfoBase {<br>"""<br>Сумма перевода<br>"""<br>amount: String!<br>"""<br>Отправитель перевода<br>"""<br>from: BankAccountInfoBase<br>"""<br>Получатель перевода<br>"""<br>to: BankAccountInfoBase<br>"""<br>Дата и время перевода<br>"""<br>data: DateTimeBase!<br>} |
| <a id="p100273"></a>19. | IP-адрес | """<br>Базовый тип IP-адреса<br>"""<br>type IpAddressBase {<br>"""<br>IP-адрес в формате IPv4 (192.0.2.235) или IPv6 (1050:0000:0000:0000:0005:0600:300c:326b, 1050:0:0:0:5:600:300c:326b, ff06::c3)<br>"""<br>ip: String!<br>"""<br>Маска подсети в виде префикса<br>"""<br>mask: Int<br>"""<br>Тип IP-адреса: ipv4, ipv6<br>"""<br>type: IpType!<br>}<br>enum IpType {<br>IPV4<br>IPV6<br>} |
| <a id="p100274"></a>20. | Информация об участнике сетевого соединения | """<br>Базовый тип информации об участнике сетевого соединения<br>"""<br>type NetworkPeerBase {<br>"""<br>Информация о IP-адресе<br>"""<br>ip: IpAddressBase!<br>t"""<br>Номер порта<br>"""<br>port: Int!<br>"""<br>Номер протокола согласно RFC3232<br>"""<br>protocolNumber: Int<br>} |
| <a id="p100275"></a>21. | URL-адрес | """<br>Базовый тип URL-адреса<br>"""<br>type URLBase {<br>"""<br>URL-адрес<br>"""<br>url: String!<br>} |
| <a id="p100276"></a>22. | Доменное имя | """<br>Базовый тип доменного имени<br>"""<br>type DomainNameBase {<br>"""<br>Доменное имя<br>"""<br>domainName: String!<br>} |
| <a id="p100277"></a>23. | Имя/идентификатор пользователя | """<br>Базовый тип имени/идентификатора пользователя<br>"""<br>type Login Base {<br>"""<br>Имя/идентификатор пользователя<br>"""<br>login: String!<br>} |






<a id="p100278"></a>Приложение N 4
к Требованиям к сетям и средствам
связи собственников или иных владельцев
технологических сетей связи, имеющих
уникальный идентификатор совокупности
средств связи и иных технических средств
в информационно-телекоммуникационной
сети "Интернет", для проведения
уполномоченными государственными
органами, осуществляющими
оперативно-разыскную деятельность
или обеспечение безопасности
Российской Федерации, в случаях,
установленных федеральными законами,
мероприятий в целях реализации
возложенных на них задач,
утвержденным приказом
Минцифры России
от 16 декабря 2025 г. N 1174

<a id="p100279"></a>ПЕРЕЧЕНЬ СЕРВИСНЫХ ТИПОВ ДЛЯ ОПИСАНИЯ СХЕМЫ ДАННЫХ


| <a id="p100280"></a>N п/п | <a id="p100281"></a>Описание типа | <a id="p100282"></a>Сервисный тип | <a id="p100283"></a>Запрос | <a id="p100284"></a>Описание запроса |
| --- | --- | --- | --- | --- |
| <a id="p100285"></a>1. | Схема данных, описанная на языке SDL | Отсутствует | type Query {<br>"""<br>Запрос схемы данных<br>"""<br>getSchema: String!<br>} | Запрос схемы данных, описанной на языке SDL GraphQL |
| <a id="p100286"></a>2. | Идентификатор отложенного запроса | Отсутствует | type Query {<br>"""<br>Запрос результата выполнения отложенного запроса<br>"""<br>getOfflineRequest(re questID: String!, offset: Int, limit: Int, cursor: String): QueryMessage!<br>} | Запрос результата выполнения отложенного запроса по его идентификатору.<br>Ответом являются данные (результат выполнения запроса), представленные в формате JSON в соответствии с изначальным GraphQL запросом.<br>Если отложенный запрос с указанным идентификатором не найден, то должно быть возвращено<br>сообщение об ошибке "GraphQL" с кодом "REQUEST_NOT_FOUND".<br>Если отложенный запрос еще не выполнен или результаты его выполнения уже удалены, то должно быть возвращено сообщение об ошибке "GraphQL" с кодом<br>"NO_REQUEST_RESULT". |
|  |  |  | type Query {<br>"""<br>Удаление результатов отложенного запроса<br>"""<br>delOfflineRequest(re questID: String!): Boolean!<br>} | Удаление результатов отложенного запроса по его идентификатору.<br>Если удаление произошло успешно, то должен быть возвращен ответ "True".<br>Если удаление не удалось выполнить, то должен быть возвращен ответ "False" и описание ошибки "GraphQL".<br>Если отложенный запрос с указанным идентификатором не найден, то должно быть возвращено сообщение об ошибке "GraphQL" с кодом "REQUEST_NOT_FOUND". |
|  |  |  | type Query {<br>"""<br>Отмена выполнения отложенного запроса<br>"""<br>cancelOfflineRequest (requestID: String!): Boolean!<br>} | Прерывание (отмена) выполнения отложенного запроса по его идентификатору.<br>Если прерывание произошло успешно, то должен быть возвращен ответ "True".<br>Если прерывание не удалось выполнить, то должен быть возвращен ответ "False" и описание ошибки "GraphQL".<br>Если отложенный запрос с указанным идентификатором не найден, то должно быть возвращено сообщение об ошибке "GraphQL" с кодом<br>"REQUEST_NOT_FOUND". |
| <a id="p100287"></a>3. | Информация о статусе выполнения отложенных запросов | """<br>Сервисный тип для информации о статусе выполнения отложенного запроса<br>"""<br>type RequestInfo {<br>"""<br>Идентификатор отложенного запроса<br>"""<br>requestID: String!<br>"""<br>Статус отложенного запроса<br>"""<br>status: RequestStatus<br>"""<br>Дата и время начала выполнения отложенного запроса<br>"""<br>startsAt: DateTimeBase<br>}<br>""" | type Subscription {<br>"""<br>Запрос статуса отложенных запросов<br>"""<br>statusOfflineRequest:<br>RequestInfo!<br>} | Запрос статуса отложенных запросов.<br>Ответом является сообщение типа "RequestInfo". |
|  |  | Возможные статусы выполнения отложенного запроса<br>"""<br>enum RequestStatus {<br>"""<br>Запрос еще не выполняется<br>"""<br>NOTSTARTED<br>"""<br>Запрос выполняется<br>"""<br>RUNNING<br>"""<br>Запрос выполнен<br>"""<br>READY<br>"""<br>Выполнение запрос прервано ПТС<br>"""<br>ABORTED<br>"""<br>Запрос отменен ПУ<br>"""<br>CANCELED<br>} |  |  |
| <a id="p100288"></a>4. | HTTP URI для неформатированных данных | """<br>Сервисный тип для неформатированных данных<br>"""<br>type Media {<br>"""<br>HTTP URI для неформатированных данных в полном формате согласно RFC7230 http(s)://<IP-адрес или доменное имя ПТС>:<порт>/download/<уникальный путь к файлу><br>"""<br>link: String!<br>} | Отсутствует | Отсутствует |
| <a id="p100289"></a>5. | Сигналы о функционировании ПТС | """<br>Сервисный тип для сигналов о функционировании ПТС<br>"""<br>type Trap {<br>"""<br>Тип сигнала<br>"""<br>type: Trap Type!<br>"""<br>Описание сигнала<br>"""<br>message: String<br>"""<br>Дата и время возникновения сигнала<br>"""<br>starts At: DateTimeBase!<br>"""<br>Дополнительная информация о предупреждениях для контролируемых метрик (для сигнала типа "METRICALERTS")<br>"""<br>metricalerts: MetricAlerts<br>}<br>"""<br>Возможные типы сигналов<br>"""<br>enum TrapType {<br>"""<br>Перезапуск программного обеспечения<br>"""<br>RESTARTDB<br>"""<br>Попытка несанкционированного доступа<br>"""<br>UNAUTHORIZEDACCESS<br>"""<br>Критическая ошибка<br>"""<br>CRITICALERROR<br>"""<br>Серьезная ошибка<br>"""<br>MAJORERROR<br>"""<br>Незначительная ошибка<br>"""<br>MINORERROR<br>"""<br>Изменение схемы данных<br>"""<br>SCHEMACHANGED<br>""" | type Subscription {<br>"""<br>Запрос получения сигналов о функционировании ПТС<br>"""<br>trap: Trap!<br>} | Запрос получения сигналов о функционировании ПТС. Ответом является сообщение типа "Trap". Если тип сигнала "Предупреждение о проблеме с контролируемыми параметрами (METRICALERTS)", то ПТС должны возвращать дополнительную информацию о предупреждениях в поле "metricalerts". |
|  |  | Предупреждение о проблеме с контролируемой метрикой<br>"""<br>METRICALERTS<br>}<br>""""<br>Дополнительная информация о предупреждении<br>"""<br>type MetricAlerts {<br>"""<br>Ключ, определяющий группу предупреждений<br>"""<br>groupKey: String!<br>"""<br>Статус предупреждения<br>"""<br>status: AlertStatus!<br>"""<br>Определяет получателя предупреждения<br>"""<br>receiver: String!<br>"""<br>Метки, по которым сгруппированы предупреждения<br>"""<br>groupLabels: [KeyValueRef!]!<br>"""<br>Общие метки для всех предупреждений<br>"""<br>commonLabels: [KeyValueRef!]!<br>"""<br>Общие описания для всех предупреждений<br>"""<br>commonAnnotations: [KeyValueRef!]!<br>"""<br>URL менеджера предупреждений<br>"""<br>externalURL: String!<br>"""<br>Список предупреждений<br>"""<br>alerts: [Alert!]!<br>}<br>"""<br>Возможные статусы предупреждений<br>"""<br>enum AlertStatus { |  |  |
|  |  | """<br>Проблема решена<br>"""<br>RESOLVED<br>"""<br>Проблема не решена<br>"""<br>FIRING<br>}<br>"""<br>Предупреждение о проблеме с контролируемой метрикой<br>"""<br>type Alert {<br>"""<br>Статус предупреждения<br>"""<br>status: AlertStatus!<br>"""<br>Метки для предупреждения<br>"""<br>labels: [KeyValueRef!]!<br>"""<br>Описания для предупреждения<br>"""<br>annotations: [KeyValueRef!]!<br>"""<br>Дата и время возникновения предупреждения<br>"""<br>startsAt: DateTimeBase!<br>"""<br>Дата и время решения проблемы, в результате которой возникло предупреждение<br>"""<br>endsAt: DateTimeBase!<br>"""<br>URL сущности, в которой возникла проблема<br>"""<br>generatorURL: String!<br>"""<br>Идентификатор предупреждения<br>"""<br>fingerprint: String!<br>}<br>"""<br>Ключ-значение<br>"""<br>type KeyValueRef {<br>"""<br>Ключ<br>"""<br>key: String!<br>"""<br>Значение<br>"""<br>value: String!<br>} |  |  |






<div align="center">

<a id="p100290"></a>Приложение N 5<br>
к Требованиям к сетям и средствам<br>
связи собственников или иных владельцев

</div>

технологических сетей связи, имеющих
уникальный идентификатор совокупности
средств связи и иных технических средств

<div align="center">

в информационно-телекоммуникационной<br>
сети "Интернет", для проведения<br>
уполномоченными государственными

</div>

органами, осуществляющими
оперативно-разыскную деятельность
или обеспечение безопасности

<div align="center">

Российской Федерации, в случаях,<br>
установленных федеральными законами,<br>
мероприятий в целях реализации

</div>

возложенных на них задач,
утвержденным приказом
Минцифры России
от 16 декабря 2025 г. N 1174

<a id="p100291"></a>ПЕРЕЧЕНЬ ВХОДНЫХ ОБЪЕКТОВ ДЛЯ ЗАДАНИЯ ПАРАМЕТРОВ ПОИСКА

1. <a id="p100292"></a>В схеме данных для задания параметров поиска должны быть описаны входные объекты (Input Objects) на языке GraphQL для каждого пользовательского типа, имеющего хотя бы одно поле базового типа или связанного с другим пользовательским типом, имеющим хотя бы одно поле базового типа.
2. <a id="p100293"></a>Каждый входной объект для базового типа должен содержать поля "and", "or" и "not", соответствующим логическим функциям "И", "ИЛИ" и "НЕ", а также может содержать поля для функций, приведенных в таблице N 1 настоящего приложения к Требованиям к ПТС. В случае если числовая функция применяется к строкам, то на множестве строк подразумевается лексикографический порядок.

<a id="p100294"></a>Таблица N 1


<table>
<colgroup><col width="6%"><col width="19%"><col width="20%"><col width="55%"></colgroup>
<tr><td><a id="p100295"></a>N п/п</td><td colspan="2"><a id="p100296"></a>Функция</td><td><a id="p100297"></a>Описание</td></tr>
<tr><td><a id="p100298"></a>1.</td><td rowspan="2">Операции сравнения</td><td>lt</td><td>Меньше, чем</td></tr>
<tr><td><a id="p100299"></a>2.</td><td>le</td><td>Меньше либо равно</td></tr>
<tr><td><a id="p100300"></a>3.</td><td></td><td>eq</td><td>Равно</td></tr>
<tr><td><a id="p100301"></a>4.</td><td></td><td>in</td><td>В [списке]</td></tr>
<tr><td><a id="p100302"></a>5.</td><td></td><td>between</td><td>Между значениями min и max</td></tr>
<tr><td><a id="p100303"></a>6.</td><td></td><td>ge</td><td>Больше либо равно</td></tr>
<tr><td><a id="p100304"></a>7.</td><td></td><td>gt</td><td>Больше</td></tr>
<tr><td><a id="p100305"></a>8.</td><td>Регулярные выражения</td><td>regexp</td><td>Регулярное выражение в формате POSIX Basic Regular Expression</td></tr>
<tr><td><a id="p100306"></a>9.</td><td>Поиск по тексту</td><td>allofterms</td><td>Соответствие строкам, содержащим все указанные термины в произвольном порядке, без учета регистра</td></tr>
<tr><td><a id="p100307"></a>10.</td><td></td><td>anyofterms</td><td>Соответствие строкам, содержащим любой из указанных терминов в произвольном порядке, без учета регистра</td></tr>
<tr><td><a id="p100308"></a>11.</td><td></td><td>alloftext</td><td>Полнотекстовый поиск по всему полю</td></tr>
<tr><td><a id="p100309"></a>12.</td><td></td><td>anyoftext</td><td>Полнотекстовый поиск по любой части поля</td></tr>
<tr><td><a id="p100310"></a>13.</td><td>Геопоиск</td><td>near</td><td>Соответствие объектам, предикат которых находится не более, чем на расстоянии "distance" метров от точки "point"</td></tr>
<tr><td><a id="p100311"></a>14.</td><td></td><td>within</td><td>Соответствие объектам, предикат которых находится в пределах полигона, заданного в качестве аргумента</td></tr>
<tr><td><a id="p100312"></a>15.</td><td></td><td>contains</td><td>Соответствует объектам, предикат которых содержит указанные точку или полигон</td></tr>
<tr><td><a id="p100313"></a>16.</td><td></td><td>intersects</td><td>Соответствует объектам, предикат которых имеет непустое пересечение с указанным полигоном или мультиполигоном</td></tr>
<tr><td><a id="p100314"></a>17.</td><td>Геопоиск (для геотрека)</td><td>nearTime</td><td>Соответствие объектам, предикат которых находится не более, чем на расстоянии "distance" от точки "point", при этом время, в которое предикат находился в данной области, ограничено фильтром по времени</td></tr>
<tr><td><a id="p100315"></a>18.</td><td></td><td>withinTime</td><td>Соответствие объектам, предикат которых находится в пределах полигона, заданного в качестве аргумента, при этом время, в которое предикат находился в данной области, ограничено фильтром по времени</td></tr>
<tr><td><a id="p100316"></a>19.</td><td></td><td>intersectsTime</td><td>Соответствует объектам, предикат которых имеет непустое пересечение с заданным полигоном или мультиполигоном, при этом время, в которое предикат находился в данной области, ограничено фильтром по времени</td></tr>
</table>


3. <a id="p100317"></a>Для описания входных объектов, соответствующих пользовательским типам, должны использоваться входные объекты для базовых типов, приведенные в таблице N 2 настоящего приложения к Требованиям к ПТС.

<a id="p100318"></a>Таблица N 2.


| <a id="p100319"></a>N п/п | <a id="p100320"></a>Базовый тип и (или) скалярный тип | <a id="p100321"></a>Входные объекты для задания параметров поиска |
| --- | --- | --- |
| <a id="p100322"></a>1. | type ImsiBase | """<br>Входной объект для базового типа идентификатора мобильного абонента<br>"""<br>input ImsiBaseFilter {<br>"""<br>Фильтр для идентификатора мобильного абонента<br>"""<br>imsi: StringFilter<br>and: [ImsiBaseFilter]<br>or: [ImsiBaseFilter]<br>not: ImsiBaseFilter<br>} |
| <a id="p100323"></a>2. | type ImeiBase | """<br>Входной объект для базового типа идентификатора мобильной станции<br>"""<br>input ImeiBaseFilter {<br>"""<br>Фильтр для идентификатора мобильной станции<br>"""<br>imei: StringFilter<br>and: [ImeiBaseFilter]<br>or: [ImeiBaseFilter]<br>not: ImeiBaseFilter<br>} |
| <a id="p100324"></a>3. | type MsisdnBase | """<br>Входной объект для базового типа номера абонента сети сотовой связи<br>"""<br>input MsisdnBaseFilter {<br>"""<br>Фильтр для номера абонента сети сотовой связи<br>"""<br>msisdn: StringFilter<br>and: [MsisdnBaseFilter]<br>or: [MsisdnBaseFilter]<br>not: MsisdnBaseFilter<br>} |
| <a id="p100325"></a>4. | type MccBase | """<br>Входной объект для базового типа кода страны, в которой находится оператор связи<br>"""<br>input MccBaseFilter {<br>"""<br>Фильтр для кода страны, в которой находится оператор связи<br>"""<br>mcc: IntFilter<br>and: [MccBaseFilter]<br>or: [MccBaseFilter]<br>not: MccBaseFilter<br>} |
| <a id="p100326"></a>5. | type MncBase | """<br>Входной объект для базового типа кода оператора связи<br>"""<br>input MncBaseFilter {<br>"""<br>Фильтр для кода оператора связи<br>"""<br>mnc: IntFilter<br>and: [MncBaseFilter]<br>or: [MncBaseFilter]<br>not: MncBaseFilter<br>} |
| <a id="p100327"></a>6. | type LacBase | """<br>Входной объект для базового типа кода географической зоны, обслуживаемой одним контроллером базовых станций<br>"""<br>input LacBaseFilter {<br>"""<br>Фильтр для кода географической зоны, обслуживаемой одним контроллером базовых станций<br>"""<br>lac: IntFilter<br>and: [LacBaseFilter]<br>or: [LacBaseFilter]<br>not: LacBaseFilter<br>} |
| <a id="p100328"></a>7. | type CellBase | """<br>Входной объект для базового типа идентификатора сектора базовой станции<br>"""<br>input CellBaseFilter {<br>"""<br>Фильтр для идентификатора сектора базовой станции<br>"""<br>cell: IntFilter<br>and: [CellBaseFilter]<br>or: [CellBaseFilter]<br>not: CellBaseFilter<br>} |
| <a id="p100329"></a>8. | type EmailBase | """<br>Входной объект для базового типа адреса электронной почты<br>"""<br>input EmailBaseFilter {<br>"""<br>Фильтр для адреса электронной почты<br>"""<br>email: StringFilter<br>and: [EmailBaseFilter]<br>or: [EmailBaseFilter]<br>not: EmailBaseFilter<br>} |
| <a id="p100330"></a>9. | type AddressBase | """<br>Входной объект для базового типа структурированных адресных данных<br>"""<br>input AddressBaseFilter {<br>"""<br>Фильтр для неструктурированного адреса<br>"""<br>address: StringFilter<br>"""<br>Фильтр для почтового индекса, zip-кода<br>"""<br>zip: StringFilter<br>"""<br>Фильтр для страны<br>"""<br>country: StringFilter<br>"""<br>Фильтр для области<br>"""<br>region: StringFilter<br>"""<br>Фильтр для района, муниципального округа<br>"""<br>zone: StringFilter<br>"""<br>Фильтр для города, поселка, деревни<br>"""<br>city: StringFilter<br>"""<br>Фильтр для улицы<br>"""<br>streetStringFilter<br>"""<br>Фильтр для дома, строения<br>"""<br>building: StringFilter<br>"""<br>Фильтр для корпуса<br>"""<br>buildsect: StringFilter<br>"""<br>Фильтр для квартиры, офиса<br>"""<br>apartment: StringFilter<br>and: [AddressBaseFilter]<br>or: [AddressBaseFilter]<br>not: AddressBaseFilter<br>} |
| <a id="p100331"></a>10. | type PassportBase | """<br>Входной объект для базового типа паспортных данных<br>"""<br>input PassportBaseFilter {<br>"""<br>Фильтр для номера паспорта<br>"""<br>number: StringFilter<br>"""<br>Фильтр для серии паспорта<br>"""<br>series: StringFilter<br>and: [PassportBaseFilter]<br>or: [PassportBaseFilter]<br>not: PassportBaseFilter<br>} |
| <a id="p100332"></a>11. | type PersonBase_ | """<br>Входной объект для базового типа фамилии, имени, отчества (при наличии)<br>"""<br>input PersonBaseFilter {<br>"""<br>Фильтр для неструктурированной информации о фамилии, имени, отчестве (при наличии)<br>"""<br>fullName: StringFilter<br>"""<br>Фильтр для имени<br>"""<br>name: StringFilter<br>"""<br>Фильтр для отчества (при наличии)<br>"""<br>middleName: StringFilter<br>"""<br>Фильтр для фамилии<br>"""<br>lastName: StringFilter<br>and: [PersonBaseFilter]<br>or: [PersonBaseFilter]<br>not: PersonBaseFilter<br>} |
| <a id="p100333"></a>12. | type DrivingLicenseNumberBase | """<br>Входной объект для базового типа номера водительского удостоверения<br>"""<br>input DrivingLicenseNumberBaseFilter {<br>"""<br>Фильтр для номера водительского удостоверения<br>"""<br>drivingLicenseNumber: StringFilter<br>and: [DrivingLicenseNumberBaseFilter]<br>or: [DrivingLicenseNumberBaseFilter]<br>not: DrivingLicenseNumberBaseFilter<br>} |
| <a id="p100334"></a>13. | type VehicleGosNumberBase | """<br>Входной объект для базового типа государственного регистрационного номера транспортного средства<br>"""<br>input VehicleGosNumberBaseFilter {<br>"""<br>Фильтр для государственного регистрационного номера транспортного средства<br>"""<br>vehicleGosNumber: StringFilter<br>and: [VehicleGosNumberBaseFilter]<br>or: [VehicleGosNumberBaseFilter]<br>not: VehicleGosNumberBaseFilter<br>} |
| <a id="p100335"></a>14. | type InnBase | """<br>Входной объект для базового типа идентификационного номера налогоплательщика<br>"""<br>input InnBaseFilter {<br>"""<br>Фильтр для значения идентификационного номера налогоплательщика<br>"""<br>inn: StringFilter<br>and: [InnBaseFilter]<br>or: [InnBaseFilter]<br>not: InnBaseFilter<br>} |
| <a id="p100336"></a>15. | type DateTimeBase | """<br>Входной объект для базового типа информации о дате и времени<br>"""<br>input DateTimeBaseFilter {<br>"""<br>Фильтр для информации о дате и времени в расширенном формате местного времени с разницей со Всемирным координированным временем (UTC) YYYY-MM-DDThh:mm:ss $\pm$ hh:mm<br>"""<br>utc: DateTimeStringFilter<br>and: [DateTimeBaseFilter]<br>or: [DateTimeBaseFilter]<br>not: DateTimeBaseFilter<br>}<br>"""<br>Входной объект: используемые операции сравнения для информации о дате и времени<br>"""<br>input DateTimeStringFilter {<br>eq: String<br>in: [String]<br>le: String<br>lt: String<br>ge: String<br>gt: String<br>between: DateTimeRange<br>}<br>"""<br>Входной объект: информация о временном промежутке для использования в операциях сравнения<br>"""<br>input DateTimeRange {<br>min: String!<br>max: String!<br>} |
| <a id="p100337"></a>16. | type PointBase | """<br>Входной объект для базового типа пространственной информации: точки<br>"""<br>input PointBaseFilter {<br>"""<br>Фильтр для точек в пространстве: нахождение около аргумента фильтра в заданных пределах<br>"""<br>near: NearFilter<br>"""<br>Фильтр для точек в пространстве: нахождение внутри заданного полигона<br>"""<br>within: WithinFilter<br>and: [PointBaseFilter]<br>or: [PointBaseFilter]<br>not: PointBaseFilter<br>}<br>"""<br>Входной объект: пространственный фильтр нахождения около заданной точки в указанных пределах<br>"""<br>input NearFilter {<br>"""<br>Дистанция в метрах до используемой точки в пространстве в фильтре<br>"""<br>distance: Float!<br>"""<br>Точка в пространстве, по дистанции до которой происходит фильтрация<br>"""<br>point: PointRef!<br>}<br>"""<br>Входной объект: пространственный фильтр нахождения внутри заданного полигона<br>"""<br>input WithinFilter {<br>"""<br>Полигон в пространстве, по нахождению в котором происходит фильтрация<br>"""<br>polygon: PolygonRef!<br>}<br>"""<br>Входной объект: точка в пространстве для использования в фильтрах<br>"""<br>input PointRef {<br>"""<br>Долгота в градусах<br>"""<br>longitude: Float!<br>"""<br>Широта в градусах<br>"""<br>latitude: Float!<br>} |
| <a id="p100338"></a>17. | type LineBase | """<br>Входной объект для базового типа пространственной информации: последовательности точек (линии)<br>"""<br>input LineBaseFilter {<br>"""<br>Фильтр для последовательности точек в пространстве: нахождение около аргумента фильтра в заданных пределах<br>"""<br>near: NearFilter<br>"""<br>Фильтр для последовательности точек в пространстве: нахождение внутри заданного полигона<br>"""<br>within: WithinFilter<br>"""<br>Фильтр для последовательности точек в пространстве: пересечение с заданным полигоном<br>"""<br>intersects: IntersectsFilter<br>and: [LineBaseFilter]<br>or: [LineBaseFilter]<br>not: LineBaseFilter<br>}<br>"""<br>Входной объект: пространственный фильтр пересечения с заданным полигоном<br>"""<br>input IntersectsFilter {<br>"""<br>Полигон в пространстве, по пересечению с которым происходит фильтрация<br>"""<br>polygon: PolygonRef<br>}<br>"""<br>Входной объект: последовательность точек в пространстве для использования в фильтрах<br>"""<br>input LineRef {<br>points: [PointRef!]!<br>} |
| <a id="p100339"></a>18. | type PointTimeBase | """<br>Входной объект для базового типа пространственно-временной информации: точки в пространстве с привязкой к дате и времени<br>"""<br>input PointTimeBaseFilter {<br>"""<br>Фильтр для пространственной информации<br>"""<br>point: PointBaseFilter<br>"""<br>Фильтр для временной информации<br>"""<br>time: DateTimeBaseFilter<br>and: [PointTimeBaseFilter]<br>or: [PointTimeBaseFilter]<br>not: PointTimeBaseFilter<br>}<br>"""<br>Входной объект: точки в пространстве с привязкой к дате и времени для использования в фильтрах<br>"""<br>input PointTimeRef {<br>point: PointRef!<br>time: String!<br>} |
| <a id="p100340"></a>19. | type PolygonBase | """<br>Входной объект для базового типа пространственной информации: полигона<br>"""<br>input PolygonBaseFilter {<br>"""<br>Фильтр для полигона: нахождение около аргумента фильтра в заданных пределах<br>"""<br>near: NearFilter<br>"""<br>Фильтр для полигона: нахождение внутри заданного полигона<br>"""<br>within: WithinFilter<br>"""<br>Фильтр для полигона: содержание заданных точки или полигона<br>"""<br>contains: ContainsFilter<br>"""<br>Фильтр для полигона: пересечение с заданным полигоном<br>"""<br>intersects: IntersectsFilter<br>and: [PolygonBaseFilter]<br>or: [PolygonBaseFilter]<br>not: PolygonBaseFilter<br>}<br>"""<br>Входной объект: пространственный фильтр включения заданной точки или полигона<br>"""<br>input ContainsFilter {<br>"""<br>Точка в пространстве, по включению которой в исходный полигон происходит фильтрация<br>"""<br>point: PointRef<br>"""<br>Полигон в пространстве, по включению которого в исходный полигон происходит фильтрация<br>"""<br>polygon: PolygonRef<br>}<br>"""<br>Входной объект: полигон в пространстве для использования в фильтрах<br>"""<br>input PolygonRef {<br>lines: [LineRef!]!<br>} |
| <a id="p100341"></a>20. | type MultiPolygonBase | """<br>Входной объект для базового типа пространственной информации: мультиполигона<br>"""<br>input MultiPolygonBaseFilter {<br>"""<br>Фильтр для мультиполигона: нахождение около аргумента фильтра в заданных пределах<br>"""<br>near: NearFilter<br>"""<br>Фильтр для мультиполигона: нахождение внутри заданного полигона<br>"""<br>within: WithinFilter<br>"""<br>Фильтр для мультиполигона: содержание заданных точек или полигона<br>"""<br>contains: ContainsFilter<br>"""<br>Фильтр для мультиполигона: пересечение с заданным полигоном<br>"""<br>intersects: IntersectsFilter<br>and: [MultiPolygonBaseFilter]<br>or: [MultiPolygonBaseFilter]<br>not: MultiPolygonBaseFilter<br>} |
| <a id="p100342"></a>21. | type GeoTrackBase | """<br>Входной объект для базового типа пространственно-временной информации: трек<br>"""<br>input GeoTrackBaseFilter {<br>"""<br>Фильтр для временной информации: прохождение маршрута в указанное время<br>"""<br>time: DateTimeBaseFilter<br>"""<br>Фильтр для пространственной информации: нахождение около аргумента фильтра в заданных пределах<br>"""<br>near: NearFilter!<br>"""<br>Фильтр для пространственно-временной информации: нахождение около аргумента фильтра в заданных пределах в указанное время<br>"""<br>nearTime: NearTimeFilter!<br>"""<br>Фильтр для пространственной информации: нахождение внутри заданного полигона<br>"""<br>within: WithinFilter!<br>"""<br>Фильтр для пространственно-временной информации: нахождение внутри заданного полигона в указанное время<br>"""<br>withinTime: WithinTimeFilter!<br>"""<br>Фильтр для пространственной информации: пересечение с заданным полигоном<br>"""<br>intersects: IntersectsFilter!<br>"""<br>Фильтр для пространственно-временной информации: пересечение с заданным полигоном в указанное время<br>"""<br>intersectsTime: IntersectsTimeFilter!<br>"""<br>Фильтр для пространственно-временной информации: пересечение с заданным треком в указанных промежутках времени и расстояния<br>"""<br>intersectsTrack: IntersectsTrackFilter!<br>and: [GeoTrackBaseFilter]<br>or: [GeoTrackBaseFilter]<br>not: GeoTrackBaseFilter<br>}<br>"""<br>Входной объект: пространственно-временной фильтр нахождения около заданной точки в указанных пределах в заданное время<br>"""<br>input NearTimeFilter {<br>distance: Float!<br>point: PointRef!<br>time: DateTimeBaseFilter!<br>}<br>""" |
|  |  | Входной объект: пространственно-временной фильтр нахождения внутри заданного полигона в указанное время<br>"""<br>input WithinTimeFilter {<br>polygon: PolygonRef!<br>time: DateTimeBaseFilter!<br>}<br>"""<br>Входной объект: пространственно-временной фильтр пересечения с заданным полигоном в указанное время<br>"""<br>input IntersectsTimeFilter {<br>polygon: PolygonRef<br>time: DateTimeBaseFilter!<br>}<br>"""<br>Входной объект: пространственно-временной фильтр пересечения с заданным треком в указанных интервалах расстояния и времени<br>"""<br>input IntersectsTrackFilter {<br>geotrack: GeoTrackRef!<br>deltaTime: DeltaTimeRef!<br>distance: Float!<br>}<br>"""<br>Входной объект: период времени в секундах<br>"""<br>input DeltaTimeRef {<br>second: Int!<br>}<br>"""<br>Входной объект: трек для использования в фильтрах<br>"""<br>input GeoTrackRef {<br>pointsInTime: [PointTimeRef]!<br>} |
| <a id="p100343"></a>22. | type BankAccountInfoBase | """<br>Входной объект для базового типа банковских данных<br>"""<br>input BankAccountInfoBaseFilter {<br>"""<br>Фильтр для имени банка<br>"""<br>bankName: StringFilter<br>"""<br>Фильтр для номера счета<br>"""<br>account: StringFilter<br>"""<br>Фильтр для номера корреспондентского счета<br>"""<br>corrAccount: StringFilter<br>"""<br>Фильтр для номера карты<br>"""<br>cardNumber: StringFilter<br>"""<br>Фильтр для банковского идентификационного кода<br>"""<br>rcbic: StringFilter<br>"""<br>Фильтр для КПП<br>"""<br>kpp: StringFilter<br>and: [BankAccountInfoBaseFilter]<br>or: [BankAccountInfoBaseFilter]<br>not: BankAccountinfoBaseFilter<br>} |
| <a id="p100344"></a>23. | type BankTransferInfoBase | """<br>Входной объект для базового типа банковских переводов<br>"""<br>input BankTransferInfoBaseFilter {<br>"""<br>Фильтр для отправителя<br>"""<br>from: BankAccountInfoBaseFilter<br>"""<br>Фильтр для получателя<br>"""<br>to: BankAccountInfoBaseFilter<br>"""<br>Фильтр для суммы перевода<br>"""<br>amount: FloatFilter<br>"""<br>Фильтр для даты и времени перевода<br>"""<br>date: DateTimeBaseFilter<br>and: [BankTransferInfoBaseFilter]<br>or: [BankTransferInfoBaseFilter]<br>not: BankTransferInfoBaseFilter<br>} |
| <a id="p100345"></a>24. | type OrganizationInfoBase | """<br>Входной объект для базового типа сведений о юридических лицах и индивидуальных предпринимателях<br>"""<br>input OrganizationInfoBaseFilter {<br>"""<br>Фильтр для полного наименования организации<br>"""<br>nameFull: StringFilter<br>"""<br>Фильтр для сокращенного наименования организации (при наличии)<br>"""<br>nameSmall: StringFilter<br>"""<br>Фильтр для ОГРН организации<br>"""<br>grn: GRNBaseFilter<br>"""<br>Фильтр для ИНН организации<br>"""<br>inn: InnBaseFilter<br>"""<br>Фильтр для ИНН иностранной организации<br>"""<br>vat: StringFilter<br>"""<br>Фильтр для банковских данных организации<br>"""<br>bankInfo: BankAccountInfoBaseFilter<br>"""<br>Фильтр для номера телефона организации<br>"""<br>msisdn: MsisdnBaseFilter<br>"""<br>Фильтр для сайта организации (при наличии)<br>"""<br>webSite: URLBaseFilter<br>"""<br>Фильтр для электронной почты организации (при наличии)<br>"""<br>email: EmailBaseFilter<br>"""<br>Фильтр для даты регистрации организации<br>"""<br>dataRegistration: DateTimeBaseFilter<br>"""<br>Фильтр для неструктурированного адреса организации<br>"""<br>address: AddressBaseFilter<br>"""<br>Фильтр для представителя организации<br>"""<br>representative: OrganizationRepresentativeBaseFilter<br>"""<br>Фильтр для [ОКВЭД](https://bukva.ai/docs/klassifikator-ok-029-2014-kdes-red-2) организации<br>"""<br>okved: StringFilter<br>"""<br>Фильтр для ЕГРЮЛ<br>"""<br>egrul: StringFilter<br>"""<br>Фильтр для ЕГРИП<br>"""<br>egrip: StringFilter<br>and: [OrganizationInfoBaseFilter]<br>or: [OrganizationInfoBaseFilter]<br>not: OrganizationInfoBaseFilter<br>}<br>"""<br>Входной объект для базового типа ОГРН или ОГРНИП<br>"""<br>input GRNBaseFilter {<br>"""<br>Фильтр для ОГРН или ОГРНИП<br>"""<br>grn: StringFilter<br>and: [GRNBaseFilter]<br>or: [GRNBaseFilter]<br>not: GRNBaseFilter<br>} |
| <a id="p100346"></a>25. | type OrganizationRepresentativeBase | """<br>Входной объект для базового типа сведений об учредителях (участниках) юридического лица, лицах, имеющих право без доверенности действовать от имени юридического лица<br>"""<br>input OrganizationRepresentativeBaseFilter {<br>"""<br>Фильтр для должности<br>"""<br>position: StringFilter<br>"""<br>Фильтр для ИНН лица<br>"""<br>inn: InnBaseFilter<br>"""<br>Фильтр для фамилии, имени, отчества (при наличии)<br>"""<br>name: PersonBaseFilter<br>and: [OrganizationRepresentativeBaseFilter]<br>or: [OrganizationRepresentativeBaseFilter]<br>not: OrganizationRepresentativeBaseFilter<br>} |
| <a id="p100347"></a>26. | type IpAddressBase | """<br>Входной объект для базового типа IP-адреса<br>"""<br>input IpAddressBaseFilter {<br>"""<br>Фильтр подсетей, которые входят в искомую подсеть<br>Для указания подсети используется CIDR-нотация (10.10.10.0/24)<br>При отсутствии явного указания маски подсети принимается значение 32 (для IPv4) и 128 (для IPv6)<br>"""<br>inSubnet: String<br>}<br>"""<br>Входной объект для базового типа IP-адреса (поиск подсетей)<br>"""<br>input IpSubnetBaseFilter {<br>"""<br>Фильтр подсетей, которые входят в искомую подсеть<br>Для указания подсети используется CIDR-нотация (10.10.10.0/24)<br>При отсутствии явного указания маски подсети принимается значение 32 (для IPv4) и 128 (для IPv6)<br>"""<br>inSubnet: String<br>"""<br>Фильтр подсетей, в которые входит искомая подсеть<br>Для указания подсети используется CIDR-нотация<br>При отсутствии явного указания маски подсети принимается значение 32 (для IPv4) и 128 (для IPv6)<br>"""<br>outSubnet: String<br>} |
| <a id="p100348"></a>27. | type NetworkPeerBase | """<br>Входной объект для базового типа информации об участнике сетевого соединения<br>"""<br>input NetworkPeerBaseFilter {<br>"""<br>Фильтр для IP-адреса<br>"""<br>ip: IpAddressBaseFilter<br>"""<br>Фильтр для порта<br>"""<br>port: IntFilter<br>"""<br>Фильтр для номера протокола<br>"""<br>protocolNumber: IntFilter<br>and: [NetworkPeerBaseFilter]<br>or: [NetworkPeerBaseFilter]<br>not: NetworkPeerBaseFilter<br>} |
| <a id="p100349"></a>28. | type URLBase | """<br>Входной объект для базового типа URL-адреса<br>"""<br>input URLBaseFilter {<br>"""<br>Фильтр для URL-адреса<br>"""<br>url: StringFilter<br>and: [URLBaseFilter]<br>or: [URLBaseFilter]<br>not: URLBaseFilter<br>} |
| <a id="p100350"></a>29. | type DomainNameBase | """<br>Входной объект для базового типа доменного имени<br>"""<br>input DomainNameBaseFilter {<br>"""<br>Фильтр для доменного имени<br>"""<br>domainName: StringFilter<br>and: [DomainNameBaseFilter]<br>or: [DomainNameBaseFilter]<br>not: DomainNameBaseFilter<br>} |
| <a id="p100351"></a>30. | type LoginBase | """<br>Входной объект для базового типа имени и (или) идентификатора пользователя<br>"""<br>input LoginBaseFilter {<br>"""<br>Фильтр для имени и (или) идентификатора пользователя<br>"""<br>login: StringFilter<br>and: [LoginBaseFilter]<br>or: [LoginBaseFilter]<br>not: LoginBaseFilter<br>} |
| <a id="p100352"></a>31. | scalar Int | """<br>Входной объект: используемые функции для фильтрации значений типа Int<br>"""<br>input IntFilter {<br>"""<br>Равно<br>"""<br>eq: Int<br>"""<br>В [списке]<br>"""<br>in: [Int]<br>"""<br>Меньше либо равно<br>"""<br>le: Int<br>"""<br>Меньше, чем<br>"""<br>lt: Int<br>"""<br>Больше либо равно<br>"""<br>ge: Int<br>"""<br>Больше, чем<br>"""<br>gt: Int<br>"""<br>В промежутке<br>"""<br>between: IntRange<br>}<br>"""<br>Входной объект: промежуток типа Int для использования в фильтрах<br>"""<br>input IntRange {<br>min: Int!<br>max: Int!<br>}<br>"""<br>Входной объект: используемые функции для фильтрации значений типа Int по полному совпадению<br>"""<br>input IntExactFilter {<br>"""<br>Равно<br>"""<br>eq: Int<br>} |
| <a id="p100353"></a>32. | scalar Float | """<br>Входной объект: используемые функции для фильтрации значений типа "Float"<br>"""<br>input FloatFilter {<br>"""<br>Равно<br>"""<br>eq: Float<br>"""<br>В [списке]<br>"""<br>in: [Float]<br>"""<br>Меньше либо равно<br>"""<br>le: Float<br>"""<br>Меньше, чем<br>"""<br>lt: Float<br>"""<br>Больше либо равно<br>"""<br>ge: Float<br>"""<br>Больше, чем<br>"""<br>gt: Float<br>"""<br>В промежутке<br>"""<br>between: FloatRange<br>}<br>"""<br>Входной объект: промежуток типа Float для использования в фильтрах<br>"""<br>input FloatRange {<br>min: Float!<br>max: Float!<br>} |
| <a id="p100354"></a>33. | scalar String | """<br>Входной объект: используемые функции для фильтрации значений типа String<br>"""<br>input StringFilter {<br>"""<br>Равно<br>"""<br>eq: String<br>"""<br>В [списке]<br>"""<br>in: [String]<br>"""<br>Регулярное выражение в формате POSIX Basic Regular Expression<br>"""<br>regexp: String<br>}<br>"""<br>Входной объект: используемые функции для фильтрации значений типа String по полному совпадению<br>"""<br>input StringExactFilter {<br>"""<br>Равно<br>"""<br>eq: String<br>} |


4. <a id="p100355"></a>Посредством использования ПТС должна быть обеспечена функциональная возможность поиска информации об IP-подсетях в рамках атрибута с типом "IpAddressBase" с использованием входного типа "IpSubnetBaseFilter". В случаях соответствия маски подсети числам 32 или 128 допустимо использование входного типа "IpAddressBaseFilter". В атрибутах входных типов "IpAddressBaseFilter" и "IpSubnetBaseFilter" IP-подсети должны указываться с использованием CIDR-нотации.





<a id="p100356"></a>Приложение N 6
к Требованиям к сетям и средствам
связи собственников или иных владельцев
технологических сетей связи, имеющих
уникальный идентификатор совокупности
средств связи и иных технических средств
в информационно-телекоммуникационной
сети "Интернет", для проведения
уполномоченными государственными
органами, осуществляющими
оперативно-разыскную деятельность
или обеспечение безопасности
Российской Федерации, в случаях,
установленных федеральными законами,
мероприятий в целях реализации
возложенных на них задач,
утвержденным приказом
Минцифры России
от 16 декабря 2025 г. N 1174

<a id="p100357"></a>ТРЕБОВАНИЯ,
ПРЕДЪЯВЛЯЕМЫЕ К ФОРМАТУ ПЕРЕДАЧИ ДАННЫХ НА ЯЗЫКЕ GRAPHQL
ПО ПРОТОКОЛУ WEBSOCKET

1. <a id="p100358"></a>ПТС и ПУ для передачи данных на языке GraphQL по протоколу WebSocket должны использовать протокол graphql-transport-ws.
2. <a id="p100359"></a>Посредством ПТС должно обеспечиваться взаимодействие с ПУ по протоколу WebSocket посредством сообщений. Для кодирования сообщений применяется формат JSON.
3. <a id="p100360"></a>Все сообщения должны содержать поле "type", определяющее тип сообщения. Сообщение в зависимости от типа также может содержать дополнительные поля:
<a id="p100361"></a>"id" - идентификатор запроса, использующийся для последующего определения ответов ПТС и привязки их к запросам ПУ;
<a id="p100362"></a>"payload" - дополнительные данные.
4. <a id="p100363"></a>В любой момент времени посредством использования ПТС должна обеспечиваться возможность выполнения нескольких запросов ПУ.
5. <a id="p100364"></a>В ПТС должен быть обеспечен автоматический разрыв соединения по протоколу WebSocket при возникновении ошибки (сбое в работе).
6. <a id="p100365"></a>В ПТС должна поддерживаться возможность корректного завершения соединения по протоколу WebSocket с кодом 1000 и причиной закрытия "Normal Closure".
7. <a id="p100366"></a>В ПТС должна поддерживаться возможность открытия сессии в соответствии с [подпунктом 1 пункта 8](#p100368) настоящего приложения к Требованиям к ПТС.
8. <a id="p100367"></a>Посредством использования ПТС должно быть обеспечено взаимодействие с ПУ по протоколу WebSocket с использованием следующих сообщений:
1) <a id="p100368"></a>сообщение "ConnectionInit" - направляется ПУ в адрес ПТС для открытия сессии. ПУ может передавать дополнительную информацию о сессии в поле "payload". ПТС должны получить данное сообщение в течение заданного периода времени (определяется во время внедрения ПТС и согласовывается с уполномоченными государственными органами, осуществляющими оперативно-разыскную деятельность или обеспечение безопасности Российской Федерации). Если ПУ не отправило данное сообщение в течение заданного периода времени, то ПТС должны закрыть соединение по протоколу WebSocket с кодом 4408 и причиной закрытия "Connection initialization timeout". Если ПТС получили более одного сообщения "ConnectionInit", то они должны закрыть соединение по протоколу WebSocket с кодом 4429 и причиной закрытия "Too many initialization requests".
<a id="p100369"></a>Программный код сообщения "ConnectionInit" (поле "payload" опциональное) должен иметь следующую структуру:

<a id="p100370"></a>    {
     "type": "connection_init",
     "payload": "string"
    };

2) <a id="p100371"></a>сообщение "ConnectionAck" - подтверждает создание сессии и направляется ПТС в адрес ПУ в ответ на сообщение "ConnectionInit". ПТС могут передавать дополнительную информацию о сессии в поле "payload". ПУ после получения данного сообщения может отправлять запросы на языке GraphQL с помощью сообщений "Subscribe" в соответствии с [подпунктом 3 пункта 8](#p100374) настоящего приложения к Требованиям к ПТС.
<a id="p100372"></a>Программный код сообщения "ConnectionAck" (поле "payload" опциональное) должен иметь следующую структуру:

<div align="right">

<a id="p100373"></a>    {<br>
     "type": "connection_ack",<br>
     "payload": "string"<br>
    };

3) <a id="p100374"></a>сообщение "Subscribe" - направляется ПУ в адрес ПТС с запросом на языке GraphQL в поле "query" поля "payload". Поле "id" должно содержать уникальный идентификатор запроса, формируемый ПУ. Если запрос с таким идентификатором находится на выполнении, то ПТС должны обеспечить завершение соединения по протоколу WebSocket с кодом 4409 и причиной закрытия "Subscriber for <unique-operation-id> already exists". Разрешается повторное использование идентификатора после завершения выполнения запроса на стороне ПТС. В случае, когда ПТС получил данное сообщение до отправления сообщения "ConnectionAck", ПТС должны обеспечить завершение соединения по протоколу WebSocket с кодом 4401 и причиной закрытия "Unauthorized".<br>
<a id="p100375"></a>Программный код сообщения "Subscribe" (поля "operationName", "variables", "extensions" опциональные) должен иметь следующую структуру:

<a id="p100376"></a>    {<br>
     "id": "<unique-operation-id>",<br>
     "type": "subscribe",<br>
     "payload": {<br>
      "operationName": "string",<br>
      "query": "string",<br>
      "variables": "string",<br>
      "extensions": "string"<br>
     }<br>
    };

4) <a id="p100377"></a>сообщение "Next" - направляется ПТС в адрес ПУ с результатами выполнения запроса, ранее направленного ПУ в сообщении "Subscribe". Поле "id" должно содержать идентификатор запроса, ранее сформированный ПУ. Поле "payload" должно содержать результаты выполнения запроса в формате, аналогичном для конечной точки "/query" согласно спецификации языка GraphQL.<br>
<a id="p100378"></a>Программный код сообщения "Next" должен иметь следующую структуру:

</div>


<a id="p100379"></a>    {
     "id": "<unique-operation-id>",

<div align="center">

     **"type": "next",**<br>
     **"payload": "ExecutionResult"**<br>
    **};**

</div>


5) <a id="p100380"></a>сообщение "Error" - направляется ПТС в адрес ПУ с информацией об ошибке в ходе выполнения запроса, ранее направленного ПУ в сообщении "Subscribe". Поле "id" должно содержать идентификатор запроса, ранее сформированный ПУ. Поле "payload" должно содержать информацию об ошибке в формате согласно спецификации языка GraphQL. После возникновения ошибки ПТС должен прекращать выполнение запроса и не направлять в сторону ПУ больше никаких сообщений.
<a id="p100381"></a>Программный код сообщения "Error" должен иметь следующую структуру:

<div align="center">

<a id="p100382"></a>    **{**<br>
     **"id": "<unique-operation-id>",**<br>
     **"type": "error",**<br>
     **"payload": "GraphQLError"**<br>
    **};**

<a id="p100383"></a>**6) сообщение "Complete" - может направляться в обоих направлениях. Поле "id" должно содержать идентификатор запроса, ранее сформированный ПУ. При завершении выполнения запроса с указанным идентификатором ПТС должны отправить в адрес ПУ сообщение "Complete". Если ранее ПТС отправили сообщение "Error", то данное сообщение не отправляется. Отправка данного сообщения от ПУ в адрес ПТС должна прервать выполнение запроса инициированного на стороне ПУ с указанным идентификатором.**<br>
<a id="p100384"></a>**Программный код сообщения "Complete" должен иметь следующую структуру:**

<a id="p100385"></a>    **{**<br>
     **"id": "<unique-operation-id>",**<br>
     **"type": "complete"**<br>
    **}.**

</div>


9. <a id="p100386"></a>Получение ПУ или ПТС иных сообщений, отличных от указанных в [пункте 8](#p100367) настоящего приложения к Требованиям к ПТС, должно приводить к закрытию соединения по протоколу WebSocket с кодом 4400 и причиной закрытия, содержащей описание ошибки в типе или формате сообщения.





<a id="p100387"></a>Приложение N 7
к Требованиям к сетям и средствам
связи собственников или иных владельцев
технологических сетей связи, имеющих
уникальный идентификатор совокупности
средств связи и иных технических средств
в информационно-телекоммуникационной
сети "Интернет", для проведения
уполномоченными государственными
органами, осуществляющими
оперативно-разыскную деятельность
или обеспечение безопасности
Российской Федерации, в случаях,
установленных федеральными законами,
мероприятий в целях реализации
возложенных на них задач,
утвержденным приказом
Минцифры России
от 16 декабря 2025 г. N 1174

<a id="p100388"></a>ТРЕБОВАНИЯ,
ПРЕДЪЯВЛЯЕМЫЕ К ЗАПРОСАМ МОНИТОРИНГА И ФОРМАТУ ИХ
ПЕРЕДАЧИ ПО ИНТЕРФЕЙСУ ВЗАИМОДЕЙСТВИЯ МЕЖДУ ПУНКТАМИ
УПРАВЛЕНИЯ УПОЛНОМОЧЕННЫХ ГОСУДАРСТВЕННЫХ ОРГАНОВ,
ОСУЩЕСТВЛЯЮЩИХ ОПЕРАТИВНО-РАЗЫСКНУЮ ДЕЯТЕЛЬНОСТЬ
ИЛИ ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ,
И ПРОГРАММНЫМИ И ТЕХНИЧЕСКИМИ СРЕДСТВАМИ, ИСПОЛЬЗУЕМЫМИ
СОБСТВЕННИКАМИ ИЛИ ИНЫМИ ВЛАДЕЛЬЦАМИ ТЕХНОЛОГИЧЕСКИХ СЕТЕЙ
СВЯЗИ, ИМЕЮЩИМИ УНИКАЛЬНЫЙ ИДЕНТИФИКАТОР СОВОКУПНОСТИ
СРЕДСТВ СВЯЗИ И ИНЫХ ТЕХНИЧЕСКИХ СРЕДСТВ
В ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННОЙ
СЕТИ "ИНТЕРНЕТ"

1. <a id="p100389"></a>Посредством использования ПТС должна поддерживаться возможность отправления на ПУ следующей информации о структуре и функционировании ПТС по запросу ПУ:
1) <a id="p100390"></a>о структуре и составе ПТС, составе и состоянии интерфейса взаимодействия ПТС с ПУ;
2) <a id="p100391"></a>об установленном в ПТС общесистемном программном обеспечении, перечне и состоянии программных модулей в составе ПО ПТС;
3) <a id="p100392"></a>о точках подключения ПТС к ИС и интерфейсах ввода информации в ПТС.
2. <a id="p100393"></a>ПТС по запросу ПУ должны предоставлять следующую информацию в части структуры и состава ПТС, состава и состояния интерфейса взаимодействия ПТС с ПУ:
1) <a id="p100394"></a>перечень коммутационного и серверного оборудования, средств хранения данных с его идентификацией;
2) <a id="p100395"></a>идентификацию интерфейсов подключения оборудования ПТС друг к другу;
3) <a id="p100396"></a>параметры для серверного оборудования:
<a id="p100397"></a>общий и занятый объем оперативной памяти;
<a id="p100398"></a>количество сетевых интерфейсов с их идентификацией и нагрузкой;
<a id="p100399"></a>общее количество и загрузку процессоров;
<a id="p100400"></a>общий объем дискового пространства, объем свободного пространства;
4) <a id="p100401"></a>параметры технических средств хранения данных:
<a id="p100402"></a>перечень модулей, составляющих средства хранения данных с их идентификацией;
<a id="p100403"></a>для каждого входящего в состав средств хранения данных модуля: общий объем дискового пространства, объем свободного дискового пространства и состояние модуля ("штатное функционирование", "сбой", "не функционирует"), текстовую расшифровку сбоя.
3. <a id="p100404"></a>Посредством использования ПТС по запросу ПУ должна быть предоставлена информация в части точек подключения ПТС к ИС, интерфейсов ввода информации в ПТС, содержащая:
1) <a id="p100405"></a>перечень точек подключения к технологической сети связи и точек ввода информации в ПТС с их идентификацией;
2) <a id="p100406"></a>для каждой точки подключения посредством ПТС предоставляется информация о (об):
<a id="p100407"></a>состоянии точки подключения (ввода информации) ("штатное функционирование", "сбой", "не функционирует"), текстовую расшифровку сбоя;
<a id="p100408"></a>объеме информации, поступающей в секунду;
<a id="p100409"></a>периоде времени, в течение которого на точку подключения и (или) ввода информации в ПТС не поступала информация.
4. <a id="p100410"></a>ПТС по запросу ПУ должны предоставлять следующую информацию в части состава программного обеспечения ПТС и его состояния:
1) <a id="p100411"></a>перечень установленного общесистемного программного обеспечения с его идентификацией;
2) <a id="p100412"></a>информацию для общесистемного программного обеспечения:
<a id="p100413"></a>идентификатор ПТС, на котором установлено программное обеспечение;
<a id="p100414"></a>наименование программного обеспечения;
<a id="p100415"></a>состояние программного обеспечения ("штатное функционирование", "сбой", "не функционирует"), текстовую расшифровку сбоя;
3) <a id="p100416"></a>перечень установленного ПО ПТС с его идентификацией;
4) <a id="p100417"></a>информацию для программного обеспечения ПТС:
<a id="p100418"></a>идентификатор ПТС, на котором установлено программное обеспечение;
<a id="p100419"></a>назначение (определяется разработчиком ПТС);
<a id="p100420"></a>состояние ("штатное функционирование", "сбой", "не функционирует"), текстовую расшифровку сбоя;
<a id="p100421"></a>список контролируемых параметров (определяется разработчиком ПТС).
5. <a id="p100422"></a>Информация о функционировании и состоянии ПТС, указанная в [пунктах 1](#p100389) - [4](#p100410) настоящего приложения к Требованиям к ПТС, должна быть представлена в виде временных рядов.
6. <a id="p100423"></a>Временные ряды должны иметь следующий обязательный набор меток:
<a id="p100424"></a>systemtype - относится ли метрика к оборудованию или программному обеспечению. Данный временной ряд должен принимать одно из значений: "hardware" или "software";
<a id="p100425"></a>moduleid - идентификатор модуля;
<a id="p100426"></a>modulename - наименование модуля;
<a id="p100427"></a>moduletype - тип модуля;
<a id="p100428"></a>blocknumber - номер блока оборудования;
<a id="p100429"></a>groupname - наименование группы метрик;
<a id="p100430"></a>softwareparentmoduleid - идентификатор модуля ПО, в состав которого входит модуль с данной метрикой;
<a id="p100431"></a>hardwareparentmoduleid - идентификатор модуля оборудования, в состав которого входит модуль с данной метрикой.
7. <a id="p100432"></a>Для метрик должны быть заданы единицы измерения и описания их назначения на русском языке.
8. <a id="p100433"></a>Для получения на ПУ значений метрик посредством ПТС обеспечивается возможность отправки на ПУ запросов мониторинга на конечную точку "/metric".
9. <a id="p100434"></a>Для кодирования содержимого запросов мониторинга и ответов должен применяться формат JSON.
10. <a id="p100435"></a>ПТС при успешном выполнении запросов мониторинга должны возвращать HTTP код 2xx.
11. <a id="p100436"></a>ПТС при возникновении ошибки во время выполнения запросов мониторинга должны в ответе возвращать поле "error" с информацией об ошибке и следующие HTTP коды:
<a id="p100437"></a>400 Bad Request - в запросе отсутствуют или некорректно заданы параметры;
<a id="p100438"></a>422 Unprocessable Entity - неправильный формат запроса на языке PromQL в соответствии с [пунктом 13](#p100447) настоящего приложения к Требованиям к ПТС;
<a id="p100439"></a>503 Service Unavailable - выполнение запроса прервано на стороне ПТС.
12. <a id="p100440"></a>Ответы на запросы мониторинга должны иметь следующий формат:

<a id="p100441"></a>    {
     "status": "success" | "error",
     "data": <data>,

     "errorType": "<string>",
     "error": "<string>",

     "warnings": ["<string>"]
    },

<a id="p100442"></a>в котором:
<a id="p100443"></a>поле "status" - статус выполнения запроса, может принимать одно из двух значений: "success" или "error";
<a id="p100444"></a>поле "data" - результат выполнения запроса, структура поля зависит от конечной точки, на которую был отправлен запрос (в соответствии с [пунктом 13](#p100447) настоящего приложения к Требованиям к ПТС);
<a id="p100445"></a>поля "errorType" и "error" - соответственно тип и описание ошибки, возникшей при выполнении запроса (поле "status" имеет значение "error");
<a id="p100446"></a>поле "warnings" - незначительные ошибки (предупреждения), возникшие во время выполнения запроса, но существенно не повлиявшие на его выполнение. При этом поле "data" может содержать частичные результаты выполнения запроса.
13. <a id="p100447"></a>ПТС должны реализовывать внутри конечной точки "/metric" следующие дополнительные конечные точки:
1) <a id="p100448"></a>"/api/v1/query" - предназначена для приема запросов мониторинга от ПУ в целях получения метрик для конкретного значения времени, а также передачи на ПУ результатов выполнения данных запросов. Данная конечная точка должна поддерживать HTTP методы GET и POST с параметрами:
<a id="p100449"></a>"query" - запрос на языке PromQL;
<a id="p100450"></a>"time" (опционально) - дата и время в формате согласно RFC3339 или Unix-время;
<a id="p100451"></a>"duration" (опционально) - период времени в формате согласно Time Durations языка PromQL.
<a id="p100452"></a>Программный код для поля "data" для ответа на запросы мониторинга для данной конечной точки должен иметь следующую структуру:

<a id="p100453"></a>    {
     "resultType": "matrix" | "vector" | "scalar" | "string",
     "result": <value>
    }.

<a id="p100454"></a>Формат поля "result" должен зависеть от значения поля "resultType" согласно [пункту 14](#p100479) настоящего приложения к Требованиям к ПТС;
2) <a id="p100455"></a>"/api/v1/query_range" - предназначена для приема запросов мониторинга от ПУ в целях получения метрик для диапазона времени, а также передачи на ПУ результатов выполнения данных запросов. Данная конечная точка должна поддерживать HTTP методы GET и POST с параметрами:
<a id="p100456"></a>"query" - запрос на языке PromQL;
<a id="p100457"></a>"start" - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
<a id="p100458"></a>"end" - дата и время конца диапазона в формате согласно RFC3339 или Unix-время;
<a id="p100459"></a>"step" - временной шаг запроса в формате согласно Time Durations языка PromQL или число с плавающей точкой;
<a id="p100460"></a>"duration" (опционально) - период времени в формате согласно Time Durations языка PromQL.
<a id="p100461"></a>Программный код для поля "data" для ответа на запросы мониторинга для данной конечной точки должен иметь следующую структуру:

<a id="p100462"></a>    {
     "resultType": "matrix",
     "result": <value>
    }.

<a id="p100463"></a>Формат поля "result" должен соответствовать [подпункту 1 пункта 14](#p100480) настоящего приложения к Требованиям к ПТС;
3) <a id="p100464"></a>"/api/v1/series" - предназначена для приема запросов мониторинга от ПУ в целях получения списка метрик, которые имеют заданный набор меток, а также передачи на ПУ результатов выполнения данных запросов. Данная конечная точка должна поддерживать HTTP методы GET и POST с параметрами:
<a id="p100465"></a>"match[]" - перечень запрашиваемых меток в формате Time series Selectors языка PromQL;
<a id="p100466"></a>"start" - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
<a id="p100467"></a>"end" - дата и время конца диапазона в формате согласно RFC3339 или Unix-время.
<a id="p100468"></a>Поле "data" для ответа на запросы мониторинга для данной конечной точки должно содержать перечень метрик (представляются перечнем их меток (пара ключ-значение), удовлетворяющих критериям запроса;
4) <a id="p100469"></a>"/api/v1/labels" - предназначена для приема запросов мониторинга от ПУ в целях получения списка меток, которые имеют заданный набор метрик, а также передачи на ПУ результатов выполнения данных запросов. Данная конечная точка должна поддерживать HTTP методы GET и POST с параметрами:
<a id="p100470"></a>"match[]" (опционально) - перечень запрашиваемых метрик в формате Time series Selectors языка PromQL;
<a id="p100471"></a>"start" (опционально) - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
<a id="p100472"></a>"end" (опционально) - дата и время конца диапазона в формате согласно RFC3339 или Unix-время.
<a id="p100473"></a>Поле "data" для ответа на запросы мониторинга для данной конечной точки должно содержать перечень названий меток, удовлетворяющих критериям запроса;
5) <a id="p100474"></a>"/api/v1/label/<label_name>/values" - предназначена для приема запросов мониторинга от ПУ в целях получения значений заданных меток, а также передачи на ПУ результатов выполнения данных запросов. Данная конечная точка должна поддерживать HTTP метод GET с параметрами:
<a id="p100475"></a>"match[]" (опционально) - перечень запрашиваемых метрик в формате Time series Selectors языка PromQL;
<a id="p100476"></a>"start" (опционально) - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
<a id="p100477"></a>"end" (опционально) - дата и время конца диапазона в формате согласно RFC3339 или Unix-время.
<a id="p100478"></a>Поле "data" для ответа на запросы мониторинга для данной конечной точки должно содержать перечень значений меток, удовлетворяющих критериям запроса.
14. <a id="p100479"></a>Поле "result" в ответах на запросы мониторинга может иметь один из следующих форматов:
1) <a id="p100480"></a>если поле "resultType" имеет значение "matrix", то поле "result" должно иметь следующий формат:

<a id="p100481"></a>    [
     {
     "metric": {"<label_name>": "<label_value>", ... },
      "values": [[<unix_time>, "<sample_value>"], ... ],
      "histograms": [[<unix_time>, <histogram>], ... ]
     },
     ...
    ];

2) <a id="p100482"></a>если поле "resultType" имеет значение "vector", то поле "result" должно иметь следующий формат:

<a id="p100483"></a>    [
     {
      "metric": {"<label_name>": "<label_value>", ... },
      "value": [<unix_time>, "<sample_value>"],
      "histogram": [<unix_time>, <histogram>],
     },
     ...
    ];

<div align="center">

3) <a id="p100484"></a>если поле "resultType" имеет значение "scalar", то поле "result" должно иметь следующий формат:<br>
<a id="p100485"></a>[<unix_time>, "<scalar_value>"];<br>
4) <a id="p100486"></a>если поле "resultType" имеет значение "string", то поле "result" должно иметь следующий формат:<br>
<a id="p100487"></a>[<unix_time>, "<string_value>"].

</div>




<a id="p100009"></a>

---
