Руководство к использованию стандарта FHIR в ЦИСЗ
0.2.6803 - ci-build

Профиль ресурса: Метод проверки работоспособности API

Официальный URL: https://fhir.by/StructureDefinition/EndpointHealthCheck
Draft as of 2026-06-25 Имя: EndpointHealthCheck

Метод проверки работоспособности API. Раздел Конечные точки

Описание профиля:

Профиль предназначен для задания конечной точки мониторинга работоспособности API МИС ОЗ.

Взаимодействие ЦИСЗ с МИС ОЗ при интеграции строится по схеме запрос-ответ.

Запрос формируется на стороне ЦИСЗ и передается методом GET по протоколу HTTPS.

Конечная точка должна сообщать клиенту информацию о доступности API для обработки запросов.

API считается работоспособным, если он способен отвечать на запросы по URL-адресу конечной точки работоспособности.

Ответ клиенту должен быть сформирован в виде простого текста: Healthy, Degraded, Unhealthy.

Ответ Значение
Healthy Проверка работоспособности определила, что компонент находился в работоспособном состоянии
Degraded Проверка работоспособности определила, что компонент находился в состоянии сниженной функциональности
Unhealthy Проверка работоспособности определила, что компонент был неработоспособен, либо при выполнении проверки работоспособности возникло необработанное исключение

Для каждой организации может быть указан только один ресурс Endpoint со значением status = active.

Использование:

You can also check for usages in the FHIR IG Statistics

Контент профиля

Описание профилей и принципов работы различных представлений..

Профиль ресурса: HealthcareOrganizationEndpoint

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Endpoint 0..* HealthcareOrganizationEndpoint The technical details of an endpoint that can be used for electronic services
... meta
.... profile 1..1 canonical(StructureDefinition) Ссылка на профиль
Требуемый шаблон: https://fhir.by/StructureDefinition/EndpointHealthCheck

doco Документация для этого формата
НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Endpoint 0..* HealthcareOrganizationEndpoint The technical details of an endpoint that can be used for electronic services
... id Σ 0..1 id Логический идентификатор этого артефакта
... meta Σ 1..1 Meta Метаданные о ресурсе
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... versionId Σ 0..1 id Идентификатор конкретной версии
.... profile Σ 1..1 canonical(StructureDefinition) Ссылка на профиль

Требуемый шаблон: https://fhir.by/StructureDefinition/EndpointHealthCheck
... implicitRules ?!Σ 0..1 uri Набор правил, в соответствии с которыми был создан этот контент
... connectionType Σ 1..1 CodeableConcept Protocol/Profile/Standard to be used with this endpoint connection
Привязка: Тип подключения для endpoint (required)
... managingOrganization Σ 1..1 Reference(Organization) Organization that manages this endpoint (might not be the organization that exposes the endpoint)
... address Σ 1..1 url The technical base address for connecting to this endpoint

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Endpoint.status Base required Endpoint Status 📍5.0.0 Стандарт FHIR
Endpoint.connectionType Base required Тип подключения для endpoint 📦0.2.6803 этот IG
Endpoint.payload.type Base example Endpoint Payload Type 📍5.0.0 Стандарт FHIR
Endpoint.payload.mimeType Base required Mime Types 📍5.0.0 Стандарт FHIR

Ограничения

Id Градация Путь(и) Описание Выражение
dom-2 error Endpoint If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Endpoint If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Endpoint If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Endpoint If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Endpoint A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ВСЕ** элементы All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ВСЕ** расширения Must have either extensions or value[x], not both extension.exists() != value.exists()

Профиль ресурса: HealthcareOrganizationEndpoint

Summary

Полная Схема

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Endpoint 0..* HealthcareOrganizationEndpoint The technical details of an endpoint that can be used for electronic services
... id Σ 0..1 id Логический идентификатор этого артефакта
... meta Σ 1..1 Meta Метаданные о ресурсе
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... versionId Σ 0..1 id Идентификатор конкретной версии
.... profile Σ 1..1 canonical(StructureDefinition) Ссылка на профиль

