ЕСОЗ - публічна документація
Get Observations by search params
Purpose
This web service is designed to return observations by patient_id, episode_id, diagnostic_report_id or encouner_id.
Specification
Link | |
Resource | /api/patients/{{patient_id}}/observations |
Scope | observation:read |
Components | Episode of Care |
Microservices | API paragraph not found |
Protocol type | REST |
Request type | GET |
Sync/Async | Sync |
Public/Private/Internal | Public |
Filters
Filter | Values | Type | Description | Example |
---|---|---|---|---|
page |
| Number | Page number |
|
page_size |
| Number | A limit on the number of objects to be returned, between 1 and 100. Default: 50 |
|
code |
| String |
|
|
encounter_id |
| String |
|
|
diagnostic_report_id |
| String |
|
|
episode_id |
| String |
|
|
issued_from |
| String |
|
|
issued_to |
| String |
|
|
Request structure
See on Apiary
Authorize
Request to process the request using a token in the headers
Verify the validity of access token
Return 401 in case validation fails
Verify token is not expired
in case error return 401
Check user scopes in order to perform this action (scope = 'observation:read')
Return 403 in case invalid scope(s)
Headers
Наприклад:
Content-Type:application/json
Authorization:Bearer {{access_token}}
API-key:{{secret}}
Request data validation
Access to the resource is also managed by ABAC module.
Validate patient
Validate patient exists in MongoDB
In case of error return 404 not found
Processing
In case episode_id was submitted as a search param:
Select all encounters.id where ME.patinents{patient_id}.encounters{*}.episode.identifier.value== episode_id
Select all observations where ME.patients{patient_id}.observationd{*}.context.identifier.value == Select 1
Response structure
See on Apiary
Example:
Post-processing processes
API paragraph not found
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
200 |
|
|
401 |
| Access token validation failed |
403 |
| Invalid scope |
ЕСОЗ - публічна документація