Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Table of Contents

...

Apiary

Purpose

...

Table of Contents

Purpose

This method returns details of the specified capitation report

Specification

Page Properties
idAPI_Specification

Link

https://ehealthmisapi1.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/capitation-reports/get-capitation-report-details

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

Resource

/api/capitation_report_details

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

Scope

capitation_report:read

Scope для доступу

Components

Contracts

Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: 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

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

Filters

See on Apiary

Authorize

  1. Verify the validity of access token

    1. in case of error return 401 ('Access denied')

  2. Check user scope capitation_report:read in order to perform this action

    1. in case of

...

    1. error generate 401 response ('Invalid scopes')

Headers

Наприклад:

Content-Type:application/json

Request data validation

Verify role

Extract from token:

  1. Validate client_id (is_blocked=false)

    1. in case of error return 403 Error ('Client is blocked')

  2. In case WS was called by MSP check contractor_legal_entity is active

    • in case error return 403 - ('Client is not active')

Response structure

  1. Generate synthetical id for each object in response

    1. id = edrpou +  '-' + report_id

  2. In case WS was called by NHS

    1. Select

...

    1. all capitation

...

    1. _report_details by id

    2. Return the result

  1. In case WS was called by MSP

...

    1. Extract legal_entity_id from token

...

    1. search for merged_from_legal_entities 

    2. Select capitation_report_details

...

    1. where legal_entity_id =

...

    1.  legal_entity_

...

    1. id (from step a

...

    1. ) and legal_entity_id = merged_from_legal_entities_id (from step b)

    2. Return the result

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": "29000165-09106b70-18b0-4726-b0ed-6bda1369fd52",
      "biling_date": "2017-04-20",
      "report_id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
      "legal_entity_id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
      "edrpou": "29000165",
      "legal_entity_name": "Поліклініка для Капітації",
      "capitation_contracts": [
        {
          "contract_id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
          "contract_number": "0000-9EAX-XT7X-3115",
          "details": [
            {
              "mountain_group": true,
              "attributes": {
                "0-5": 17,
                "6-17": 7,
                "18-39": 9,
                "40-65": 12,
                "65+": 15
              }
            },
            {
              "mountain_group": false,
              "attributes": {
                "0-5": 22,
                "6-17": 10,
                "18-39": 15,
                "40-65": 19,
                "65+": 21
              }
            }
          ],
          "total": {
            "attributes": {
              "0-5": 39,
              "6-17": 17,
              "18-39": 24,
              "40-65": 31,
              "65+": 36
            }
          }
        }
      ]
    }
  ]
}

HTTP status codes

Page Properties
idAPI_HTTP status codes

HTTP status code

Message

What caused the error

200

 Response

 

401

  • Invalid scopes

  • Access denied

 

403

  • Client is not active

  • Client is blocked