ЕСОЗ - публічна документація

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Next »

Purpose

This WS is designed to return records about procedures by patient_id or/and search_params.

Specification

Link

https://medicaleventsmisapi.docs.apiary.io/#reference/medical-events/procedures/get-procedures-by-search-params

Resource

/api/patients/{{patient_id}}/procedures

Scope

procedure:read

Components

Episode of Care

Microservices

API paragraph not found

Protocol type

REST

Request type

GET

Sync/Async

Async

Public/Private/Internal

Public

Logic

API paragraph not found

Filters

Filter

Values

Type

Description

Example

patient_id

String

Unique patient identifier

7075e0e2-6b57-47fd-aff7-324806efa7e5

episode_id

String

Unique episode identifier, look into episode in encounter

ef30f210-5328-4f48-bfe6-c7150d4737a6

status

Enum

status of procedure

COMPLETED

based_on

String

Unique service request identifier

ef30f210-5328-4f48-bfe6-c7150d4737a6

code

String

9075e0e2-6b57-47fd-aff7-324806efa7e6

managing_organization_id

String

Unique legal entity identifier

7075e0e2-6b57-47fd-aff7-324806efa7e5

encounter_id

String

Unique encounter identifier

7075e0e2-6b57-47fd-aff7-324806efa7e5

origin_episode_id

String

Unique episode identifier, look into episode in procedures.origin_episode

ef30f210-5328-4f48-bfe6-c7150d4737a6

Request structure

API paragraph not found

Authorize

Request to process the request using a token in the headers

Headers

Наприклад:

  • Content-Type:application/json

  • Authorization:Bearer mF_9.B5f-4.1JqM

  • api-key:aFBLVTZ6Z2dON1V

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 = 'procedure:read')

    1. Return 403 in case invalid scope(s)

Access to the resource is also managed by ABAC module.

Validation

  1. validate person_id

    1. validate $person_id is existing ID in mpi.persons.id And person is_active=true and status='active

      1. in case error return 404, "Person not found"

Processing

API paragraph not found

Response structure

See on Apiary

Example:

 Response example
{
  "meta": {
    "code": 200,
    "url": "http://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "data": [
    {
      "id": "7075e0e2-6b57-47fd-aff7-324806efa7e5",
      "based_on": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "service_request"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        },
        "display_value": "null"
      },
      "paper_referral": {
        "requisition": "1111-2222-3333-4444",
        "requester_legal_entity_name": "Some clinic",
        "requester_legal_entity_edrpou": "12345678",
        "requester_employee_name": "John",
        "service_request_date": "2018-10-08",
        "note": "Some notes"
      },
      "status": "COMPLETED",
      "status_reason": {
        "coding": [
          {
            "system": "eHealth/procedure_status_reasons",
            "code": "default"
          }
        ]
      },
      "code": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "service"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        },
        "display_value": "null"
      },
      "performed_date_time": "2018-08-02T10:55:00.000Z",
      "recorded_by": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "employee"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        },
        "display_value": "Шевченко Олесь Вікторович"
      },
      "primary_source": true,
      "performer": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "employee"
              }
            ],
            "text": "Галина Олександрівна"
          },
          "value": "97d57238-ffbe-4335-92ea-28d4de117ea2"
        }
      },
      "division": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "division"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        },
        "display_value": "null"
      },
      "managing_organization": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "legal_entity"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        },
        "display_value": "Перше відділення обласної лікарня №1"
      },
      "reason_references": [
        {
          "identifier": {
            "type": {
              "coding": [
                {
                  "system": "eHealth/resources",
                  "code": "condition"
                }
              ]
            },
            "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
          }
        }
      ],
      "outcome": {
        "coding": [
          {
            "system": "eHealth/procedure_outcomes",
            "code": "default_outcome"
          }
        ]
      },
      "note": "Додаткова інформація по процедурі",
      "category": {
        "coding": [
          {
            "system": "eHealth/procedure_categories",
            "code": "default"
          }
        ]
      },
      "encounter": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "encounter"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        },
        "display_value": "null"
      },
      "explanatory_letter": "Процедура була відмінена у зв'язку з помилкою при виборі пацієнта",
      "origin_episode (Reference_response, optional)": {
        "identifier": {
          "type": {
            "coding": [
              {
                "system": "eHealth/resources",
                "code": "episode"
              }
            ]
          },
          "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
        }
      },
      "complication_details": [
        {
          "identifier": {
            "type": {
              "coding": [
                {
                  "system": "eHealth/resources",
                  "code": "condition"
                }
              ]
            },
            "value": "9183a36b-4d45-4244-9339-63d81cd08d9c"
          },
          "display_value": "null"
        }
      ]
    }
  ],
  "paging": {
    "page": 2,
    "page_size": 50,
    "total_entries": 1000,
    "total_pages": 20
  }
}
  1. Return response according to json schema

  2. Return procedures where

    1. managing_organization.identifier.value=$Client_id

    2. consumer_id is a doctor with active declaration for current patient ($.person_id)

Post-processing processes

API paragraph not found

HTTP status codes

HTTP status code

Message

What caused the error

 200

 

 

  • No labels