Versions Compared

Key

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

...

This WS allows to get a list of divisions of legal entity. Also, this list can be filtered using search parameters.

...

.

  1. Only authenticated and authorized owners with appropriate scope can get a list of divisions.

  2. Method returns a list of divisions for user’s legal entity only.

  3. List can be filtered by search params.

Logic

  1. Get client_id from token as legal entity identifier

  2. Define all the divisions of the legal entity

  3. Get and render all the records with defined divisions from divisions table filtered by search params.

...

Page Properties
idAPI_Specification

Link

https://ehealthmisapi1.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/divisions/get-divisions

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

Resource

/api/divisions

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

Scope

division:read

Scope для доступу

Components

Divisions

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

Microservices

il/api

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

Protocol type

REST

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

Request type

GET

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

Sync/Async

Sync

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

Public/Private/Internal

Public

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

Filters

All search params are optional. Search with a few params executes according to the logical AND rule.

...

Content-Type:application/json
Authorization:Bearer {{access_token}}
API-key:{{secret}}

Request data validation

See on Apiary

Processing

...

Only authenticated and authorized owners with appropriate scope can get a list of divisions.

...

Method returns a list of divisions for user’s legal entity only.

...

Validate legal entity

  • Extract client_id from token.

  • Check client scopes in order to perform this action (scope = 'division:read')

    • in case of error - return 403 “Your scope does not allow to access this resource. Missing allowances: division:read”

  • Check legal entity status (status = ACTIVE, SUSPENDED)

    • In case of error - return 422 “Legal entity is not active”

Response structure

Example:

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": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "name": "Бориспільське відділення Клініки Ноунейм",
    "addresses": [
      {
        "type": "RESIDENCE",
        "country": "UA",
        "area": "Житомирська",
        "region": "Бердичівський",
        "settlement": "Київ",
        "settlement_type": "CITY",
        "settlement_id": "b075f148",
        "street_type": "STREET",
        "street": "вул. Ніжинська",
        "building": "15",
        "apartment": "23",
        "zip": "02090"
      }
    ],
    "phones": [
      {
        "type": "MOBILE",
        "number": "+380503410870"
      }
    ],
    "email": "email@example.com",
    "working_hours": {
      "mon": [
        [
          "08.00",
          "12.00"
        ],
        [
          "14.00",
          "18.00"
        ]
      ],
      "tue": [
        [
          "08.00",
          "12.00"
        ]
      ],
      "wed": [
        [
          "08.00",
          "12.00"
        ]
      ],
      "thu": [
        [
          "08.00",
          "12.00"
        ]
      ],
      "fri": [
        [
          "08.00",
          "12.00"
        ]
      ]
    },
    "type": "CLINIC",
    "legal_entity_id": "c8aadb87-ecb9-41ca-9ad4-ffdfe1dd89c9",
    "external_id": "3213213",
    "location": {
      "latitude": 30.1233,
      "longitude": 50.32423
    },
    "status": "ACTIVE",
    "mountain_group": false,
    "dls_id": "2872985",
    "dls_verified": true
  },
  "paging": {
    "page_number": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 23
  }
}

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

 

401

Authorization failed

403

Invalid scopes

422

Validation failed