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

API. Get Care plan by ID_UA

Ціль

Даний веб-сервіс дозволяє отримати детальну інформацію про План лікування пацієнта. Для отримання активностей плану лікування необхідно використовувати API. Get Care Plan activities_UA .

Специфікація

Apiary

Авторизація

  • Перевірити валідність токену доступу

    • Повернути (401, 'unauthorized'), якщо валідація неуспішна

  • Перевірити, що по токену не закінчився строк дії

    • у випадку помилки - повернути код (401, 'unauthorized')

  • Перевірити список скоупів користувача на можливість виконання даної дії (scope = 'care_plan:read')

    • Повернути (403, 'invalid scopes') в разі невалідних скоупів/scope(s)

Перевірити пацієнта

  • Отримати ідентифікатор пацієнта з URL

  • Перевірити, що він існує в БД/DB

    • Повернути 404 ('not found') в разі помилки

Перевірити план лікування

  • Отримати ідентифікатор плану лікування з URL

  • Перевірити, що він існує в БД/DB

    • Повернути 404 ('not found') в разі помилки

  • Перевірити, що План лікування належить пацієнту

    • Повернути 404 ('not found') в разі помилки

Перевірити користувача

  • Отримати ідентифікатор user_id з токену.

  • Перевірити, що користувач є активним співробітником та має погодження юридичної особи (token), та:

    • має активне погодження від пацієнта для write та read Плану лікування (id плану лікування з URL)

      • Повернути 403 ('Access denied') для випадку, коли співробітник не має погодження на читання/read чи редагування/write

    • має активну декларацію з пацієнтом

Логіка сервісу

Сервіс повертає вказаний план лікування, який відноситься до конкретного пацієнта, але без активностей Плану лікування:

  • Отримати активності по ID з колекції care_plan_activities (MongoDB)

  • Перевірити консистентність даних:

    • Переконатися, що запрошений План лікування відноситься до вказаного пацієнта (з URL)

      • Повернути 404 ('not found') у випадку помилки

  • Відобразити відповідь у відповідності до специфікації

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