Table of Contents | ||||
---|---|---|---|---|
|
Purpose*
Returns declaration requests that were created through V2 and V3.
Specification*
...
Link
...
...
Resource
...
/api/v3/declaration_requests/{id}
...
Scope
...
declaration_request:read
...
Components
...
<Необхідно зазначити перелік компонентів, які використовують цей метод, наприклад: ePrescription>
...
Global and configure parameters
...
<Потрібно вказати глобальні та конфігураційні параметри>
...
Using Dictionaries
...
<Потрібно вказати словники, які використовує метод API>
...
Using Microservices
...
<Вкажіть перелік мікросервісів, які використовує метод API. Наприклад: Auth, ABAC>
...
Protocol type
...
REST API
...
Request type
...
GET
...
Sync/Async
...
<Метод є синхронним чи асинхронним?>
Logic*
Fields person_id
and data_to_be_signed
will be empty if declaration request is created by V2.
Only authenticated and authorized user can use declaration request
The service returns only a declaration request that was created in the same legal entity as the user
Input parameters
...
Filter
...
Values
...
Type
...
Description
...
Example
...
id
...
...
String
...
request identifier
...
d290f1ee-6c54-4b01-90e6-d701748f0851
Request structure*
See on Apiary
Authorize*
Verify the validity of access token
Return 401 in case validation fails
Check scopes in order to perform this action (scope = 'declaration_request:read')
Return 403 in case invalid scope(s)
Request to process the request using a token in the headers.
Headers*
Content-Type:application/json
Authorization:Bearer c2778f3064753ea70de870a53795f5c9
Validate request (JSON schema)*
<Наприклад:
Validate request using JSON schema
In case validation failed - generate 422 error
Expand | ||
---|---|---|
| ||
|
Validation data request*
<Валідація даних>
Processing*
1. Using global parameters
<Потрібно викликати глобальні параметри (Global parameters), щоб отримати наведені нижче параметри>
2. Generate structure for response
<Наприклад:
Collect response array for all programs in payload with status for each (VALID or INVALID) and rejection_reason
For all VALID programs - Get linked medications (type = BRAND) with reimbursement info
Show only active program medications based on start_date and end (start_date must be earlier or equal to the current date or empty, end_date must be greater or equal to the current date or empty)
...
Code Block |
---|
IF EXISTS
(SELECT * FROM program_medications MP
INNER JOIN medications M
ON M.id = MP.medication_id
AND M.type = BRANDS
INNER JOIN ingredients I
ON I.parend_id = M.id
AND I.is_primary = TRUE
AND I.medication_child_id = _MR.medication_id
WHERE MP.medical_program_id == $.id
AND MP.is_active == TRUE
AND M.is_active == TRUE)
|
>
...
Table of Contents | ||||
---|---|---|---|---|
|
Purpose
This WS is designed to get declaration requests details
Key features
Only authenticated and authorized employee with appropriate scope can get declaration requests list.
The service can return only declaration request that was created in the same legal entity as the user or assigned to legal entity and shared
Specification
Link | |
Resource | /api/v3/declaration_requests/{{id}} |
Scope | declaration_request:read |
Components | Declarations |
Using Microservices | il/api ops/api |
Protocol type | REST |
Request type | GET |
Sync/Async | API paragraph not found |
Public/Private/Internal | Public |
Logic
Get declaration request details from il.declaration_requests table by declaration request id from request
Generate URL to get signed_content (optional)
Generate URL only in case of:
channel = PIS and status APPROVED
Put url to urgent section
Render response according to specification.
Use ael service
Parameter | Source |
---|---|
action | 'GET' |
bucket | 'DECLARATION_REQUESTS' |
resource_id | :DECLARATION_REQUEST_ID |
resource_name | signed_content |
Validate Declaration request
Check that declaration request:
exists in il DB
is_shareable = true or channel = MIS
belongs to legal entity (get user from token, find employee associated with this user and ensure that this employee has at least one role in the same legal entity as in declaration request)
in case of error - return 404 ('not found')
Input parameters
Filter | Values | Type | Description | Example |
---|---|---|---|---|
id |
| String | request identifier |
|
Authorize
Verify the validity of access token
in case of error - 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 = 'declaration_request:read')
return 403 (“Your scope does not allow to access this resource. Missing allowances: declaration_request:read”) in case of invalid scope(s)
Headers
Content-Type:application/json
Authorization:Bearer {{access_token}}
X-Custom-PSK:{{secret}}
Response structure
Print form is generated after approve declaration request, so in response on Get decl declaration request by id show fields context
and data_to_be_signed
if DR approved.
See on Apiary
Expand | ||
---|---|---|
| ||
|
Post-processing processes*
<Що має відбутися в ЦБД після опрацювання запиту>
HTTP status codes
HTTP status code | Message | What caused the error |
---|
200 | Response |
|
401 | Access token validation failed | |
403 | Invalid scope |
Backward compatibility
This endpoint shows the declaration requests which are created by V2 and V3. Due to the fact that structure of declaration request V2 is different from the structure of decl declaration request V3 , so not all fields od decl of declaration request v2 can be displayed.