ЕСОЗ - публічна документація

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')
    1. 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"

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 

  1. If contract_request status <> 'DRAFT' - response with a link to documents.
    1. In case of error (status = 'DRAFT', 'APPROVED', 'DECLINED', 'TERMINATED') return 409 Error ('Incorrect status of contract_request to generate documents')

ЕСОЗ - публічна документація