ЕСОЗ - публічна документація
[DRAFT] Get Person details [API-005-010-006-0204]
Сторінка знаходиться в процесі розробки. Інформація на ній може бути застарілою.
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 | [DRAFT] Get Person details [API-005-010-006-0204] |
Guideline ID | GUI-0011 |
Author | @Viacheslav Tybin (SoE eHealth) |
Document version | 1 |
Document status | DRAFT |
Date of creation | ХХ.ХХ.ХХХХ (дата фінальної версії документа – RC або PROD) |
Date of update | ХХ.ХХ.ХХХХ (дата зміни версії) |
Method API ID | API-005-010-006-0204 |
Microservices (namespace) | IL |
Component | Patient Cabinet |
Component ID | COM-005-010 |
Link на API-специфікацію | https://ehealthmisapi1.docs.apiary.io/#reference/public.-patient-cabinet/cabinet/get-person-details |
Resource | {{host}}/api/cabinet/persons/details |
Scope | person:read |
Protocol type | REST |
Request type | GET |
Sync/Async | Sync |
Public/Private | Public |
Purpose
This WS is designed to get person details in a cabinet. Every patient can obtain only it's own details.
Logic
N/A
Configuration parameters
N/A
Dictionaries
GENDER
DOCUMENT_TYPE
ADDRESS_TYPE
COUNTRY
SETTLEMENT_TYPE
STREET_TYPE
PHONE_TYPE
AUTHENTICATION_METHOD
PREFERRED_WAY_COMMUNICATION
Input parameters
Input parameter | Mandatory | Type | Description | Example | |
---|---|---|---|---|---|
1 |
|
|
|
|
|
2 |
|
|
|
|
|
Request structure
See on API-specification
Headers
Request data validation
Validate token
Check token existance
in case error return 404 - token was not found
Check expiration date tokens.expires_at
if tokens.expires_at < now() return 401 - access denied
Extract party_user (user_id) from token
Check user scopes in order to perform this action (scope = ''person:read")
Return 403 in case invalid scope(s) - "Your scope does not allow to access this resource. Missing allowances: "person:read"
Validate role
Check users_roles.user_id=&.user and user_roles.role_id = roles.id where roles.name = CABINET
in case error return 403
Validate person
Check if mithril.users.person_id = mpi.persons.id and mithril.users.tax_id = mpi.persons.tax_id
in case error return 401
Check if users.is_blocked = false
in case error return 401
Check users password is not expired
in case error return 401 - password expired
Processing
In case nothing found return 404 - user was not found
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 | Access denied | Validation failed |
|
4 |
| 401 | Password expired | Validation failed |
|
5 |
| 403 | Your scope does not allow to access this resource. Missing allowances: "person:read" | Validation failed |
|
6 |
| 404 | Token was not found | Validation failed |
|
7 |
| 404 | User was not found | Validation failed |
|
8 | Специфічні | ||||
9 |
|
|
|
|
|
Post-processing processes
N/A
Technical modules where the method is used
Название | ID ТМ | Статус |
---|---|---|
TM0112 |
| |
|
|
ЕСОЗ - публічна документація