REST API method / Метод REST API (настанова) (remove the link block before publishing the document)
Properties of a REST API method document
Document type | Метод REST API |
---|---|
Document title | Terminate declarations via Cabinet |
Guideline ID | GUI-0011 |
Author | |
Document version | 1 |
Document status | DRAFT |
Date of creation | ХХ.ХХ.ХХХХ (дата фінальної версії документа – RC або PROD) |
Date of update | ХХ.ХХ.ХХХХ (дата зміни версії) |
Method API ID | API-005-010-001-0190 |
Microservices (namespace) | IL |
Component | Patient Cabinet |
Component ID | COM-005-010 |
Link на API-специфікацію | |
Resource | {{host}}/api/cabinet/declarations/{{id}}/actions/terminate |
Scope | declaration:terminate |
Protocol type | REST |
Request type | PATCH |
Sync/Async | Sync |
Public/Private | Public |
Purpose
A patient who was registered via cabinet needs to have the possibility to terminate his active declaration.
Logic
Description of the working algorithm of the API method and the interaction of services with each other add Service logic (if necessary)
Configuration parameters
Description of the configuration parameters that are used when processing a request in the system
Dictionaries
PHONE_TYPE
CONFIDANT_PERSON_TYPE
GENDER
PREFERRED_WAY_COMMUNICATION
DOCUMENT_TYPE
DOCUMENT_RELATIONSHIP_TYPE
POSITION
EMPLOYEE_TYPE
EMPLOYEE_STATUS
COUNTRY
EDUCATION_DEGREE
QUALIFICATION_TYPE
SPECIALITY_TYPE
SPECIALITY_LEVEL
SPEC_QUALIFICATION_TYPE
SCIENCE_DEGREE
ADDRESS_TYPE
SETTLEMENT_TYPE
STREET_TYPE
LEGAL_FORM
SPECIALITY_TYPE
Input parameters
Input parameter | Mandatory | Type | Description | Example | |
---|---|---|---|---|---|
1 | id |
| String | Required | b075f148-7f93-4fc2-b2ec-2d81b19a9b7b |
2 |
|
|
|
|
|
Request structure
See on API-specification
Headers
Key | Value | Mandatory | Description | Example | |
---|---|---|---|---|---|
1 | Content-Type | application/json | M | Тип контенту | Content-Type:application/json |
2 | Authorization | Bearer {{access_token}} |
|
| Authorization:Bearer {{access_token}} |
Request data validation
Authorize
Verify the validity of access token
Check user scopes declaration:terminate in order to perform this action
In case error - generate 401 response
Extract user_id from token
Find users.person_id where user_id=$user_id
Validate request
input parameters:
reason_description.
Patient via cabinet can terminate only his own active declaration.
Search declaration by $.declaration_id
in case of error return 404
Check declaration status = active
in case of error return 409. Message: "Declaration is not active"
Validate declarations.person_id=users.person_id
in case of error return 403. Message: "Invalid declaration ID"
Processing
Terminate declaration
Change declaration status to `terminated`
Set then change declarations.reason to `manual_person`
Save "reason_description" to declarations.reason_description
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 |
| User scope check failed | ||
4 | 403 | Invalid declaration ID | Validation failed | ||
5 | 404 |
| Declaration search by $.declaration_id failed | ||
6 | 409 | Declaration is not active | Validation failed | ||
7 | Специфічні | ||||
8 |
|
Post-processing processes
Description of actions performed on data after processing
Technical modules where the method is used
List of pages describing technical modules where the method is used
Название | ID ТМ | Статус |
---|---|---|
TM0112 | ||