Skip to main content
Upload documents, trigger parsing, and manage other assessment operations.

Request upload URL

Endpoint

POST /api/assessments/:id/documents

Path parameters

string
required
Assessment ID (UUID).

Request body

string
required
Name of the file to upload.Maximum length: 255 characters.
string
required
MIME type of the file.Currently only application/pdf is supported. Maximum length: 50 characters.
number
required
File size in bytes.Maximum: 26,214,400 bytes (25 MB).

Response

string
Pre-signed S3 URL for uploading the file. Valid for 15 minutes.
string
Unique document identifier (UUID). Use this to trigger parsing after upload.

Upload workflow

1

Request upload URL

POST to /api/assessments/:id/documents with file metadata.
2

Upload file to S3

PUT the file to the presignedUrl using the exact mimeType from your request.
3

Trigger parsing

POST to /api/assessments/:id/documents/:documentId/parse to start AI document analysis.
The presigned URL expires after 15 minutes. If upload fails, request a new URL.

Trigger document parsing

Endpoint

POST /api/assessments/:id/documents/:documentId/parse Starts an asynchronous job to parse the uploaded document using AWS Bedrock AI models.

Path parameters

string
required
Assessment ID (UUID).
string
required
Document ID returned from the upload URL request.

Response

Returns a job ID (string) to poll for completion status.

Job polling

Use GET /api/jobs/:id to check the parsing status:
  • PENDING - Job is queued
  • PROCESSING - AI is analyzing the document
  • COMPLETED - Parsing finished successfully
  • FAILED - Parsing failed (check error field)
Poll every 2-5 seconds until the job reaches a terminal state.
When parsing starts, the assessment status automatically changes to ANALYZING.

Add comment

Endpoint

POST /api/assessments/:id/comments

Path parameters

string
required
Assessment ID (UUID).

Request body

string
required
Comment text.Maximum length: 2000 characters.

Response

string
Comment ID (UUID).
string
Assessment ID this comment belongs to.
string
ID of the user who created the comment.
string
Comment text.
string
ISO 8601 timestamp of creation.

Get comments

Endpoint

GET /api/assessments/:id/comments Retrieve all comments for an assessment, ordered chronologically.

Path parameters

string
required
Assessment ID (UUID).

Response

Returns an array of comment objects with user information.
array

Example response