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

Get Approved Diagnostic Reports

Purpose

This web service is designed to return only diagnostic reports that were allowed to read by patient's approval to the current user.

 

Specification

Link

https://medicaleventsmisapi.docs.apiary.io/#reference/medical-events/diagnostic-report/get-approved-diagnostic-reports

Resource

/api/patients/{{patient_id}}/diagnostic_reports/approved

Scope

diagnostic_report:read

Components

Diagnostic Report Data Package

Microservices

API paragraph not found

Protocol type

REST

Request type

GET

Sync/Async

Async

Public/Private/Internal

Public

 

Filters

Filter

Values

Type

Description

Example

Filter

Values

Type

Description

Example

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

code

 

String

id of a service

09dc3ed7-2169-45d8-8fa3-d918c6839bf9

 

Request structure

See on Apiary

 

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 = 'diagnostic_report:read')

    1. Return 403 in case invalid scope(s)

 

Headers

  • Content-Type:application/json

  • Authorization:Bearer {{access_token}}

  • API-key:{{secret}}

Request data validation

 

Processing

Logic

  1. Select all diagnostic reports(approvals.granted_resources.identifier.value) from patients approvals that meet the requirements:

    1. patient_id= hashed patient_id from URL

    2. status= 'active'

    3. granted_to contains one of user's employees' id

    4. granted_resources.identifier.type.coding[].code="diagnostic_report"

  2. Select this diagnostic reports from ME.patients.diagnostic_reports

  3. Add filters requested by the user (search params)

 

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", "based_on (Reference_response, optional)": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "service_request" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "paper_referral": { "requisition": "1111-2222-3333-4444", "requester_legal_entity_name": "Some clinic", "requester_legal_entity_edrpou": "12345678", "requester_employee_name": "John", "service_request_date": "2018-10-08", "note": "Some notes" }, "status": "final", "code": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "service" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "category": [ { "coding": [ { "system": "eHealth/diagnostic_report_categories", "code": "diagnostic_procedure" } ] } ], "effective_period": { "start": "2018-08-02T10:45:16.000Z", "end": "2018-08-02T11:00:00.000Z" }, "issued": "2018-10-08T09:46:37.694Z", "conclusion": "At risk of osteoporotic fracture", "conclusion_code": { "coding": [ { "system": "eHealth/ICD10_AM/condition_codes", "code": "H04.2" } ] }, "recorded_by (Reference_response, required)": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "employee" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "Опанасенко Олексій Володимирович" }, "inserted_at": "2018-08-02T10:55:00.000Z", "updated_at": "2018-08-02T10:55:00.000Z", "encounter": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "encounter" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "null" }, "origin_episode (Reference_response, optional)": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "episode" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "division": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "division" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "Перше відділення обласної лікарня №1" }, "managing_organization (Reference_response, optional)": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "patient" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "Київська обласна лікарня №1" }, "results_interpreter": { "reference": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "employee" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" }, "display_value": "Опанасенко Олексій Володимирович" } }, "primary_source": true, "explanatory_letter": "Звіт був відмінений у зв'язку з помилкою при виборі пацієнта", "cancellation_reason": { "coding": [ { "system": "eHealth/cancellation_reasons", "code": "misspelling" } ], "text": "" } } ], "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

 

 

401

 Unauthorized

 

403

Invalid scopes

 

 

 

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