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

Get Medication Request by ID by Pharmacy User [API-005-008-002-0152]

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-005-008-002-0152

Microservices (namespace)

IL

Component

ePrescription

Component ID

COM-005-008

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

https://ehealthmisapi1.docs.apiary.io/#reference/public.-reimbursement/medication-request/get-medication-request-by-id-by-pharmacy-user

Resource

{{host}}/api/pharmacy/medication_requests/{{id}}

Scope

medication_request:details_pharm

Protocol type

REST

Request type

GET

Sync/Async

Sync

Public/Private

Public

Purpose

This WS is designed to return medication request details by Pharmacy users. Receiving Medication request is possible by identifier or request_number

Configuration parameters

Dictionaries

Input parameters

Description of input parameters

Input parameter

Mandatory

Type

Description

Example

Input parameter

Mandatory

Type

Description

Example

1

id

 M

String

Medication Request identifier OR request_number

48416485-cc98-46c4-8bba-e321de9e1ecd

Request structure

See on API-specification (посилання на сторінку з API-специфікацією)

Description of the REST API request structure, example

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 = 'medication_request:details_pharm')

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

Processing

Logic

Service returns specified Medication requests related to the patient:

  1. Get Medication requests from medication_requests (OPS database).

  2. Validate data consistency:

    1. Ensure that requested Medication relates to requested parameters

      1. Return 404 ('Not found') in case of error.

  3. Render a response according to specification

    1. Calculate medication remaining quantity:

      1. Select all Medication dispenses in status PROCESSED related to the Medication request.

      2. Sum medication_qty in the filtered Medication dispenses as dispensed_qty.

      3. Calculate medication_remaining_qty = medication_qty - dispensed_qty.

    2. Return medication_remaining_qty in the response.

Технічний опис бізнес-процесу погашення рецепту в ЦБД ЕСОЗ

Процеси роботи з погашенням електронних рецептів

Response structure examples

See on API-specification (посилання на сторінку з API-специфікацією)

Description of the REST API response structure, example

