OikoHire External API
OikoHire exposes a REST API that lets your backend systems search talent, run AI-powered candidate matching, and score interview transcripts — all without requiring a user session.
Who can use the API?
The external API is available exclusively to Company accounts on an active paid or trialling subscription. API keys are scoped per company and cannot be used by Candidate or Recruiter accounts.
Base URL
All API endpoints are served under:
https://api.oikohire.com/api/v1
Available endpoints at a glance
| Method | Path | Scope | Description |
|---|---|---|---|
GET | /external/health | (public) | Liveness check — no key required |
GET | /external/candidates | candidates:read | Search the candidate pool |
POST | /external/ai/match-jobs | ai:match | Match a resume against your open jobs |
POST | /external/ai/score-interview | ai:score | Score an interview transcript |
GET | /external/jobs/:id | jobs:read | Poll the status of an async job |
Quick start
curl https://api.oikohire.com/api/v1/external/candidates \
-H "Authorization: Bearer sk_live_<your_key>" \
-H "Content-Type: application/json" \
-G --data-urlencode "q=senior typescript" \
--data-urlencode "skills=typescript,react" \
--data-urlencode "limit=5"
The same request with fetch:
const url = new URL('https://api.oikohire.com/api/v1/external/candidates');
url.searchParams.set('q', 'senior typescript');
url.searchParams.set('skills', 'typescript,react');
url.searchParams.set('limit', '5');
const response = await fetch(url, {
headers: { Authorization: `Bearer ${process.env.OIKOHIRE_API_KEY}` },
});
if (!response.ok) {
throw new Error(`OikoHire request failed: ${response.status}`);
}
const result = await response.json();
console.log(result.data.candidates);
tip
Keep the API key on your server. Never expose it in browser JavaScript, mobile application bundles, or a public repository.
Next steps
- Authentication & API keys — how keys are structured and how to authenticate
- Rate limits — per-plan quotas and response headers
- Managing your keys — creating, revoking, and rotating keys
- Endpoints reference: