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
Log in to see full request historyTimeStatusUser Agent
Make a request to see history.
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
decisionstringThe 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
import { SoftSolz } from '@softsolz/sdk';
const client = new SoftSolz({ apiKey: process.env.SOFTSOLZ_API_KEY });
const result = await client.tasks.createSubmissionReview('<id>', {});console.log(result);Credentials
Sent as a Bearer token. Stored only in your browser.
Response · 201
{ "data": { "id": 0, "submission_id": 0, "reviewer_id": 0, "stage": 0, "decision": "string", "feedback": "string", "score": "string", "rubric_scores": [], "created_at": "string" }}