Метод получения документа для печати. Идентификатор ЭМД можно
Входит в РЭМД Сервис регионального хранилища ЭМД.
Здесь публикуются последние версии спецификаций РЭМД Сервис регионального хранилища ЭМД. Спецификации для интеграций
Также доступна спецификация в формате OpenAPI(swagger) http://remd.emias.mosreg.ru/emds/rest/api/swagger-ui.html#/emds-controller
Базовый адрес(url) для Московской области http://remd.emias.mosreg.ru/
Оглавление |
---|
Запросы печати ЭМД из РЭМД
Существуют 2 формата ЭМД - PDF/A-1 и HL7 CDA R2
https://nsi.rosminzdrav.ru/#!/refbook/1.2.643.5.1.13.13.99.2.40/?version=1.2
Примеры разных документов:
1fce3354-6043-46bc-b635-d12e73b3084a - Протокол консультации (PDF/A-1)
390b9929-b8fd-4adc-8772-f85f0113cb13 - Справка об отсутствии контактов с инфекционными больными (CDA) Редакция 2
Для формата PDF/A-1 в РЭМД хранится файл pdf, который можно получить напрямую методом /signed-content, либо в методе /documents/{localUid}
Для формата CDA в РЭМД хранится файл xml, для печати которого в формате PDF следует выполнять преобразование, поэтому нужно использовать использовать метод /xsl-content?docType=pdf&stamp=true
Определить формат ЭМД можно:
- через справочник https://nsi.rosminzdrav.ru/#!/refbook/1.2.643.5.1.13.13.11.1520/version/8.44
- через метод Получение справочника типов ЭМД - isSemd=true для CDA.
- на странице Перечень видов ЭМД, регистрируемых в РЭМД
Запрос печати PDF/A-1 ЭМД
Адрес запроса
GET: {{url}}/emds/rest/api/v1/documents/{{emdGuid}}/signed-content |
Параметры запроса
Параметр | Описание | По умолчанию | Обязательный | Комментарий | |
---|---|---|---|---|---|
emdGuid | path | Идентификатор ЭМД | - | + | Можно получить в методе Получение ЭМД и заявок на ЭМД по документу-основанию или Журнал заявок ЭМД. Получение журнала заявок на |
...
ЭМД. При получении ЭМД этими методами для печати доступны только документы со статусом от 06 - Отправлен и выше (06, 07, 08, 09, 10). Также можно получить документ напрямую из РЭМД методом Получение документов пациента. Получение списка ЭМД из РЭМД. В качестве emdGuid используется localUid. |
Ответ сервера
В случае успешного выполнения сервер вернет ответ в формате JSON со следующими данными:
Поле | Тип | Описание |
---|---|---|
docContent | Содержимое электронного документа | |
data | string | Содержимое электронного документа (файл формата PDF, в base64). Для просмотра при тесте можно пользоваться онлайн форматером, например https://www.freeformatter.com/base64-encoder.html |
checksum | integer | Контрольная сумма файла, вычисленная по алгоритму CRC32 (в десятичном представлении) |
Другие поля из тела ответа в данной интеграции не интересны.
Блок кода | ||||
---|---|---|---|---|
| ||||
{
"docContent": {
"data": "JVBERi0xLjQNCiW0tba3DQolDQoxIDAgb2JqDQo8PA0K...",
"checksum": 215542653
}
} |
Запрос печати CDA ЭМД
Базовый адрес(url) для Московской области remd.emias.mosreg.ru/emds/rest/api/v1
...
Адрес запроса
GET: {{url}}/emds/rest/api/v1/documents/{{emdGuid}}/xsl-content?docType=pdf&stamp=true |
Параметры запроса
Параметр | Описание | По умолчанию | Обязательный | Комментарий | |
---|---|---|---|---|---|
emdGuid | path | Идентификатор ЭМД | - | + | Можно получить в методе Получение ЭМД и заявок на ЭМД по документу-основанию или Журнал заявок ЭМД. Получение журнала заявок на ЭМД. При получении ЭМД этими методами для печати доступны только документы со статусом от 06 - Отправлен и выше (06, 07, 08, 09, 10). Также можно получить документ напрямую из РЭМД методом Получение документов пациента. Получение списка ЭМД из РЭМД. В качестве emdGuid используется localUid. |
docType | query | Тип документа | - | + | Поддерживается только pdf и html |
stamp | query | Отображать штамп с информацией о подписи на документе | - | - | Только для pdf Для печати на РПГУ вывод штампа обязателен. |
Ответ сервера
В случае успешного выполнения сервер вернет ответ в формате JSON со следующими данными:
Поле | Тип | Описание |
---|---|---|
data | Объектstring | Содержимое электронного документа (файл формата PDF, в base64). Для просмотра при тесте можно пользоваться онлайн форматером, например https://www.freeformatter.com/base64-encoder.html |
checksum | integer | Контрольная сумма файла, вычисленная по алгоритму CRC32 (в десятичном представлении) |
docType | string | Локальный идентификатор услуги относящийся к документу |
Блок кода | ||||
---|---|---|---|---|
| ||||
{
"data": "JVBERi0xLjcKJeLjz9MKNSAwIG9iago8PC9GaWx0ZXIvRmxhdGVEZWNvZ...",
"checksum": 581198999,
"docType": "pdf"
} |
Возможные ошибки
Ошибки с кодом и сообщением перечислены в массиве errors тела ответа при неуспешном коде ответа 400, 404 или 500.
Код ответа сервера | Код сообщения | Сообщение | Комментарий |
---|---|---|---|
400 | E-0001 | Разрешенные типы документов - pdf и html | |
404 | E-0002 | Документ с идентификатором {emdGuid} не найден | |
400 | E-0003 | Значение параметра 'docType' должно быть заполнено | |
500 | - | Непредвиденное сообщение ошибки | Возникает при непредвиденных ошибках сервера |
Блок кода | ||||
---|---|---|---|---|
| ||||
{ "status": "error", "result": null, "errors": [ { "code": "E-0002", "message": "Документ с идентификатором localUid='b488a8b5-ad9d-459d-9a5a-61f487178245' не найден" } ], "page": null, "id": null, "messageId": null } |
Возможные коды ошибок
...
Invalid input
...
Not found
...