Документация
Для вывода документации используется инструмент Swagger UI.
Документация расположена по адресу api.pharm-portal.ru/docs и swagger.pharm-portal.ru
Более простой API api.pharm-portal.ru/docs содержит в себе все необходимые данные без разбивки по сервисам
Документация первой версии API swagger.pharm-portal.ru разбита для каждого сервиса в системе:
- Single Sign On (SSO) — единый центр аутентификации
- Pharm-ID+ (ЕН, UN, Единая номенклатура) — сервис Единой Номенклатуры
- ГРЛС (grls) — информация, которую размещает Минздрав в своем реестре ЛС
- ЖНВЛП (vml) — реестр цен и наценок по регионам на Жизненно Необходимые и Важнейшие Лекарственные Препараты
- РЗН (rzn) — выпущенные в оборот серии препаратов
- Отзывы/Фальсификаты (wnf) — письма об изъятиях препаратов из оборота
- PIM/ПИМ (pim) — данные для SKU Pharm-ID+, полученные напрямую от производителей
- МДЛП (mdlp) — реестр лекарственных препаратов из МДЛП
- ЕСКЛП (esklp) — все препараты занесенные в Единый Справочник Лекарственных Препаратов Минздрава
- ШК (barcodes) — штрихкоды фарм. рынка из всех источников
- Лицензии (licences) — реестр фарм. и мед. лицензии рынка
- Справочники (directory) — справочная информация (страны, единицы измерения, формы выпуска и т.д.)
- Компании (company) — информация о фармацевтических компаниях и их адресах
Для каждого сервиса в документации указан адрес и перечень HTTP-методов.
Авторизация
Авторизация происходит посредством передачи в HTTP заголовке Authorization вашего токена
(см. стандарт — https://tools.ietf.org/html/rfc6750#section-2.1).
Пример: Authorization: Bearer <ваш токен>
Использование
- Необходимо получить OAuth-токен для работы с API Pharm-ID, для этого нужно отправить запрос в сервис SSO —
POST /oauth/token
, в котором должны быть указаны:
a.grant_type
client_credentials
b.client_id
<выданный вам идентификатор>
c.client_secret
<выданный вам секрет>
Если всё прошло успешно, в ответ будет возвращенaccess_token
, который требуется для использования АПИ.
Curl:
curl -X POST "https://back-sso.pharm-portal.ru/oauth/token" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"grant_type\": \"client_credentials\", \"client_id\": 1, \"client_secret\": \"ваш секрет\"}"
- Обратиться к АПИ Pharm-ID —
GET /v1/skus
с указанием вашего токена в заголовке HTTP-запроса (см. Авторизация)
Curl:
curl -X GET "https://back-un.pharm-portal.ru/v1/skus" -H "accept: application/json" -H "Authorization: Bearer ваш токен"
- После того, как был получен ответ, возможно требуется до-обогатить полученные данные, для этого нужно обращаться к сервисам «Справочники» и «Компании».
Пример: у SKU есть массив"man_forms"
(лек формы и дозировки), внутри него у каждого элемента есть атрибут"dosage_form_id"
, чтобы получить его значение, необходимо обратиться к сервису «Справочников» —GET /dosage-form/{значение из dosage_form_id}
.
Curl:
curl -X GET "https://back-directory.pharm-portal.ru/dosage-form/7757035b-2a61-4c9b-98d0-97176fc3c77f" -H "accept: application/json" -H "Authorization: Bearer ваш токен"
Если встречаются атрибутыcompany_id
илиaddress_id
за их информацией нужно обращаться в сервис «Компании».
Информация по справочным сущностям
Атрибут | Сервис | Метод | Описание |
dosage_form_id | Справочники | GET /dosage-form/{id} | Лек. форма |
measure_unit_id | Справочники | GET /measure-unit/{id} | Единица измерения |
type_id (в упаковках) | Справочники | GET /pack-type/{id} | Вид упаковки |
inn_id | Справочники | GET /inn/{id} | Действующее в-во |
company_id | Компании | GET /company/{id} | Компания/Производитель |
address_id | Компании | GET /address/{id} | Адрес компании |
Получить все значения для каждого вида справочника можно по аналогии с получением одиночного значения.
Пример:
получение одиночного значения GET /dosage-form/{id}
получение всех значений — GET /dosage-form
Документация
Для вывода документации используется инструмент Swagger UI.
Документация расположена по адресу api.pharm-portal.ru/docs и swagger.pharm-portal.ru
Более простой API api.pharm-portal.ru/docs содержит в себе все необходимые данные без разбивки по сервисам
Документация первой версии API swagger.pharm-portal.ru разбита для каждого сервиса в системе:
- Single Sign On (SSO) — единый центр аутентификации
- Pharm-ID+ (ЕН, UN, Единая номенклатура) — сервис Единой Номенклатуры
- ГРЛС (grls) — информация, которую размещает Минздрав в своем реестре ЛС
- ЖНВЛП (vml) — реестр цен и наценок по регионам на Жизненно Необходимые и Важнейшие Лекарственные Препараты
- РЗН (rzn) — выпущенные в оборот серии препаратов
- Отзывы/Фальсификаты (wnf) — письма об изъятиях препаратов из оборота
- PIM/ПИМ (pim) — данные для SKU Pharm-ID+, полученные напрямую от производителей
- МДЛП (mdlp) — реестр лекарственных препаратов из МДЛП
- ЕСКЛП (esklp) — все препараты занесенные в Единый Справочник Лекарственных Препаратов Минздрава
- ШК (barcodes) — штрихкоды фарм. рынка из всех источников
- Лицензии (licences) — реестр фарм. и мед. лицензии рынка
- Справочники (directory) — справочная информация (страны, единицы измерения, формы выпуска и т.д.)
- Компании (company) — информация о фармацевтических компаниях и их адресах
Для каждого сервиса в документации указан адрес и перечень HTTP-методов.
Авторизация
Авторизация происходит посредством передачи в HTTP заголовке Authorization вашего токена
(см. стандарт — https://tools.ietf.org/html/rfc6750#section-2.1).
Пример: Authorization: Bearer <ваш токен>
Использование
- Необходимо получить OAuth-токен для работы с API Pharm-ID, для этого нужно отправить запрос в сервис SSO —
POST /oauth/token
, в котором должны быть указаны:
a.grant_type
client_credentials
b.client_id
<выданный вам идентификатор>
c.client_secret
<выданный вам секрет>
Если всё прошло успешно, в ответ будет возвращенaccess_token
, который требуется для использования АПИ.
Curl:
curl -X POST "https://back-sso.pharm-portal.ru/oauth/token" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"grant_type\": \"client_credentials\", \"client_id\": 1, \"client_secret\": \"ваш секрет\"}"
- Обратиться к АПИ Pharm-ID —
GET /v1/skus
с указанием вашего токена в заголовке HTTP-запроса (см. Авторизация)
Curl:
curl -X GET "https://back-un.pharm-portal.ru/v1/skus" -H "accept: application/json" -H "Authorization: Bearer ваш токен"
- После того, как был получен ответ, возможно требуется до-обогатить полученные данные, для этого нужно обращаться к сервисам «Справочники» и «Компании».
Пример: у SKU есть массив"man_forms"
(лек формы и дозировки), внутри него у каждого элемента есть атрибут"dosage_form_id"
, чтобы получить его значение, необходимо обратиться к сервису «Справочников» —GET /dosage-form/{значение из dosage_form_id}
.
Curl:
curl -X GET "https://back-directory.pharm-portal.ru/dosage-form/7757035b-2a61-4c9b-98d0-97176fc3c77f" -H "accept: application/json" -H "Authorization: Bearer ваш токен"
Если встречаются атрибутыcompany_id
илиaddress_id
за их информацией нужно обращаться в сервис «Компании».
Информация по справочным сущностям
Атрибут | Сервис | Метод | Описание |
dosage_form_id | Справочники | GET /dosage-form/{id} | Лек. форма |
measure_unit_id | Справочники | GET /measure-unit/{id} | Единица измерения |
type_id (в упаковках) | Справочники | GET /pack-type/{id} | Вид упаковки |
inn_id | Справочники | GET /inn/{id} | Действующее в-во |
company_id | Компании | GET /company/{id} | Компания/Производитель |
address_id | Компании | GET /address/{id} | Адрес компании |
Получить все значения для каждого вида справочника можно по аналогии с получением одиночного значения.
Пример:
получение одиночного значения GET /dosage-form/{id}
получение всех значений — GET /dosage-form