ЕСОЗ - публічна документація
Get Documents by Contract Request ID
Purpose
This WS allows to get Documents by $contract_request_id. Documents are not available for contract requests in statuses 'DRAFT'.
Specification
Get Contract Request Documents
Validation
Validate token
- Verify the validity of access token
- Return 401 in case validation fails
- token is not expired
- in case error return 401
Validate scopes
- Check user scopes in order to perform this action (scope = 'contract_request:read')
- Return 403 in case invalid scope(s) -"Your scope does not allow to access this resource. Missing allowances: contract_request:read"
Validate employee
extract user_id from token
extract client_id from token
- Check if user is active
- in case error return 403 - "user is not active"
- Check nhs_legal_entity is active
- in case error return 403 - "Client is not active"
Validate context
extract client_id from token. LE employee can see only this legal entities contract requests. NHS employee can see any contract request.
- if TOKENS_TYPES_PERSONAL
- Check client_id = contract_request.contractor_legal_entity_id
- in case error return 403 "User is not allowed to perform this action"
- Check client_id = contract_request.contractor_legal_entity_id
Validate data
- Validate contract request id. Check contract_requests.id = $.id
- in case error return 404 ("Contract request with id=$id doesn't exist")
Response
- If contract_request status <> 'DRAFT' - response with a link to documents.
- In case of error (status = 'DRAFT', 'APPROVED', 'DECLINED', 'TERMINATED') return 409 Error ('Incorrect status of contract_request to generate documents')
ЕСОЗ - публічна документація