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

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 23 Current »

Purpose

This method is designed to return a procedure record by id.

Specification

Link

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

Resource

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

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

This method is designed to return a procedure record by id.

Input parameters

Input parameter

Values

Type

Description

Example

id

String

Unique procedure identifier

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

Request structure

API paragraph not found

Authorize

Request to process the request using a token in the headers

  • Verify the validity of access token

    • Return 401 in case validation fails

  • Verify token is not expired

    • in case error return 401 

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

    • Return 403 in case invalid scope(s)

Headers

  • Content-Type:application/json

  • Authorization:Bearer {{access_token}}

  • API-key:{{secret}}

Request data validation

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
{
  "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"
    }
  ]
}

 Response example
{
  "meta": {
    "code": 404,
    "url": "http://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "error": {
    "type": "NOT_FOUND",
    "message": "Patient not found"
  }
}
  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

 

 

401

Access denied

 

403

Invalid scopes

 

404

Patient not found

  • No labels