Требуемый шаблон: https://fhir.by/StructureDefinition/EndpointHealthCheck
... implicitRules ?!Σ 0..1 uri Набор правил, в соответствии с которыми был создан этот контент
... connectionType Σ 1..1 CodeableConcept Protocol/Profile/Standard to be used with this endpoint connection
Привязка: Тип подключения для endpoint (required)
... managingOrganization Σ 1..1 Reference(Organization) Organization that manages this endpoint (might not be the organization that exposes the endpoint)
... address Σ 1..1 url The technical base address for connecting to this endpoint

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Endpoint.status Base required Endpoint Status 📍5.0.0 Стандарт FHIR
Endpoint.connectionType Base required Тип подключения для endpoint 📦0.2.6803 этот IG
Endpoint.payload.type Base example Endpoint Payload Type 📍5.0.0 Стандарт FHIR
Endpoint.payload.mimeType Base required Mime Types 📍5.0.0 Стандарт FHIR

Ограничения

Id Градация Путь(и) Описание Выражение
dom-2 error Endpoint If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Endpoint If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Endpoint If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Endpoint If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Endpoint A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ВСЕ** элементы All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ВСЕ** расширения Must have either extensions or value[x], not both extension.exists() != value.exists()

Схема различий

Профиль ресурса: HealthcareOrganizationEndpoint

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Endpoint 0..* HealthcareOrganizationEndpoint The technical details of an endpoint that can be used for electronic services
... meta
.... profile 1..1 canonical(StructureDefinition) Ссылка на профиль
Требуемый шаблон: https://fhir.by/StructureDefinition/EndpointHealthCheck

doco Документация для этого формата

Профиль ресурса: HealthcareOrganizationEndpoint

Summary

 


Необходимо добавить дополнительную информацию!!!!!!

Для добавления дополнительной информации нужно добавить файл input/intro-notes/StructureDefinition-EndpointHealthCheck-notes.md

Синтаксис метода получения ресурса

Метод получения осуществляет доступ к текущему содержимому ресурса. Взаимодействие осуществляется с помощью HTTP GET команды:

GET [FHIR_BASE]/Organization/[organizationId]/Endpoint/[id]

Метод возвращает один экземпляр ресурса.

Возможные значения логического идентификатора («id») описаны в типе Id

При попытке доступа к несуществующему ресурсу будет возвращен HTTP статус код - 404 Not Found

Синтаксис поиска ресурса

Во всех поисковых взаимодействиях в этом руководстве используется HTTP GET команда со следующим синтаксисом:

GET [FHIR_BASE]/Organization/[organizationId]/[Resource-type]?[parameter1]{:m1|m2|...}={c1|c2|...}[value1{,value2,...}]{&[parameter2]{:m1|m2|...}={c1|c2|...}[value1{,value2,...}]&...}

  • GET — это HTTP метод, используемый для получения ресурса.

  • Переменные указанные в «[]», обязательны для предоставления клиентом и будут заменены указанным строковым литералом.

  • Переменные указанные в «{}», не являются обязательными для предоставления клиентом и будут заменены указанным строковым литералом.

  • FHIR_BASE: URL-адрес сервера

  • Resource-type: имя типа ресурса (например, “Endpoint”).

  • parameter: параметры поиска, определенные для конкретного взаимодействия (например, «?status=active»).

  • value: значение параметра поиска

  • {:m1 m2 …}: модификатор параметра поиска

  • {c1 c2 …}: компаратор параметра поиска

  • {,value2,…}: логическое ИЛИ

  • {&parameter2={:m1 m2 …}={c1 c2 …}[value1{,value2,…}]&…}: логическое И

Простой пример запроса поиска в RESTful с использованием HTTP GET команды:

GET [FHIR_BASE]/Organization/[organizationId]/Endpoint?type=value&...

Поддерживаемые параметры поиска ресурса

Параметр поиска Тип Описание Выражение Пример
_id token По логическому идентификатору Endpoint.id GET [FHIR_BASE]/Organization/[organizationId]/Endpoint?_id=00001
_profile reference По профилю htcehcf Endpoint.meta.profile GET [FHIR_BASE]/Organization/[organizationId]/Endpoint?_profile=https://fhir.by/StructureDefinitionEndpointHealthCheck
organization reference Организация которой принадлежит Endpoint Endpoint.managingOrganization GET [FHIR_BASE]/Organization/[organizationId]/Endpoint?organization=00001
status token Статус ресурса Endpoint.status GET [FHIR_BASE]/Organization/[organizationId]/Endpoint?status=active

Необходимо добавить описание Прав доступа!!!!!!

Для добавления описания нужно добавить файл input/rules/StructureDefinition-EndpointHealthCheck-rules.md