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

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Purpose

This WS is designed to change status of contract request to DECLINED by NHS ADMIN SIGNER. NHS employee can change status of contract request through Admin portal. If NHS Admin want to decline contract request he/she need to enter a reason.

Design

TBD

Specification

apiary

json schema

Request

  • status_reason

Validation

Validate token

  • Verify the validity of access token
    • Return 401 in case validation fails
  • Check if token is not expired
    • in case error return 401 - "Token is expired"

Validate user

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)
  • Check user role = "NHS ADMIN SIGNER"
    • in case error return 403 "User is not allowed to perform this action"

Validate scopes

  • Check user scopes in order to perform this action (scope = 'contract_requests:update')
    • Return 403 in case invalid scope(s) "Your scope does not allow to access this resource. Missing allowances: contract_requests:update"

Validate contract request status

  • Check contract_request.status=NEW
    • in case error return 422 - "Incorrect status of contract_request to modify it"

Response

mapping

fieldvalue
statusDECLINED
status_reason$.status_reason
updated_atnow()
updated_by$.user_id
nhs_signer_id$.user_id
nhs_legal_entity_id$.client_id


Add status to event manager

After status was changed (status = APPROVED, DECLINED, TERMINATED, NHS_SIGNED or SIGNED) - add new status to event_manager

field
value
event_typeStatusChangeEvent
entity_typeContract_request
entity_id$.id
properties.status.new_value$.status
event_time$.update_at
changed_by$.changed_by
  • No labels