Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
REST API method / Метод REST API (настанова)
Info
Note

Сторінка знаходиться в процесі розробки. Інформація на ній може бути застарілою.

Info

/wiki/spaces/EN/pages/17591304241 (remove the link block before publishing the document)

Table of Contents

Properties of a REST API method document

Page Properties
idpage_properties_method_REST API

Document type

Метод REST API

Document title

[Document statusDRAFT] REST API [Назва методу] [ID методуPublic. Get Contract Requests list [API-005-002-002-0048]

Guideline ID

GUI-0011

Author

@

Document version

1

Document status

DRAFT

Date of creation

ХХ.ХХ.ХХХХ (дата фінальної версії документа – RC або PROD)

Date of update

ХХ.ХХ.ХХХХ (дата зміни версії)

Method API ID

API-005-002-002-0048

Microservices (namespace)

IL

Component

Contracts

Component ID

COM-005-002

Link на API-специфікацію

https://ehealthmisapi1.docs.apiary.io/#reference/public.-contracts/contract-request/public.-get-contract-requests-list

Resource

{{host}}/api/contract_requests/{{contract_type}}

Scope

contract_request:read

Protocol type

REST

Request type

GET

Sync/Async

Sync

Public/Private

Public

Purpose

This service is designed to obtain a list of capitation or reimbursement contract_requests by NHS employee (private API) or by MSP (public API).

Logic

Contract_type should be declared in the URL.

Configuration parameters

Description of the configuration parameters that are used when processing a request in the system

Dictionaries

Provides a list of links to dictionaries that are available in ConfluenceN/A

Dictionaries

  • CONTRACT_PAYMENT_METHOD

  • CONTRACT_TYPE

  • REIMBURSEMENT_CONTRACT_TYPE

Input parameters

Description of input parameters

Input parameter

Mandatory

Type

Description

Example

1

contract_type

CAPITATION

REIMBURSEMENT

String

Required

 

2

Request structure

See on API-specification (посилання на сторінку з API-специфікацією)Description of the REST API request structure, example

Expand
titleExample
Code Block

Headers

...

Key

...

Value

...

Mandatory

...

Description

...

Example

...

Content-Type

...

application/json

...

M

...

Тип контенту

...

Content-Type:application/json

...

Authorization

...

Bearer c2778f3064753ea70de870a53795f5c9

...

M

...

Перевірка користувача

...

Authorization:Bearer c2778f3064753ea70de870a53795f5c9

...

languagejson

Headers

Headers

Request data validation

Authorize

Request to process the request using a token in the headers

Validate token

  • Verify the validity of access token

    • Return 401 in case validation fails

  • token is not expired

    • in case error return 401 

Validate scopes

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

    1. Return 403 in case invalid scope(s) -"Your scope does not allow to access this resource. Missing allowances: contract_requests:read"

Validate employee

extract user_id from token

...

  • Check if user is active

    • in case error return 403 - "user is not active"

  • Check nhs_legal_entity is active

    • in case error return 403 - "Client is not active"

Validate context

Return response to user limited by context from user's token

  • if TOKENS_TYPES_PERSONAL

    • return response limited by contractor_legal_entity_id

  • if TOKENS_TYPES_NHS

    • return non limitted response

Dictionaries

  • CONTRACT_PAYMENT_METHOD

  • CONTRACT_TYPE

  • REIMBURSEMENT_CONTRACT_TYPE

Processing

A list of processes related to receiving, changing or transmitting data according to the logic defined in the REST APIN/A

Response structure examples

See on API-specification (посилання на сторінку з API-специфікацією)

Description of the REST API response structure, example

Example:

Expand
titleResponse example
Code Block
languagejson
{
  "meta": {
    "code": 200,
    "url": "https://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "data": [
    {
      "id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
      "contract_type": "CAPITATION",
      "contractor_legal_entity_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "contractor_owner_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "contractor_base": "на підставі закону про Медичне обслуговування населення",
      "status": "NEW",
      "status_reason": "Не відповідає попереднім домовленостям",
      "nhs_signer_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "nhs_legal_entity_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "nhs_signer_base": "на підставі наказу",
      "issue_city": "Київ",
      "nhs_contract_price": 50000,
      "nhs_payment_method": "prepayment",
      "contract_number": "0000-9EAX-XT7X-3115",
      "contract_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "parent_contract_id": "22e416c4-5747-41cd-9f73-c3a85cdee885",
      "start_date": "2017-04-20",
      "end_date": "2017-04-20"
    }
  ],
  "paging": {
    "page_number": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 23
  }
}

...

Expand
titleResponse example
Code Block
languagejson
{
  "meta": {
    "code": 200,
    "url": "https://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "data": [
    {
      "id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
      "contract_type": "REIMBURSEMENT",
      "contractor_legal_entity_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "contractor_owner_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "contractor_base": "на підставі закону про Медичне обслуговування населення",
      "status": "NEW",
      "status_reason": "Не відповідає попереднім домовленостям",
      "nhs_signer_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "nhs_legal_entity_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "nhs_signer_base": "на підставі наказу",
      "issue_city": "Київ",
      "nhs_payment_method": "prepayment",
      "contract_number": "0000-9EAX-XT7X-3115",
      "contract_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "parent_contract_id": "22e416c4-5747-41cd-9f73-c3a85cdee885",
      "start_date": "2017-04-20",
      "end_date": "2017-04-20",
      "medical_programs": [
        "3914a240-63db-404e-b730-09222bfeb2d0"
      ]
    }
  ],
  "paging": {
    "page_number": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 23
  }
}

If no contract request is found return 200 and empty array

HTTP status codes

Response code

HTTP Status code

Message

Internal name

Description

1

Базові

2

200

 Response

 

3

401

 

Access

 Access token validation failed

4

401

The token has expired

4

401

Unauthorized

Помилка підтвердження

5

403

Client is not active

 

6

403

User is not active

7

403

Your scope does not allow to access this resource. Missing allowances: contract_requests:read

8

1000

404

Composition not found

COMPOSITION_NOT_FOUND_404

Не знайдено медичний висновок

9

Специфічні

10

422

Only for active MPI record can be created medication request!

Специфічні

9

Post-processing processes

Description of actions performed on data after processing

Technical modules where the method is used

List of pages describing technical N/A

Technical modules where the method is used

Page Properties Report
headingsID ТМ, Статус
cqllabel = "tr-mis"

...