Versions Compared

Key

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

...

Table of Contents

Purpose

This web service is designed to provide access to patient's Medication Statements as a part of Patient Summary

 

Specification

Page Properties
idAPI_Specification

...

  1. Get Medication Statements by search params

  2. Get Medication Statement by id

Authorization

Link

https://ehealthmedicaleventsapi.docs.apiary.io/#reference/medical-events/patient-summary/get-medication-statement-by-search-params

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

Resource

/api/patients/{{patient_id}}/summary/medication_statements

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

Scope

patient_summary:read

Scope для доступу

Components

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

Microservices

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

Protocol type

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

Request type

GET

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

Sync/Async

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

Public/Private/Internal

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

Logic

API paragraph not found

 

Filters

Filter

Values

Type

Description

Example

page

Number

Page number

Example: 2

page_size

Number

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

Example: 50

medication_code

String

spine_board

asserted_date_from

String

1990-01-01

asserted_date_to

String

2000-01-01

Request structure

See on Apiary

 

Authorize

Request to process the request using a token in the headers

 

Headers

  • Content-Type:application/json

  • Authorization:Bearer mF_9.B5f-4.1JqM

  • X-Custom-PSK:a2aa05c76f3f2d91870f923a53cc8aa8f23bbc01a8238d1c2c26d4299715a7e4

 

Request data validation

Validate token

  • Verify the validity of access token

    • Return 401 in case validation fails

  • Verify token is not expired

    • in case error return 401

Validate scopes

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

    1. Return 403 in case invalid scope(s)

Validate patient

  • Validate patient exists in MongoDB

    • In case of error return 404 not found

Processing

  1. Get all patient's medication statements

  2. Apply filters provided by user

Response structure

See on Apiary

Expand
titleRequest example
Code Block
{
  "meta": {
    "code": 200,
    "url": "http://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "data": [
    {
      "id": "80a9e15b-b71b-4caf-8f2e-ff247e8a5600",
      "based_on": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "medication_request"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        }
      },
      "asserted_date": "2018-08-02T10:45:00.000Z",
      "status": "active",
      "context": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "encounter"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        }
      },
      "primary_source": true,
      "asserter": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "employee"
              }
            ],
            "text": ""
          },
          "value": "97d57238-ffbe-4335-92ea-28d4de117ea2"
        }
      },
      "effective_period": "Вживає з 2017-го року регулярно",
      "medication_code": {
        "coding": [
          {
            "system": "eHealth/medical_statement_medications",
            "code": "Spine_board"
          }
        ]
      },
      "note": "Some text",
      "dosage": "5 ml/day",
      "inserted_at": "2018-08-02T10:55:00.000Z",
      "updated_at": "2018-08-02T10:55:00.000Z"
    }
  ],
  "paging": {
    "page": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 20
  }
}

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