ЕСОЗ - публічна документація
Update Program Medication
Purpose
This WS allows to update existing medication program participant
Key points
This is a graphQl method used in Administration panel only
Only authenticated and authorized NHS employee with appropriate scope can update a Program medication.
Specification
Link | |
Resource | graphQl method |
Scope | program_medication:write |
Components | Drugs and Program medications |
Microservices | API paragraph not found |
Protocol type | API paragraph not found |
Request type | REST |
Sync/Async | Sync |
Public/Private/Internal | Internal. NHS Admin |
Logic
Update params submitted on input in the program medication entity. Also, set:
updated_by = current user (from token)
updated_at = current date and time
Authorize
Verify the validity of access token
in case of error - return 401 (“Invalid access token”) in case of validation fails
Verify that token is not expired
in case of error - return 401 (“Invalid access token”)
Check user scopes in order to perform this action (scope = 'program_medication:write')
return 403 (“Your scope does not allow to access this resource. Missing allowances: program_medication:read”) in case of invalid scope(s)
Request data validation
Validate legal entity
Extract client_id from token.
Check client scopes in order to perform this action (scope = 'program_medication:write')
in case of error - return 403 (“Your scope does not allow to access this resource. Missing allowances: program_medication:write”)
Check legal entity type (type = NHS)
In case of error - return 403 ('You don’t have permission to access this resource')
Validate medication
Get medication by program_medications.medication_id
Check medication is_active = true
in case of error - return 409 ('Medication is not active')
Validate request
Check program medication id exists in DB
in case of error - return 404 ('not_found')
If medicationRequestAllowed submitted, than check program medication is_active = true
in case of error - return 409 ('To allow medication request firstly enable program medication')
If medicationCarePlanActivityAllowed submitted, than check program medication is_active = true
in case of error - return 409 ('To allow create care plan activity firstly enable program medication')
If is_active submitted as false to deactivate program medication, than check medication_request_allowed = false
in case of error - return 409 ('To deactivate medication brand within the program firstly disable medical_request_allowed')
if reimbursement structure submitted, than check program medication is_active = true
in case of error - return 409 ('To update reimbursement firstly enable program medication')
HTTP status codes
HTTP status code | Message | What caused the error |
---|---|---|
401 | Invalid access token |
|
403 |
|
|
404 | not_found | Check program medication id exists in DB failed |
409
|
|
|
ЕСОЗ - публічна документація