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

[DRAFT] REST API Get Episode by id [API-007-006-001-0269]

https://e-health-ua.atlassian.net/wiki/spaces/EN/pages/17591304241 (remove the link block before publishing the document)

Properties of a REST API method document

Document type

Метод REST API

Document title

[Document status] REST API [Назва методу] [ID методу]

Guideline ID

GUI-0011

Author

@

Document version

1

Document status

DRAFT

Date of creation

ХХ.ХХ.ХХХХ (дата фінальної версії документа – RC або PROD)

Date of update

ХХ.ХХ.ХХХХ (дата зміни версії)

Method API ID

API-007-006-001-0269

Microservices (namespace)

ME

Component

Episode

Component ID

COM-007-006

Link на API-специфікацію

https://medicaleventsmisapi.docs.apiary.io/#reference/medical-events/episode-of-care/get-episode-by-id

Resource

{{host}}/api/patients/{{patient_id}}/episodes/{{episode_id}}

Scope

episode:read

Protocol type

REST

Request type

GET

Sync/Async

Sync

Public/Private

Public

Purpose

This API method is designed to get information about Episode by its identifier episode_id and patient identifier patient_id

Logic

Description of the working algorithm of the API method and the interaction of services with each other add Service logic (if necessary)

Configuration parameters

Description of the configuration parameters that are used when processing a request in the system

Dictionaries

Provides a list of links to dictionaries that are available in Confluence

Input parameters

Input parameter

Mandatory

Type

Description

Example

Input parameter

Mandatory

Type

Description

Example

1

patient_id

 

String

Patient identifier

70a9e15b-b71b-4caf-8f2e-ff247e8a5677

2

episode_id

 

String

Episode identifier

70a9e15b-b71b-4caf-8f2e-ff247e8a5677

Request structure

See on API-specification

Headers

Key

Value

Mandatory

Description

Example

Key

Value

Mandatory

Description

Example

1

Content-Type

application/json

 

Тип контенту

Content-Type:application/json

2

Authorization

Bearer {{access_token}}

 

Перевірка користувача

Authorization:Bearer {{access_token}}

3

API-key

{{secret}}

 

Секретний ключ

API-key:{{secret}}

Request data validation

Authorize

Request to process the request using a token in the headers

  • Verify the validity of access token

    • Return 401 in case validation fails

  • Verify token is not expired

    • in case error return 401 

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

    1. Return 403 in case invalid scope(s)

Validate

Access to the resource is also managed by ABAC module.

Processing

A list of processes related to receiving, changing or transmitting data according to the logic defined in the REST API

Response structure examples

See on API-specification

{ "data": { "id": "90a9e15b-b71b-4caf-8f2e-ff247e8a5600", "inserted_at": "2018-08-02T10:45:16.000Z", "updated_at": "2018-08-02T10:45:16.000Z", "type": { "system": "eHealth/episode_types", "code": "primary_care" }, "status": "active", "name": "Діабет 2018", "current_diagnoses": [ { "condition": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "condition" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "code": { "coding": [ { "system": "eHealth/ICPC2/conditions", "code": "A20" } ] }, "role": { "coding": [ { "system": "eHealth/diagnosis_roles", "code": "CC" } ] }, "rank": 1 } ], "diagnoses_history": [ { "date": "2018-08-02T10:45:16.000Z", "evidence": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "encounter" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "diagnoses": [ { "condition": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "condition" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "code": { "coding": [ { "system": "eHealth/ICPC2/conditions", "code": "A20" } ] }, "role": { "coding": [ { "system": "eHealth/diagnosis_roles", "code": "CC" } ] }, "rank": 1 }, { "condition": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "condition" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "code": { "coding": [ { "system": "eHealth/ICPC2/conditions", "code": "A20" } ] }, "role": { "coding": [ { "system": "eHealth/diagnosis_roles", "code": "CC" } ] }, "rank": 1 } ] } ], "status_history": [ { "status": "active", "status reason": { "coding": [ { "system": "eHealth/episode_closing_reasons", "code": "cured" } ] }, "inserted_at": "2018-08-02T10:45:16.000Z" } ], "managing_organization": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "legal_entity" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "Медікал Солюшнc" }, "period": { "start": "2018-08-02T10:45:16.000Z", "end": "2018-08-03T10:45:16.000Z" }, "care_manager": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "employee" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "closing_summary": "Носові шляхи вільні, горло рожеве, температура в нормі", "status_reason": { "coding": [ { "system": "eHealth/episode_closing_reasons", "code": "cured" } ] }, "explanatory_letter": "Епізод був відмінений у зв'язку з помилкою при виборі пацієнта" }, "meta": { "code": 200, "url": "http://example.com/resource", "type": "object", "request_id": "req-adasdoijasdojsda" } }

HTTP status codes

Response code

HTTP Status code

Message

Internal name

Description

Response code

HTTP Status code

Message

Internal name

Description

1

Базові

2

 

200

 

 

 

3

 

401

Access token validation failed

 

 

4

 

403

Invalid scope

 

 

5

Специфічні

6

 

 

 

 

 

Post-processing processes

Description of actions performed on data after processing

Technical modules where the method is used

List of pages describing technical modules where the method is used

 

 

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