ЕСОЗ - публічна документація

Get dictionaries (UA)

Призначення

Цей метод призначений для отримання словників з eHealth

Специфікація

Link

https://ehealthmisapi1.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/dictionaries/get-dictionaries

Посилання на Apiary або Swagger

Resource

/api/dictionaries

Посилання на ресурс, наприклад: /api/persons/create

Scope

dictionary:read

Scope для доступу

Components

Dictionaries

Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription

Microservices

API paragraph not found

Перелік мікросервісів, які використовує метод API, наприклад: Auth, ABAC

Protocol type

REST

Тип протоколу, який використовується запитом, наприклад: SOAP | REST

Request type

GET

Тип запиту API, наприклад: GET, POST, PATCH…

Sync/Async

Sync

Метод є синхронним чи асинхронним?

Public/Private/Internal

Public

Потрібно зазначити тип методу за ступенем доступності

Логіка

  1. Фільтрувати словники за параметрами пошуку.

  2. Відобразити знайдені словники з усіма полями PRM DB.

Вхідні параметри

  • name - назва словника

  • is_active - статус словника

Фільтри

Ні

Авторизуватись

Параграф API не знайдено

Заголовки

Параграф API не знайдено

Запит валідаційних даних

Параграф API не знайдено

Обробка

Параграф API не знайдено

Структура відповіді

Кожен словник є об'єктом, який містить {key}:{value} в парах, де:

  • {key} є словниковим записом

  • {value} опис словникового запису

має певні мітки словника та прапорець «is_active», який визначає статус словника

Дивитися на Apiary

Приклад:

{ "meta": { "code": 200, "url": "https://example.com/resource", "type": "object", "request_id": "6617aeec-15e2-4d6f-b9bd-53559c358f97#17810" }, "data": [ { "name": "DOCUMENT_TYPE", "values": { "key": "value" }, "labels": [ "SYSTEM", "EXTERNAL" ], "is_active": true } ] }

Процеси постобробки

Параграф API не знайдено

HTTP коди стану

HTTP status code

Message

What caused the error

HTTP status code

Message

What caused the error

200

Response

 

Зворотна сумісність

Параграф API не знайдено

Сегментування словників

У зв'язку зі збільшенням розміру опорних словників по ендпоінту Get dictionaries було прийнято рішення сегментувати словник для значень, що перевищують нормальні (максимальний розмір словника міг скласти 24Мб, що створює проблеми в роботі з опорними словниками). Наразі функціонал роботи ендпоінта змінено, що передбачає що при зверненні до нього без передачі фільтруючих параметрів повертається опорний словник з таким переліком значень (https://uaehealthapi.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/dictionaries/get-dictionaries). Для того, щоб отримати значення, які належати до великого довідника, в т.ч.:

  • eHealth/ICD10_AM/condition_codes

  • eHealth/ICD10_AM_FULL/condition_codes

  • eHealth/ICD10/condition_codes

Необхідно передавати назву словника в параметрі name, наприклад: https://api.ehealth.gov.ua/api/dictionaries?name=eHealth/ICD10_AM_FULL/condition_codes
Надалі вбачається що при будуванні нових типів довідників такий підхід буде збережено.

 

ЕСОЗ - публічна документація