Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

/wiki/spaces/EN/pages/17591304241 (remove the link block before publishing the document)

Table of Contents

Properties of a REST API method document

Page Properties
idpage_properties_method_REST API

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-008-002-0280

Microservices (namespace)

ME

Component

Patient Summary

Component ID

COM-007-008

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

https://medicaleventsmisapi.docs.apiary.io/#reference/medical-events/patient-summary/get-clinical-impression-by-id

Resource

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

Scope

patient_summary:read

Protocol type

REST

Request type

GET

Sync/Async

Async

Public/Private

Public

Purpose

This method allows to get detailed information of the patient’s Clinical impression.

Logic

Configuration parameters

Dictionaries

  1. eHealth/resources - clinical_impression (parameter “clinical_impression_id“ in request)

  2. eHealth/clinical_impression_statuses(parameter “status“ in response)

  3. eHealth/clinical_impression_patient_categories(parameter “code“ in response)

  4. eHealth/resources - encounter (parameter “encounter “ in response)

  5. eHealth/resources - employee (parameter “asserter“ in response)

  6. eHealth/resources - clinical_impression (parameter “previous“ in response)

  7. eHealth/resources - condition(parameter “problems“ in response)

  8. eHealth/resources - condition | observation (parameter “findings“ in response)

  9. eHealth/resources - condition | observation | diagnostic_report | encounter (parameter “supporting_info“ in response)

Input parameters

Input parameter

Mandatory

Type

Description

Example

1

patient_id

 M

String

Unique MPI patient identifier

e549c257-232e-4dab-9f1e-b2322cac3968

2

clinical_impression_id

 M

String

Unique Clinical impression identifier

340b86fd-23f3-4a33-94c5-8ec19d116c33

Request structure

See on API-specification

Headers

See on Headers

Request data validation

Authorize

  • Verify the validity of access token

    • Return (401, 'Invalid access token') in case of validation fails

  • Verify that token is not expired

    • in case of error - return (401, 'Invalid access token')

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

    • Return (403, 'Your scope does not allow to access this resource. Missing allowances: clinical_impression:read') in case of invalid scope(s)

...

Request to process the request using a token in the headers

Validate Patient

  • Get Patient identifier from the URL

  • Check it exists in DB

    • Return 404 ('not found') in case of error

Validate Clinical impression

  • Get Clinical impression identifier from the URL

  • Check it exists in DB

    • Return 404 ('not found') in case of error

  • Check Clinical impression belongs to patient

    • Return 404 ('not found') in case of error

Processing

Service returns specified Clinical impression related to the patient:

  • Get Clinical impression by ID from clinical_impression collection (MongoDB)

  • Validate data consistency:

    • Ensure that requested Clinical impression relates to requested Patient (from URL)

      • Return 404 ('not found') in case of error

  • Render a response according to specification

Response structure examples

See on API-specification

HTTP status codes

Response code

HTTP Status code

Message

Internal name

Description

1

Базові

2

 

200

 

Response

 

3

 

401

 

Access token validation failed

 

4

 

401

 

Access token expired

 

5

 

403

 

Invalid scope

 

6

 

404

 

Patient not found

7

Специфічні

Post-processing processes

N/A (Not applicable)

Technical modules where the method is used

N/A (Not applicable)