Ceevee
CeeveeDocs
⌘K
DashboardAPI keysSign up

Get started

  • Introduction
  • Authentication
  • Errors
  • Pagination
  • Versioning

Core resources

  • Jobs
  • Scans (CVs)
  • Candidates
  • Pipeline & stages
  • Assessments
  • Applications

Webhooks

  • Overview
  • Events
  • Signatures

Reference

  • Rate limits
  • Idempotency
  • OpenAPI spec
  • Changelog

API Reference

Scans (CVs)

Upload a CV, run AI extraction, and read structured candidate data.

Step 1 — request an upload URL

The signed URL accepts a single PUT and is valid for two minutes. The response also returns a storage_token you must echo back when creating the scan.

curl -X POST https://api.ceevee.cc/v1/uploads \
  -H 'Authorization: Bearer ceevee_sk_live_…' \
  -H 'Content-Type: application/json' \
  -d '{ "filename": "jane-doe.pdf" }'

Step 2 — upload the file

curl -X PUT "$signed_url" \
  --data-binary @jane-doe.pdf \
  -H 'Content-Type: application/pdf'

Step 3 — register the scan

Pass the same storage_token the upload endpoint returned. Optional project_id ties the scan to a job's pipeline.

curl -X POST https://api.ceevee.cc/v1/scans \
  -H 'Authorization: Bearer ceevee_sk_live_…' \
  -H 'Content-Type: application/json' \
  -d '{
    "storage_token": "…",
    "project_id": "3dae4942-…"
  }'

REST endpoints

POST/v1/uploads
Request a signed Storage URL and a one-time storage_token.
scans:write
POST/v1/scans
Register the uploaded file as a scan and trigger AI processing.
scans:write
GET/v1/scans
List scans, paginated. Filter by job_id and status.
scans:read
GET/v1/scans/{id}
Fetch one scan with its profile, summary, and status.
scans:read
GET/v1/scans/{id}/pdf
Get a short-lived signed URL for the source PDF.
scans:read
POST/v1/scans/{id}/rescan
Re-run AI extraction without re-uploading the file.
scans:write

Subscribe to scan.completed

Processing is asynchronous and typically completes in 8–25 seconds. Subscribe to the scan.completed webhook to react when the AI extraction is ready.