Specification
GraphQL
Purpose
This WS is designed to review and update assign merge_request.
Statements
- Assignee can postpone merge_request change its status to POSTPONE
- POSTPONE is not final status and must be changed to one of MERGE, SPLIT, TRASH
- MERGE, SPLIT, TRASH are final statuses
- In case one of MERGE, SPLIT, TRASH for one merge_request reached decision_amount value this request must be processed
- Decisions with status SPLIT and TRASH changes Merge Candidates to PROCESSED
- Decisions with status MERGE changes Merge Candidates to PROCESSED and creates Merge Job
Authorize
- Verify the validity of access token
- in case of error return 401 ('Access denied')
- Check user scope merge_request:review in order to perform this action
- in case of error generate 401 response ('Invalid scopes')
- Verify the validity of access token
Verify role
Extract from token:
- Validate client_id (is_blocked=false)
- in case of error return 403 Error ('Client is blocked')
- Check user_roles by client_id
- check whether exist role NHS_REVIEWER
- in case of error return 403 Error ('User doesn't have required role')
- check whether exist role NHS_REVIEWER