ЕСОЗ - публічна документація
Private. Update contract division
Purpose
This method allows to update existing contract divisions for contracts with GB_CBP type through the NHS IT system
Specification
Link | |
Resource | /api/admin/contract_divisions/{{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
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:
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 |
2. Update record in DB
3. Audit log (trigger logic)
Response structure
See on Apiary
Example:
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
200 |
|
|
ЕСОЗ - публічна документація