Developers

One endpoint. Four AI signals.

A simple REST API. Upload a resume, then call /aiProcess with the analysis you want, AI detection, quality rating, fraud signal or candidate match. JSON in, JSON out.

POST /aiProcess
curl --location 'https://<BASE_URL>.quantumrecruit.io/aiProcess' \
  --header 'api-key: <YOUR_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
    "resumeId": "94b84a9c-...",
    "analysisType": "CANDIDATE_MATCH",
    "jobId": "ba1e6e1b-..."
  }'
Quickstart

From resume to result in three steps.

Authenticate with your API key, upload a resume, then run an analysis.

1Authenticate

Send your key in the api-key header on every request. Manage keys via the /userkeys endpoints.

2POST /resumes/uploadResume

Upload a PDF or DOCX. You get back a resumeId to analyze.

3POST /aiProcess

Pass the resumeId and an analysisType. Add a jobId for candidate matching.

curl --location 'https://<BASE_URL>.quantumrecruit.io/aiProcess' \
  --header 'api-key: <YOUR_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{ "resumeId": "94b8...", "analysisType": "AI_GENERATED" }'
import requests
r = requests.post(
  "https://<BASE_URL>.quantumrecruit.io/aiProcess",
  headers={"api-key": KEY, "Content-Type": "application/json"},
  json={"resumeId": "94b8...", "analysisType": "AI_GENERATED"},
)
print(r.json())
const r = await fetch(
  "https://<BASE_URL>.quantumrecruit.io/aiProcess",
  { method:"POST",
    headers:{ "api-key": KEY, "Content-Type":"application/json" },
    body: JSON.stringify({ resumeId:"94b8...", analysisType:"AI_GENERATED" }) }
);
const data = await r.json();
Analysis types

One call, the signal you need.

Set analysisType on /aiProcess — together or on their own.

AI_GENERATED

Returns whether the resume is AI-generated and whether it is AI-assisted (true / false).

RESUME_RATING

Rates resume quality as Poor, Average, Good or Excellent.

FRAUD_SIGNAL

Returns a risk level from Clean to Critical, with a message.

CANDIDATE_MATCH

Scores skills, experience and education out of 10 into a 0–100% match with a description. Requires a jobId.

The response

Clean JSON for every analysis.

Simplified below; the live API also returns model and token metadata.

AI_GENERATED
{
  "success": true,
  "analysisType": "AI_GENERATED",
  "result": {
    "AI-Generated": false,
    "AI-Assisted": true
  }
}
CANDIDATE_MATCH
{
  "success": true,
  "analysisType": "CANDIDATE_MATCH",
  "result": {
    "skills_score": 9,
    "experience_score": 9,
    "education_score": 8,
    "match_score": "92%",
    "summary": "Strong fit; .NET and cloud experience align."
  }
}
The full API

28 endpoints across 9 groups.

Resumes and AI processing are the core; the rest manage the workflow around them.

POST/resumes/uploadResume

Upload a resume (PDF, DOCX) and get a resumeId.

POST/aiProcess

Run AI_GENERATED, RESUME_RATING, FRAUD_SIGNAL or CANDIDATE_MATCH.

Jobs 5 Resume 4 Batches 2 AI Process 1 User Keys 4 Company Info 3 Activities 2 Payments 3 Notifications 4

Browse the full reference →

Auth & responses

Predictable by design.

Authentication
# API key in the header, HTTPS only
api-key: <YOUR_KEY>
Content-Type: application/json
Accept: application/json
200OK, request succeeded
201Resource created
401Missing or invalid API key
402Usage limit reached, contact us to continue
403Role lacks permission for this endpoint
500Server error, retry
Developer FAQ

Common questions.

How do I authenticate?
Send your key in the api-key request header over HTTPS. Keys carry role-based access; some endpoints require specific roles.
What’s the basic flow?
Upload a resume with POST /resumes/uploadResume to get a resumeId, then call POST /aiProcess with that id and an analysisType. For CANDIDATE_MATCH, also pass a jobId.
How does pricing work?
Pricing is usage-based and sized to your screening volume. Book a demo and we will scope it to your roles and volume.
What formats can I upload?
PDF and DOCX resumes are supported through the resume endpoints.
Where are the full details?
The complete reference, including jobs, batches, payments and notifications, lives in the API docs.

Start building with QuantumRecruit.

Book a demo to get API access and a walkthrough with our engineers.