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

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 method allows to update existing contract employee in DB

Specification*

Link

https://ehealthmisapi1.docs.apiary.io/#reference/private.-contracts/private-contract-employees/private.-update-contract-employee

Resource

/api/admin/contract_employees/{{id}}

Scope

private_contracts:write

Components

Contracts

Microservices

API paragraph not found

Protocol type

REST

Request type

PUT

Sync/Async

Sync

Public/Private/Internal

Private

Logic*

API paragraph not found

Input parameters

Input parameter

Values

Type

Description

Example

id

String

Contract emplyee identifier

b075f148-7f93-4fc2-b2ec-2d81b19a9b7b

Request structure*

See on Apiary

Example:

 Request example
{
  "staff_units": 1,
  "declaration_limit": 2000,
  "employee_id": "ce050c01-f4a5-4d5f-85d6-7e41d41146bf",
  "division_id": "62d0a654-2e7f-40fb-b1bb-8a38cdc3f701",
  "contract_id": "6bb64748-7707-4be8-86e0-56cfb08e9b88",
  "start_date": "2018-04-20T19:14:13Z",
  "end_date": "2019-04-20T19:14:13Z"
}

Authorize*

  1. Verify the validity of api-key

    1. Return 401 in case validation fails

  2. Verify the validity of token

    1. Return 401 in case validation fails

  3. Check scopes in order to perform this action (scope = 'private_contracts:write')

    1. Return 403 in case invalid scope(s)

Request to process the request using a token in the headers

Headers*

Наприклад:

  • Content-Type:application/json

  • api-key:c2778f3064753ea70de870a53795f5c9

Request data validation*

Validate contract employee

Check that contract employee exists and is active

Attribute

Condition

Error

URL: {id}

  1. Contract employee exists

  2. is_active = true

404, Not found

Validate foreign keys

The following attributes must be validated

Attribute

Condition

Error

$.contract_id

  1. Contract exists

  2. is_active = true

409, Invalid contract id

$.division_id

  1. Division exists

  2. is_active = true

  3. Relates to contractor legal entity

409, Invalid division id

$.employee_id

  1. Employee exists

  2. is_active = true

  3. Relates to contractor legal entity

409, Invalid employee id

Validate request

  1. Only authenticated and authorized user can use this service

  2. Contract employee must be valid and consistent, i.e. all "foreign keys" must be valid

Processing*

  1. Update system attributes

Attribute

Value

updated_at

now() timestamp

updated_by

User from token

2. Update record in DB

3. Audit log (trigger logic)

Response structure*

See on Apiary

Example:

 Response example
{
  "meta": {
    "code": 200,
    "url": "https://example.com/resource",
    "type": "object",
    "request_id": "req-adasdoijasdojsda"
  },
  "data": {
    "id": "8be63914-a278-470b-b868-1af5b9087332",
    "staff_units": 1,
    "declaration_limit": 2000,
    "employee_id": "ce050c01-f4a5-4d5f-85d6-7e41d41146bf",
    "division_id": "62d0a654-2e7f-40fb-b1bb-8a38cdc3f701",
    "contract_id": "6bb64748-7707-4be8-86e0-56cfb08e9b88",
    "start_date": "2018-04-20T19:14:13Z",
    "end_date": "2019-04-20T19:14:13Z",
    "is_active": true,
    "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

 

 

  • No labels