Versions Compared

Key

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

Purpose

This method allows to get the context of Allergy Intolerance in order to create approval on episode and receive access to other medical events.

Specification

Page Properties
idAPI_Specification

...

або Swagger

Resource

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

Scope

Scope для доступу

Components

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

Microservices

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

Protocol type

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

Request type

GET

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

Sync/Async

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

Public/Private/Internal

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

Service logic

Service returns context (episode), allergy intolerance based on:

  • Get Allergy Intolerance object byallergy_intolerance_id from allergy_intolerances (MongoDB)

  • Get allergy_intolerance.context.identifier from Allergy Intolerance object

  • Call https://e-health-ua.atlassian.net/wiki/spaces/EH/pages/17049388285 :

    • Get Encounter objectby allergy_intolerance.context.identifier (allergy_intolerance.context.identifier = encounter._id)
      AFTER

    • Get encounter.episode from Encounter object

  • Render a response according to specification

Input parameters

Input parameter

Values

Type

Description

Example

patient_id

String

Patient identifier

70a9e15b-b71b-4caf-8f2e-ff247e8a5677

allergy_intolerance_id

String

Allergy Intolerance identifier

a10aeafb-0df2-4091-bc83-f07e92a100ae

Request structure*

See on Apiary

Authorize

  • Verify the validity of access token

    • Return (401, 'Invalid access token') in case of validation fails

  • Verify that token is not expired

    • in case of error - return (401, 'Invalid access token')

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

    • Return (403, 'Your scope does not allow to access this resource. Missing allowances: medical_event_context:read') in case of invalid scope(s)

...

Headers

  • Content-Type:application/json

  • Authorization:Bearer mF_9.B5f-4.1JqM

Request data validation

Validate Person

  • Get Person identifier from the URL

  • Check it exists in DB

    • Return 404 ('not_found') in case of error

...

  • Get Allergy Intolerance identifier from the URL

    • Check it exists in DB

      • Return 404 ('not_found') in case of error

    • Check Allergy Intolerance belongs to patient

      • Return 404 ('not_found') in case of error

Processing

Service logic

Service returns context (episode), allergy intolerance based on:

...

Get allergy_intolerance.context.identifier from Allergy Intolerance object

Call https://e-health-ua.atlassian.net/wiki/spaces/PCR/pages/17003184199 :

...

Get encounter.episode from Encounter object

...

Response structure

See on Apiary

Expand
titleResponse example
Code Block
{
  "data": {
    "episode": {
      "identifier": {
        "type": {
          "coding": [
            {
              "system": "eHealth/resources",
              "code": "episode"
            }
          ]
        },
        "value": "7c3da506-804d-4550-8993-bf17f9ee0403"
      },
      "display_value": "null"
    }
  },
  "meta": {
    "code": 200,
    "url": "http://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  }
}

Post-processing processes

HTTP status codes

Page Properties
idAPI_HTTP status codes

HTTP status code

Message

What caused the error

200