Table of Contents | ||||
---|---|---|---|---|
|
Required parameters are marked with "*"
Якщо інформації по відповідному параметру немає, потрібно зазначити: “APIparagraph not found”.
Purpose*
This method allows to update existing contract divisions for contracts with GB_CBP type through the NHS IT system
Specification*
Page Properties | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Logic*
This method allows to update existing contract divisions for contracts with GB_CBP type through the NHS IT system
Input parameters
Input parameter | Values | Type | Description | Example |
---|---|---|---|---|
id | String |
|
Request structure*
See on Apiary
Example:
Expand | ||
---|---|---|
| ||
|
Authorize*
Verify the validity of api-key
Return 401 in case validation fails
Verify the validity of token
Return 401 in case validation fails
Check scopes in order to perform this action (scope = 'private_contracts:write')
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
Validate id
Check that contract_division record with id from URL exist and is_active = true
in case of error return 404 error ('Contract division with such id is not found')
Check that contract from contract_division.contract_id have type = 'GB_CBP' and is_active = true
in case of error return 409 error ('Only contract divisions for contract with type GB_CBP can be updated')
Validate division_id
Check that division exist and is_active = true
in case of error return 404 error $.division_id ('Division is not found')
Check that division_id correspond to contractor legal entity through divisions.legal_entity_id=contracts.contractor_legal_entity_id
in case of error return 409 error $.division_id ('Division is not correspond to contractor legal entity')
Validate contract_id
Check that contract exist and is_active = true and type = GB_CBP
in case error return 409 error $.contract_id ('Contract must be an active and with GB_CBP type')
Validate request
Only authenticated and authorized user can use this service
Contract division must be valid and consistent, i.e. all "foreign keys" must be valid
Processing*
Update system attributes
Attribute | Value |
---|---|
updated_at | now() timastamp |
updated_by | User from token |
...
3. Audit log (trigger logic)
Response structure*
See on Apiary
Example:
Expand | ||
---|---|---|
| ||
|
Post-processing processes*
API paragraph not found
HTTP status codes*
HTTP status code | Message | What caused the error |
---|---|---|
200 |
|
|
...