Versions Compared

Key

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

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Required parameters are marked with "*"

...

Purpose*

Use this method to obtain list of Declaration Requests for an empolee_id.

Specification*

...

Link

...

Purpose

This WS is designed to get declaration requests list.

Key features

  1. Only authenticated and authorized employee with appropriate scope can get declaration requests list.

  2. The service returns only a declaration requests that were created in the same legal entity as the user

  3. Method returns shortened declaration request details, to obtain full information - use Get Declaration request by ID method.

Specification

Using Dictionaries

Потрібно вказати словники, які використовує метод API

Using Microservices

Вкажіть перелік мікросервісів, які використовує метод API. Наприклад: Auth, ABAC

Protocol type

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

Link

https://uaehealthapi.docs.apiary.io/#reference/public.-medical-service-provider-integration-layer/declaration-requests/get-declaration-requests-list-v3

Resource

/api/v3/declaration_requests

Scope

declaration_request:read

Components

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

Declarations

Microservices

il/api

ops/api

Protocol type

REST

Request type

GET

Sync/Async

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

Logic*

  1. Only authenticated and authorized user can use declaration requests

If you want to reduce amount of data that is going trough your application, use status filter and show only requests that Doctor or Admin is interested in current UI section.

Also we suggest use employee_id and legal_entity_id to make sure that end-user understands context of actions that he or she will perform.

Method returns shortened details, to obtain full information - get Declaration Request it by it's ID.

Important

This endpoint shows the declaration requests which are created by V2 and V3. Due to the fact that structure of declaration request V3 is different from the structure of decl request V2 , so not all fields of declaration request v2 can be displayed. If declaration request is created by v2, the field person_id will be empty

Filters

Filter

Values

Type

Description

Example

 employee_id

 

String

user_id of a doctor

d290f1ee-6c54-4b01-90e6-d701748f0851

legal_entity_id

String

MSP ID

d290f1ee-6c54-4b01-90e6-d701748f0851

status

  • NEW

  • APPROVED

  • SIGNED

  • REJECTED

  • CANCELLED

Enum

 

active

page

Number

Page number

2

page_size

Sync

Public/Private/Internal

Public

Logic

  1. Extract client_id from token. Filter declaration requests by client_id (legal_entity_id)

  2. Filter declaration requests to show only originated by legal entity or shared with legal entity (channel == MIS OR is_shareable == True)

  3. Filter declaration requests by search params (If legal_entity_id is differ from client_id in token - empty list must be returned)

  4. Render found declaration requests with shortened details according to specification

Filters

Parameter

Value

Type

Description

employee_id

 

String(UUID)

Employee identifier

legal_entity_id

 

String(UUID)

Legal entity identifier

status

Dictionary:

DECLARATION_REQUEST_STATUSES

String

Declaration request status according to Status chart

/wiki/spaces/PCAB/pages/17513775491

channel

Dictionary:

DECLARATION_REQUEST_CHANNELS

String

Declaration request channel

page

 

Number

Page number

page_size

 

Number

A limit on the number of objects to be returned, between 1 and 100. Default:

50

50

...

See on Apiary

Authorize

...

  1. Verify the validity of access token

...

    • in case of error - return 401 (“Invalid access token”) in case of validation fails

  1. Verify that token is not expired

    • in case of error - return 401 (“Invalid access token”)

  2. Check user scopes in order to perform this action (scope = 'declaration_request:read')

...

    • return 403 (“Your scope does not allow to access this resource. Missing allowances: declaration_request:read”) in case of invalid scope(s)

Request to process the request using a token in the headers.

Headers

...

  • Content-Type:application/json

  • Authorization:Bearer c2778f3064753ea70de870a53795f5c9

Validate request (JSON schema)*

Наприклад:

  1. Validate request using JSON schema

    1. In case validation failed - generate 422 error

Expand
titleJSON schema
Code Block
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "verification_code": {
      "type": "string"
    }
  },
  "required": [
    "verification_code"
  ],
  "additionalProperties": false
}

Validation data request*

Processing*

Response structure*

  • {{access_token}}

  • X-Custom-PSK:{{secret}}

Response structure

See on Apiary

Expand
titleRequest example
Code Block
{
  "meta": {
    "code": 200,
    "url": "https://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda6617aeec-15e2-4d6f-b9bd-53559c358f97#17810"
  },
  "data": [
    {
      "id": "b075f148-7f93-4fc2-b2ec-2d81b19a9b7b",
      "start_date": "2017-03-02",
      "end_date": "2025-03-02",
      "status": "NEW",
      "status_reason": "not relevant",
      "channel": "MIS",
      "person_id": "4fa9cac7-8950-44db-9294-0daba56eed58",
      "employee_id": "60a797bb-43c5-463d-86ee-68e354cb626b",
      "division_id": "4c9c9c6e-5230-444d-8b65-7678da1c1ab3",
      "legal_entity_id": "56b8bcd7-78b8-4ff7-8a60-a48e54a6ef57",
      "authorize_with": "cc949559-5dfe-420f-ac05-065e443b2cc6",
      "parent_declaration_id": "8c7753fc-a647-435f-8e43-4ff4546431f6",
      "system_declaration_limit": 900,
      "current_declaration_count": 675
    }
  ],
  "paging": {
    "page_number": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 23
  }
}

...

HTTP status codes

HTTP status code

Message

What caused the error

 200

200

 Response

 

401

 

Access token validation failed

403

 

Invalid scope

Backward compatibility

This endpoint returns declaration requests that were created through V2 and V3. Field person_id will be empty for declaration request V2.