Decide on a submission. Approving completes the assignment; requesting changes returns it for another attempt.
Decide on a submission. Approving completes the assignment; requesting changes returns it for another attempt.
POST
https://app.softsolz.uk/api/v1/services/tasks/submissions/{id}/reviewRecent Requests
Kept only in this browserTimeStatusTook
Send a request with Try it to see it here.
Path Params
idstringrequiredHeaders
AuthorizationstringrequiredBearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.
Idempotency-KeystringOptional idempotency key for safe retries.
Body Params
decisionstringrequiredThe verdict.
feedbackstringWritten feedback for the assignee.
scorenumberThe raw number only. Letters and pass/fail labels are derived from the grading scheme, never stored.
rubric_scoresarray of objectsPer-criterion scores when the scheme is rubric.
Response
Response Body
idintegerReview id.submission_idintegerThe submission reviewed.reviewer_idinteger | nullWho decided.stageintegerApproval stage. Single-stage review always uses 1.decisionstringThe verdict.feedbackstring | nullWritten feedback.scorenumber | nullRaw number, never a letter or a label.rubric_scoresarray of objectsPer-criterion scores: { criterion_id, score }.created_atstringReview timestamp.Request
curl --request POST \ --url https://app.softsolz.uk/api/v1/services/tasks/submissions/{id}/review \ --header 'Authorization: Bearer sk_live_your_key' \ --header 'Content-Type: application/json' \ --data '{ "decision": "approved", "feedback": "Clear and complete.", "score": 92, "rubric_scores": [ { "criterion_id": "accuracy", "score": 38 } ]}'Credentials
Sent as a Bearer token and used in the samples above and in Try it. Kept only in this browser tab until you close it. Use an sk_test_ key to stay in your sandbox.
Response · 201
{ "data": { "id": 7001, "submission_id": 5001, "reviewer_id": 8, "stage": 1, "decision": "approved", "feedback": "Clear and complete.", "score": 92, "rubric_scores": [ { "criterion_id": "accuracy", "score": 38 } ], "created_at": "2026-09-02T09:00:00.000Z" }}