ЕСОЗ - публічна документація
Get Device request details
Purpose
This WS is designed to return Device request details by identifier.
Specification
Link | Посилання на Apiary або Swagger | |
Resource | /api/patients/{{patient_id}}/device_requests/{{device_request_id}} | Посилання на ресурс, наприклад: /api/persons/create |
Scope |
| Scope для доступу |
Components | Devices | Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription |
Microservices |
| Перелік мікросервісів, які використовує метод API, наприклад: Auth, ABAC |
Protocol type | REST | Тип протоколу, який використовується запитом, наприклад: SOAP | REST |
Request type | GET | Тип запиту API, наприклад: GET, POST, PATCH… |
Sync/Async | Sync | Метод є синхронним чи асинхронним? |
Public/Private/Internal | Public | Потрібно зазначити тип методу за ступенем доступності |
Logic
Service returns specified Device requests related to the patient:
Get Device requests from device_request collection (MongoDB)
Validate data consistency:
Ensure that requested Device requests relates to requested Patient (from URL)
Return 403 ('Access denied') in case of error
Fill in
urgent
block with current authentication method and verification_code field:Get program from request and (if provided) get program setting
request_notification_disabled
If person has OTP or THIRD_PERSON (with OTP) authentication method and
request_notification_disabled
= false/null (or absent), then set phone_number and verification_code=nullif person has OTP or THIRD_PERSON (with OTP) authentication method and
request_notification_disabled
= true, then set verification_code and phone_number
Render a response according to the specification
Calculate remaining quantity:
Select all Device dispenses in status completed related to the Device request
Sum
quantity
in the filtered Device dispenses as dispensed_qtyCalculate remaining_quantity = requested_quantity- dispensed_quantity
Return remaining_quantity in the response
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
patient_id |
| String | Unique patient identifier |
|
device_request_id |
| String | Unique device request identifier |
|
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 = 'device_request:read')
Return (403, 'Your scope does not allow to access this resource. Missing allowances: device_request:read') in case of invalid scope(s)
Access to the resource is also managed by ABAC rules.
Headers
Content-Type:application/json
Authorization:Bearer mF_9.B5f-4.1JqM
api-key:aFBLVTZ6Z2dON1V
Response structure
See on Apiary
Example:
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
200 |
|
|
404 |
|
|
ЕСОЗ - публічна документація