Table of Contents | ||||
---|---|---|---|---|
|
Required parameters are marked with "*"
...
Purpose*
Необхідно зазначити призначення методу.
Наприклад: This method allows to receive active person declarations issued by the current legal entity (based on access_token)
Specification*
...
Link
...
Посилання на Apiary або Swagger
...
Resource
...
Наприклад: /api/persons/create
...
Scope
...
Зазначається потрібний scope
...
Components
...
Зазначається перелік бізнес компонентів, які використовують цей метод, наприклад: ePrescription
...
Microservices
...
Перелік мікросервісів, які використовує метод API. Наприклад: Auth, ABAC
...
Protocol type
...
Тип протоколу, який використовується запитом, наприклад: SOAP | REST
...
Request type
...
Тип HTTP методу, який використовується запитом, наприклад: POST | GET…
...
Sync/Async
...
Метод є синхронним чи асинхронним?
Logic*
Потрібно по пунктах описати логіку методу API або додати діаграму
Preconditions
Які передумови мають бути виконані системою/користувачем. Наприклад:
створений запис в MedicationRequest;
рецепт відпущений (COMPLETED)
Global and configuration parameters
Потрібно вказати глобальні та конфігураційні параметри.
Наприклад:
...
Variable
...
Values
...
Description
...
CARE_PLAN_<category>_ICD10_AM_CONDITIONS_ALLOWED
...
Values that matches with dictionaryeHealth/ICD10_AM/condition_codes
Example: “E10.32, E11.92”
...
Allowed diagnoses for specified care plan category. Diagnoses should match with eHealth/ICD10_AM/condition_codes
dictionary, <category> - is a value from dictionary eHealth/care_plan_categories
in uppercase
(Example: CARE_PLAN_CLASS_1_ICD10_AM_CONDITIONS_ALLOWED)
Input parameters
Потрібно вказати вхідні параметри, наприклад:
...
Input parameter
...
Values
...
Type
...
Description
...
Example
...
asyncJobId
...
String
...
Async Job Object ID
Filters
Потрібно вказати фільтри. Наприклад:
...
Filter
...
Values
...
Type
...
Description
...
Example
...
id
...
String
...
7f93-4fc2-b2ec-2d81b19a9b7b (string, required)
...
d290f1ee-6c54-4b01-90e6-d701748f0851
Request structure*
See on Apiary
Example:
...
title | Request example |
---|
...
Table of Contents | ||||
---|---|---|---|---|
|
Required parameters are marked with "*"
Якщо інформації по відповідному параметру немає, потрібно зазначити: “APIparagraph not found”.
Purpose*
This WS allows to terminate contract request by legal entity.
Specification*
Page Properties | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Logic*
This WS is designed to terminate contract request by contractor. Contract request can't be in status='SIGNED'
Input parameters
Потрібно вказати вхідні параметри, наприклад:
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
id | String |
|
Request structure*
See on Apiary
Example:
Expand | ||
---|---|---|
| ||
|
Authorize*
Вимоги до авторизації: яким чином надається доступ до використання методу
Verify the validity of access token
in case of error return 401 ('Access denied')
Check user scope contract_request:termiante in order to perform this action
in case of error generate 401 response ('Invalid scopes')
Request to process the request using a token in the headers
Headers*
Наприклад:
Content-Type:application/json
Authorization:Bearer c2778f3064753ea70de870a53795f5c9
Validate request*
Наприклад:
Validate request using JSON schema
In case validation failed - generate 422 error
Expand | ||
---|---|---|
| ||
|
Validate User
Extract party_id (associated with user_id) from token.
Check party_id=party.contractor_owner_id
in case of error return 403 "User is not allowed to perform this action"
Validate contract request status
Check contract_request.status<>SIGNED
in case error return 422 - "Incorrect status of contract_request to modify it"
Request data validation*
Валідація даних
Processing*
Потрібно описати процеси, які відбуваються з даними
1. Using global parameters
Потрібно викликати глобальні параметри (Global parameters), щоб отримати наведені нижче параметри
Auto termination
Fetch all contract_request with start_date<now().
for REIMBURSEMENT contracts
- find contracts in status NHS_SIGNED and nhs_signed < today -`REIMBURSEMENT_CONTRACT_REQUEST_AUTOTERMINATION_PERIOD_DAYS`
for CAPITATION contracts
- find contracts in status NHS_SIGNED and nhs_signed < today -`CAPITATION_CONTRACT_REQUEST_AUTOTERMINATION_PERIOD_DAYS`
Set status and status reason for such contract request as below:
field | value |
---|---|
status | TERMINATED |
status_reason | $.auto_expired |
updated_at | now() |
updated_by | $.user_id |
Add status to event manager
After status was changed (status = TERMINATED) - add new status to event_manager
field | value |
---|---|
|
|
| Contract_request |
| $.id |
| $.status |
| $.update_at |
| $. |
Response structure*
See on Apiary 2 куска кода с номером кода 200. что с этим делать? втсавлять оба??
Example:
Expand | ||
---|---|---|
| ||
|
Authorize*
Вимоги до авторизації: яким чином надається доступ до використання методу
Request to process the request using a token in the headers
Headers*
Наприклад:
Content-Type:application/json
Authorization:Bearer c2778f3064753ea70de870a53795f5c9
api-key:uXhEczJ56adsfh3Ri9SUkc4en
Validate request*
Наприклад:
Validate request using JSON schema
In case validation failed - generate 422 error
Expand | ||
---|---|---|
| ||
|
Request data validation*
Валідація даних
Parameters that are used when processing the request
Configuration parameters
Наприклад: Доступ до методу визначається скоупом covid_certificate:get . Дозвіл на даний скоуп визначається адміністратором Системи шляхом конфігурування скоупів в контексті клієнтів і ролей.
Dictionaries
Потрібно вказати довідники, які використовує метод API
Processing*
Потрібно описати процеси, які відбуваються з даними
1. Using global parameters
Потрібно викликати глобальні параметри (Global parameters), щоб отримати наведені нижче параметри
Response structure*
See on Apiary
Example:
Expand | ||
---|---|---|
| ||
|
mapping
field | value |
---|---|
status | TERMINATED |
status_reason | $.status_reason |
updated_at | now() |
updated_by | $.user_id |
Post-processing processes*
Що має відбутися в ЦБД після опрацювання та відправлення відповіді, тощо
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
|
|
|
200 |
|
|
Backward compatibility
...