Get ATS Scan Quota
Returns the caller's current ATS scan quota status. This endpoint works for anonymous callers too (quota is keyed by a hashed IP when unauthenticated). There is a single shared scan-quota bucket for both the deterministic `/ats/check` scan and the AI-powered `/ats/analyze` deep analysis — they are **not** two separate quotas. Limits: - Anonymous: 1 scan / 48 hours - Free logged-in: 2 scans / 24 hours - Subscriber (active AI Credits or Bundle plan): 300 scans / billing period
Your personal API key — vw_ followed by 64 hex characters. The same key is also accepted
as Authorization: Bearer vw_....
In: header
Response Body
application/json
curl -X GET "https://example.com/api/v1/ats/quota"{ "success": true, "message": "Success", "data": { "tier": "free", "limit": 2, "used": 0, "remaining": 2, "resetsAt": "2026-04-28T00:00:00.000Z", "canConvertResume": false, "pricing": { "analysisCredits": { "min": 1, "max": 6 }, "jobUrlAnalysisCredits": { "min": 2, "max": 12 }, "resumeConversionCredits": 2 }, "extract": { "limit": 6, "used": 0, "remaining": 6 } }}ATS Resume Scanning
Deterministic and AI-assisted ATS resume scanning against a job description.
Extract Resume TextPOST
Extracts plain text from an uploaded resume file (PDF, DOCX, TXT, Markdown, or JSON, max 5MB) for use as the `resume` field on `/ats/check` or `/ats/analyze`. Does not consume ATS scan quota — only the check/analyze endpoints do.