Versions Compared

Key

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

Purpose

...

This method allows to create new contract employee record for existing contract with GB_CBP type through the NHS IT system

Specification

...

Page Properties

Link

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

Resource

/api/admin/contract_employees

Scope

private_contracts:write

Components

Contracts

Microservices

API paragraph not found

Protocol type

REST

Request type

POST

Sync/Async

Sync

Public/Private/Internal

Private

Logic

...

API paragraph not found

Request structure

...

See on Apiary

Example:

Expand
titleRequest example
Code Block
{
  "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

...

The following attributes must be validated

...

  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. Set system attributes

Attribute

Value

id

Generate uuid

is_active

Const: true

inserted_at

now() timastamp

inserted_by

User from token

updated_at

now() timastamp

updated_by

User from token

...

3. Audit log (trigger logic)

Response structure

...

See on Apiary

Example:

Expand
titleResponse example
Code Block
{
  "meta": {
    "code": 201,
    "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

 201