API Reference
Build on top of KiteCareer. All endpoints are JSON, available at https://api.kitecareer.com.
Authentication
Endpoints marked "auth" require a Bearer JWT in the Authorization header.
POST /auth/login HTTP/1.1
Content-Type: application/json
{ "email": "you@example.com", "password": "..." }
→ { "access_token": "eyJhbGc...", "refresh_token": "..." }
# Then on every request:
Authorization: Bearer eyJhbGc...Rate limits
- Anonymous: 60 req/min
- Free: 120 req/min, 50 jobs/day, 5 AI suggestions/day
- Basic: 300 req/min, 1000 jobs/day, 50 AI suggestions/day
- Pro: 1000 req/min, unlimited features
429 responses include Retry-After header. Failures fail open during Redis outages.
Auth
POST
/auth/signupPOST
/auth/loginPOST
/auth/refreshGET
/auth/meauthPATCH
/auth/meauthPOST
/auth/password/forgotPOST
/auth/password/resetGET
/auth/oauth/{provider}/startJobs
GET
/jobsGET
/jobs/{id}POST
/jobs/applicationsauthGET
/jobs/applicationsauthPATCH
/jobs/applications/{id}authPOST
/jobs/saved/{id}authGET
/jobs/alertsauthPOST
/jobs/alertsauthPOST
/jobs/recruiterauthResumes
GET
/resumesauthPOST
/resumesauthPOST
/resumes/{id}/pdfauthPOST
/resumes/parseauthPOST
/resumes/ai/suggestauthPOST
/resumes/ai/improveauthPOST
/resumes/ats/scoreauthInterviews
POST
/interviews/sessionsauthPOST
/interviews/chat/sendauthGET
/interviews/chat/streamauthPOST
/interviews/sessions/{id}/feedbackauthAssessments
GET
/assessments/skillsPOST
/assessments/startauthPOST
/assessments/submitauthGET
/assessments/my-resultsauthPayments
GET
/payments/plansPOST
/payments/subscriptions/createauthGET
/payments/subscriptions/meauthPOST
/payments/subscriptions/cancelauthPOST
/payments/webhooks/{gateway}For machine-readable specs, every service exposes its OpenAPI schema at /openapi.json. The aggregated gateway schema is at /api/openapi.json.