Versions Compared

Key

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

Required parameters are marked with "*"

...

Purpose

...

This service is designed to obtain list of capitation or reimbursement contracts by NHS or Legal Entity employee.
Contract type should be declared in the url.

Specification

...

Page Properties

Link

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

Resource

/api/contracts/{{contract_type}}

Scope

contract:read

Components

Contracts

Microservices

API paragraph not found

Protocol type

REST

Request type

GET

Sync/Async

Sync

Public/Private/Internal

Public

Logic

...

This method is designed to obtain list of contracts with filters. This method return shorten information about contract, in order to see all information try to use 'get contract details'.

Contract type (capitation or reimbursement) should be declared in the url.

Filters

Filter

Values

Type

Description

Example

id

String

id of contract request

b075f148-7f93-4fc2-b2ec-2d81b19a9b7b

contractor_legal_entity_id

String

id of legal entity which created contract request

b075f148-7f93-4fc2-b2ec-2d81b19a9b7b

edrpou

String

contractor legal entity EDRPOU

contractor_owner_id

String

id of legal entity owner

b075f148-7f93-4fc2-b2ec-2d81b19a9b7b

nhs_signer_id

String

id of nhs employee

b075f148-7f93-4fc2-b2ec-2d81b19a9b7b

status

TERMINATED

VERIFIED

Enum

current contract status

VERIFIED

is_suspended

Boolean

wether contract is active

true

date_from_start_date

String

2018-01-01

date_to_start_date

String

2018-01-01

date_from_end_date

String

2018-01-01

date_to_end_date

String

2018-01-01

contract_number

String

human readable number of contract request

0000-9EAX-XT7X-3115

medical_program_id

String

id of a program that is a subject of a contract

2075f148-7f93-4fc2-b2ec-2d81b19a9b7b

page

Number

Page number

2

page_size

Number

A limit on the number of objects to be returned. Maximum: 500

50

Request structure*

API paragraph not found

Authorize*

...

Headers

...

Наприклад:

  • Content-Type:application/json

  • Authorization:Bearer c2778f3064753ea70de870a53795f5c9

Request data validation

...

Validate token

  • Verify the validity of access token

    • Return 401 in case validation fails

  • token is not expired

    • in case error return 401 

...

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

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

Validate employee

extract user_id from token

...

  • if TOKENS_TYPES_PERSONAL

    • return response limited by contractor_legal_entity_id

  • if TOKENS_TYPES_NHS

    • return non limitted response

Processing*

...

Dictionaries

  • CONTRACT_PAYMENT_METHOD

  • CONTRACT_TYPE

  • REIMBURSEMENT_CONTRACT_TYPE

Response structure

...

See on Apiary

Example:

Expand
titleResponse example
Code Block
{
  "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": "b075f148-7f93-4fc2-b2ec-2d81b19a9b7b",
        "party": {
          "first_name": "Петро",
          "last_name": "Іванов",
          "second_name": "Миколайович"
        }
      },
      "contractor_base": "на підставі закону про Медичне обслуговування населення",
      "status": "VERIFIED",
      "contractor_divisions": [
        {
          "id": "2922a240-63db-404e-b730-09222bfeb2dd",
          "name": "Бориспільське відділення Клініки Ноунейм"
        }
      ],
      "external_contractor_flag": true,
      "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,
      "contract_number": "0000-9EAX-XT7X-3115",
      "contract_request_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "start_date": "2017-04-20",
      "end_date": "2018-04-20",
      "is_suspended": "false",
      "id_form": "PMD",
      "parent_contract_id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
      "assignee_id": "22e416c4-5747-41cd-9f73-c3a85cdee885"
    }
  ],
  "paging": {
    "page_number": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 23
  }
}

Expand
titleResponse example
Code Block
{
  "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": "b075f148-7f93-4fc2-b2ec-2d81b19a9b7b",
        "party": {
          "first_name": "Петро",
          "last_name": "Іванов",
          "second_name": "Миколайович"
        }
      },
      "contractor_base": "на підставі закону про Медичне обслуговування населення",
      "status": "VERIFIED",
      "contractor_divisions": [
        {
          "id": "2922a240-63db-404e-b730-09222bfeb2dd",
          "name": "Бориспільське відділення Клініки Ноунейм"
        }
      ],
      "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,
      "contract_number": "0000-9EAX-XT7X-3115",
      "contract_request_id": "df9f70ee-4b12-4740-b0f5-bb5aea116863",
      "start_date": "2017-04-20",
      "end_date": "2018-04-20",
      "is_suspended": "false",
      "id_form": "RMB",
      "parent_contract_id": "09106b70-18b0-4726-b0ed-6bda1369fd52",
      "assignee_id": "22e416c4-5747-41cd-9f73-c3a85cdee885",
      "medical_programs": [
        "3914a240-63db-404e-b730-09222bfeb2d0"
      ]
    }
  ],
  "paging": {
    "page_number": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 23
  }
}

Post-processing processes*

API paragraph not found

HTTP status codes

HTTP status code

Message

What caused the error

 200

 

 

...