Purpose
This web service returns a catalog of services that could be submitted to eHealth. The catalog has a tree data structure. Each node represents group of services (or sub-group), except end-node, that represents services themselves. Maximum nesting level is 4.
Specification
Logic
Filter services by search params.
Render found services with all fields from PRM DB.
Filters
See on Apiary
Request structure
Authorize
Request to process the request using a token in the headers
Наприклад:
Content-Type:application/json
Authorization:Bearer c2778f3064753ea70de870a53795f5c9
api-key:uXhEczJ56adsfh3Ri9SUkc4en
Request data validation
API paragraph not found
Processing
Service logic
Service returns all services grouped by service_groups (skipping services and service groups if them service_inclusion.is_active = false) filtered by submitted parameters from redis (origin PRM DB)
Get service_group
Get services
Get service_inclusions (where service_inclusion.is_active = true)
Filter list above by submitted search parameters
Render a response according to specification with found service entities.
Response structure
See on Apiary
Response tree structure
Response tree structure
Node 1
service_groups w/o sub-groups, w/o parent_group_id
service_groups with sub-groups, w/o parent_group_id
services which aren't included in any service_groups
Node 2
Node 3
Node 4
Node 5
Example:
Response example
{
"meta": {
"code": 200,
"url": "https://example.com/resource",
"type": "object",
"request_id": "6617aeec-15e2-4d6f-b9bd-53559c358f97#17810"
},
"data": {
"id": "e5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"name": "`Ультразвукові дослідження'",
"code": "FJ",
"is_active": true,
"request_allowed": false,
"inserted_at": "2018-08-02T10:45:16.000Z",
"inserted_by": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"updated_at": "2018-08-02T10:45:16.000Z",
"updated_by": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"groups": [
{
"id": "75a5d991-0bf7-476f-b3cf-bec73f044b2e",
"name": "`Ультразвукові дослідження в гастроентерології'",
"code": "2FJ",
"is_active": true,
"request_allowed": false,
"inserted_at": "2018-08-02T10:45:16.000Z",
"inserted_by": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"updated_at": "2018-08-02T10:45:16.000Z",
"updated_by": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"services": [
{
"id": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"name": "`Ультразвукове дослідження черевного відділу стравоходу'",
"code": "JF2 01",
"is_active": true,
"parent_id": "null",
"category": "imaging",
"is_composition": false,
"request_allowed": true,
"inserted_at": "2018-08-02T10:45:16.000Z",
"inserted_by": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e",
"updated_at": "2018-08-02T10:45:16.000Z",
"updated_by": "d5a5d991-0bf7-476f-b3cf-bec73f044b2e"
}
]
}
]
}
}
Post-processing processes
API paragraph not found
HTTP status codes