API / Checks
Retrieve a check
Read a check’s current state and, when available, its full report. API keys can only access checks created through the API on their own account.
/api/v1/checks/:idPath & query parameters
idstring · pathRequiredThe check ID returned when creating a check.
detailstring · queryOptionalUse "summary" for scores and status. Omit for the full report, including text, sentences, sources, and page positions where available.
Check statuses
| Status | Meaning |
|---|---|
| processing | At least one requested product is still running. |
| complete | Every requested product completed successfully. |
| partial | One product succeeded and another failed. The failed product is refunded. |
| failed | No requested product produced a report. Failed products are refunded. |
Work with the full report
Omit detail=summary to include the report data below. Unrequested products are null; result fields appear when that product completes.
When similarity.format is "pdf_only", the validated PDF is complete but structured extraction is unavailable. The score and files.similarity_pdf remain available; download /checks/:id/report?kind=similarity. Text, sources, matches, sentences, counts and page geometry are omitted.
| Object | Contents and use |
|---|---|
| ai | score (0–100), verdict, counts and text. sentences includes text, start/end, tier, excluded, raw probability and display score. |
| similarity | score (0–100) and text. sources contains slot, title, url, percent and percent_display. matches links slots to fragments; sentences lists overlapping slots. |
| files | similarity_pdf, pdf and original are availability booleans. Use them before requesting a download. |
- Slice ai.text or similarity.text using that product’s start/end offsets (end exclusive). Join matches to sources by slot; highlight fragments for exact matched spans.
- Nullable pages, highlights and AI sentence rects use zero-based pages and PDF points from the top-left. Draw them over report?kind=pdf.
Product states
| Field | Values |
|---|---|
| ai.status | processing, complete, failed |
| similarity.status | queued, running, complete, failed; stage describes progress and error explains a failure |
For a partial check, keep the successful product’s report. A summary omits text, sentences, sources, matches and page geometry.
curl "https://academi.cx/api/v1/checks/$CHECK_ID?detail=summary" \
-H "Authorization: Bearer $ACADEMICX_KEY"
{
"id": "9f1c0f52-6a9b-4b1e-9e1a-2d3c4b5a6f70",
"object": "check",
"status": "processing",
"name": "Essay draft",
"products": [
"ai"
],
"words": 143,
"created_at": "2026-09-10T12:00:00.000Z",
"completed_at": null,
"metadata": {
"reference": "essay-001"
},
"cost": {
"ai_cents": 20,
"similarity_cents": 0,
"total_cents": 20,
"billed_words": 1000
},
"error": null,
"ai": {
"status": "processing"
},
"similarity": null,
"files": {
"similarity_pdf": false,
"pdf": false,
"original": false
}
}
Base URL: https://academi.cx/api/v1
Still have a question? We’re here to help.
