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

Summary Clinical impressions

Purpose

This web service is designed to provide access to patient's clinical impressions as a part of Patient Summary

This web service returns only specific clinical impressions filtered by clinical impressions.code based on system configuration parameter in order to ensure Medical Confidentiality

 

Specification

Link

https://ehealthmedicaleventsapi.docs.apiary.io/#reference/medical-events/patient-summary/get-clinical-impressions

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

Resource

/api/patients/{{patient_id}}/summary/clinical_impressions

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

Scope

patient_summary:read

Scope для доступу

Components

 

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

Microservices

 

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

Protocol type

 

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

Request type

GET

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

Sync/Async

 

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

Public/Private/Internal

 

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

 

Configuration

Parameter

Type

Description

Value

Parameter

Type

Description

Value

SUMMARY_CLINICAL_IMPRESSIONS_ALLOWED

LIST

List of restricted clinical impressions codes

Example: "109006"

TBD

Logic

API paragraph not found

 

Filters

Filter

Values

Type

Description

Example

Filter

Values

Type

Description

Example

patient_id

 

String

MPI identifier of the patient

7c3da506-804d-4550-8993-bf17f9ee0402

encounter_id

 

String

identifier of the encounter in Clinical impression

7c3da506-804d-4550-8993-bf17f9ee0400

episode_id

 

String

 

f48d1b6c-a021-4d6a-a5a4-aee93e152ecc

code

 

String

Clinical impression's code

insulin_1

status

 

String

Clinical impression's status

completed

page

 

Number

Page number

2

page_size

 

Number

A limit on the number of objects to be returned, between 1 and 100. Default: 50

50

 

Request structure

See on Apiary

 

Authorize

Request to process the request using a token in the headers

 

Headers

  • Content-Type:application/json

  • Authorization:Bearer mF_9.B5f-4.1JqM

  • X-Custom-PSK:a2aa05c76f3f2d91870f923a53cc8aa8f23bbc01a8238d1c2c26d4299715a7e4

 

Request data validation

Validate token

  • Verify the validity of access token

    • Return 401 in case validation fails

  • Verify token is not expired

    • in case error return 401

Validate scopes

  • Check user scopes in order to perform this action (scope = 'patient_summary:read')

    1. Return 403 in case invalid scope(s)

Validate patient

  • Validate patient exists in MongoDB

    • In case of error return 404 not found

 

Processing

  1. Get all patient's clinical_impressions

  2. Query clinical_impressions using configuration.SUMMARY_CLINICAL_IMPRESSIONS_ALLOWED

  3. Filter using Forbidden Groups

  4. Apply filters provided by user

 

Response structure

See on Apiary

Example:

{ "meta": { "code": 200, "url": "http://example.com/resource", "type": "object", "request_id": "req-adasdoijasdojsda" }, "data": [ { "id": "90a9e15b-b71b-4caf-8f2e-ff247e8a5600", "status": "completed", "description": "Some description of the clinical impression", "code": { "coding": [ { "system": "eHealth/clinical_impression_patient_categories", "code": "insulin_1" } ] }, "encounter": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "encounter" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "effective_date_time": "2018-08-02T10:45:16.000Z", "assessor": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "employee" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "Петров Іван Іванович" }, "previous": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "clinical_impression" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "problems": [ { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "condition" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } } ], "summary": "Some summary", "findings": [ { "item_reference": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "condition" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "basis": "Some basis" } ], "supporting_info": [ { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "episode_of_care" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } } ], "note": "Some note", "inserted_at": "2018-08-02T10:55:00.000Z", "updated_at": "2018-08-02T10:55:00.000Z" } ], "paging": { "page": 2, "page_size": 50, "total_entries": 1000, "total_pages": 20 } }

 

Post-processing processes

API paragraph not found

 

HTTP status codes

HTTP status code

Message

What caused the error

HTTP status code

Message

What caused the error

 200

 

 

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