Upload scanned answer sheets, get per-question scores in seconds. Handles multiple students per upload, returns cropped images for any answer the AI couldn't read.
curl -X POST https://aiquestions.intrazero.com/api/v1/grading/jobs \
-H "Authorization: Bearer $API_KEY" \
-F "student_papers[]=@alice.pdf" \
-F "student_papers[]=@bob.pdf" \
-F "answer_key=@key.pdf" \
-F "rubric=semantic"
{
"job_id": "uuid",
"status": "needs_review",
"submissions_count": 2,
"submissions": [
{
"student_name": "Alice",
"score": 18, "max_score": 20,
"status": "needs_review"
}
]
}
Then fetch /jobs/{id}/submissions/{sid} for the per-question breakdown — every unreadable question carries a crop_url you can render in your review UI.
Each unreadable question returns:
low_confidence_ocr, blank, or missingYour reviewer fixes the reading via PATCH .../questions/{n} and the submission's score recomputes immediately.
Auto-grading is a separate add-on. Your package controls graded_questions_included. Speak to sales to add it to your plan.