Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel7

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

Page Properties
idAPI_Specification

Link

https://uaehealthapi.docs.apiary.io/#reference/public.-medical-programs/medical-program/get-services-dictionary

Посилання на Apiary або Swagger

Resource

/api/services

Посилання на ресурс, наприклад: /api/persons/create

Scope

API paragraph not found

Scope для доступу

Components

Medical Programs

Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription

Microservices

API paragraph not found

Перелік мікросервісів, які використовує метод API, наприклад: Auth, ABAC

Protocol type

REST

Тип протоколу, який використовується запитом, наприклад: SOAP | REST

Request type

GET

Тип запиту API, наприклад: GET, POST, PATCH…

Sync/Async

Sync

Метод є синхронним чи асинхронним?

Public/Private/Internal

Public

Потрібно зазначити тип методу за ступенем доступності

Logic

  1. Filter services by search params.

  2. Render found services with all fields from PRM DB.

Input parameters

API paragraph not found

Filters

See on Apiary

Request structure

API paragraph not found

Authorize

Request to process the request using a token in the headers

Headers

Наприклад:

Content-Type:application/json

...

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)

  1. Get service_group

  2. Get services

  3. Get service_inclusions (where service_inclusion.is_active = true)

  4. Filter list above by submitted search parameters

  5. Render a response according to specification with found service entities.

Response structure

See on Apiary

Response tree structure

Expand
titleResponse 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

  • service_groups with parent_group_id with service_groups of the first node

  • services which are included in the service_groups of the Node 1

Node 3

  • service_groups with parent_group_id with service_groups from the second node

  • services which are included in the service_groups of the Node 2

Node 4

  • service_groups with parent_group_id with service_groups from the third node

  • services which are included in the service_groups of the Node 3

Node 5

  • services which are included in the service_groups of the Node 4

...

Expand
titleResponse example
Code Block
{
  "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

Page Properties
idAPI_HTTP status codes

HTTP status code

Message

What caused the error

 200

 Response