Versions Compared

Key

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

Purpose

...

This WS allows to deactivate division that provide a medical program within user’s legal entity

Specification

...

Page Properties

Link

https://ehealthmisapi1.docs.apiary.io/#reference/public.-contracts/medical-program-provision/deactivate-medical-program-provision

Resource

/api/medical_program_provision/{{id}}/actions/deactivate

Scope

medical_program_provision:write

Components

Medical program provision

Microservices

API paragraph not found

Protocol type

REST

Request type

PATCH

Sync/Async

Sync

Public/Private/Internal

Public

Logic

...

This method allows to deactivate division that provide a medical program within user's legal entity.

...

Filter

Values

Type

Description

Example

id

String

Medical program provision identifier

2060b523-b469-4fc5-89af-ddb5899d8efe

Request structure*

...

Authorize

...

  • Verify the validity of access token

    • in case of error - 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_program_provision:write')

    • return 403 “Your scope does not allow to access this resource. Missing allowances: medical_program_provision:write” in case of invalid scope(s)

Request to process the request using a token in the headers

Headers

...

Наприклад:

  • Content-Type:application/json

  • Authorization:Bearer F3GF124Df565FDS234SDF34

  • api-key:aDGFDFGT46S5gFGD

Request data validation

...

Validate legal entity

  • Extract client_id from token.

  • Check client scopes in order to perform this action (scope = 'medical_program_provision:write')

    • in case of error - return 403 “Your scope does not allow to access this resource. Missing allowances: medical_program_provision:write”

  • Check legal entity status (status = ACTIVE, SUSPENDED)

    • In case of error - return 422 “Legal entity is not active”

...

  1. Get medical_program_provision_id from URL:

    1. Check it exists:

      1. in case of error - return 404 “Medical program provision not found”

    2. Check it belongs to division of user’s legal entity:

      1. in case of error - return 409 “Medical program provision does not belong to user’s legal entity”

    3. Check it is active (is_active=true):

      1. in case of error - return 409 “Medical program provision is inactive”

...

Dictionaries

  • PROVISON_DEACTIVATE_REASON

Processing

Service logic

  1. Update record with medical_program_provision_id according to to Data model

    1. set is_active = false

    2. set deactivate_reason = MANUAL_DEACTIVATION (according to PROVISON_DEACTIVATE_REASON dictionary)

    3. set updated_at, updated_by

Response structure

...

See on Apiary

Example:

Expand
titleResponse example
Code Block
{
  "meta": {
    "code": 200,
    "url": "https://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "data": {
    "id": "3e34da3d-9b8c-4aaf-be8e-24a161279b6a",
    "contract_number": "0000-PAP5-M000",
    "medical_program_id": "04d5ea65-d6e7-44f8-9eef-f0d3c1121d2b",
    "division_id": "15caea3f-cac3-483c-a3da-5875eba96430",
    "is_active": false,
    "deactivate_reason": "MANUAL_DEACTIVATION",
    "inserted_at": "2017-04-20T19:14:13Z",
    "inserted_by": "e1453f4c-1077-4e85-8c98-c13ffca0063e",
    "updated_at": "2017-04-20T19:14:13Z",
    "updated_by": "2922a240-63db-404e-b730-09222bfeb2dd"
  }
}

Post-processing processes*

API paragraph not found

HTTP status codes

...

HTTP status code

Message

What caused the error

 200

 

 

...