{ "meta": { "code": 200, "url": "https://example.com/resource", "type": "object", "request_id": "req-adasdoijasdojsda" }, "data": { "id": "b075f148-7f93-4fc2-b2ec-2d81b19a9b7b", "status": "ACTIVE", "request_number": "0000-243P-1X53-EH38", "created_at": "2017-08-17", "started_at": "2017-08-17", "ended_at": "2017-09-16", "dispense_valid_from": "2017-08-17", "dispense_valid_to": "2017-09-16", "person": { "short_name": "Петро І. І.", "age": 35 }, "medication_info": { "medication_id": "4a63b858-c138-4921-9341-ae9e384bcbd6", "medication_name": "Аміодарон 200мг таблетки", "form": "PILL", "dosage": { "numerator_unit": "MG", "numerator_value": 200, "denumerator_unit": "PILL", "denumerator_value": 1 }, "ingredients": [ { "id": "1349a693-4db1-4a3f-9ac6-8c2f9e541982", "name": "Інсулін деглюдек", "name_original": "Insulin degludec", "sctid": "52574003", "dosage": { "numerator_unit": "MG", "numerator_value": 200, "denumerator_unit": "PILL", "denumerator_value": 1 }, "is_primary": true } ], "medication_qty": 10.34, "medication_remaining_qty": 10.23 }, "medical_program": { "id": "c7d52544-0bd4-4129-97b0-2d72633e0490", "name": "Доступні ліки", "medical_program_settings": { "care_plan_required": true, "employee_types_to_create_medication_request": [ "SPECIALIST", "DOCTOR" ], "skip_mnn_in_treatment_period": true, "skip_employee_validation": true, "speciality_types_allowed": [ "ENDOCRINOLOGY", "PEDIATRIC_NEUROLOGY" ], "conditions_icd10_am_allowed": [ "A00.0", "A00.1" ], "conditions_icpc2_allowed": [ "A01", "A02" ], "providing_conditions_allowed": [ "INPATIENT", "OUTPATIENT" ], "medication_request_max_period_day": 90, "skip_medication_request_employee_declaration_verify": true, "skip_medication_request_legal_entity_declaration_verify": true, "multi_medication_dispense_allowed": true, "skip_medication_dispense_sign": true, "medication_request_notification_disabled": true, "skip_contract_provision_verify": true, "medication_dispense_period_day": 90 }, "medical_program_settings_text": "Some text", "is_active": true, "medication_dispense_allowed": true, "medication_dispense_allowed_text": "Some text", "medication_request_allowed": true, "medication_request_allowed_text": "Some text", "type": "MEDICATION", "funding_source": "NHS", "inserted_at": "2017-04-20T19:14:13Z", "inserted_by": "e1453f4c-1077-4e85-8c98-c13ffca0063e", "updated_at": "2017-04-20T19:14:13Z", "updated_by": "2922a240-63db-404e-b730-09222bfeb2dd" }, "intent": "plan", "category": "community", "based_on": [ { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "care_plan" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "activity" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } } ], "context": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "encounter" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "dosage_instruction": [ { "sequence": 1, "text": "0.25mg PO every 6-12 hours as needed for menses from Jan 15-20, 2015. Do not exceed more than 4mg per day", "additional_instruction": [ { "coding": [ { "system": "eHealth/SNOMED/additional_dosage_instructions", "code": "311504000" } ] } ], "patient_instruction": "0.25mg PO every 6-12 hours as needed for menses from Jan 15-20, 2015. Do not exceed more than 4mg per day", "timing": { "event": [ "2017-04-20T19:14:13Z" ], "repeat": { "bounds_duration": { "value": 10, "unit": "days", "system": "eHealth/ucum/units", "code": "d" }, "count": 2, "count_max": 4, "duration": 4, "duration_max": 6, "duration_unit": "d", "frequency": 1, "frequency_max": 2, "period": 4, "period_max": 6, "period_unit": "d", "day_of_week": [ "mon" ], "time_of_day": [ "2017-04-20T19:14:13Z" ], "when": [ "WAKE" ], "offset": 4 }, "code": { "coding": [ { "system": "TIMING_ABBREVIATIONS", "code": "patient" } ] } }, "as_needed_boolean": true, "site": { "coding": [ { "system": "eHealth/SNOMED/anatomical_structure_administration_site_codes", "code": "344001" } ] }, "route": { "coding": [ { "system": "eHealth/SNOMED/route_codes", "code": "46713006" } ] }, "method": { "coding": [ { "system": "eHealth/SNOMED/administration_methods", "code": "419747000" } ] }, "dose_and_rate": { "type": { "coding": [ { "system": "eHealth/dose_and_rate", "code": "'ordered'" } ] }, "dose_range": { "low": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" }, "high": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" } }, "rate_ratio": { "numerator": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" }, "denominator": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" } } }, "max_dose_per_period": { "numerator": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" }, "denominator": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" } }, "max_dose_per_administration": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" }, "max_dose_per_lifetime": { "value": 0, "unit": "mg", "system": "eHealth/ucum/units", "code": "mg" } } ], "reject_reason": "Incompatible drugs", "reject_reason_code": "PATIENT_REJECT", "is_blocked": false, "block_reason": "Підозра на фрод", "block_reason_code": "WRONG_QTY_DRUG", "priority": "routine", "prior_prescription": { "identifier": { "type": { "coding": [ { "system": "eHealth/resources", "code": "medication_request" } ] }, "value": "9183a36b-4d45-4244-9339-63d81cd08d9c" } }, "container_dosage": { "system": "MEDICATION_UNIT", "code": "ML", "value": 4 } } }

HTTP status codes

Response code

HTTP Status code

Message

Internal name

Description

Response code

HTTP Status code

Message

Internal name

Description

1

Базові

2

 

404

Not found

 

не знайдено

3

 

401

Invalid access token

 

Недійсний токен доступу

4

 

403

Your scope does not allow to access this resource. Missing allowances: medication_request:details_pharm

 

Для вашої ролі відсутній доступ до цього ресурсу. Необхідний доступ на отримання працівником аптеки деталей рецепта

5

Специфічні

6

 

 

 

 

 

Post-processing processes

No

Technical modules where the method is used

List of pages describing technical modules where the method is used

 

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