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