Job Matching API · Early access
Your model can read a résumé. It can't see today's job market. POST résumé text to Seeker and get back real, currently-open roles ranked by fit, each with the evidence it matches and the reasons it might not. One HTTP call, plain JSON.
Works with Claude, ChatGPT, Cursor, or any agent that speaks HTTP.
Where it fits
Your agent already talks to the user. Seeker is the step that turns a résumé into real, ranked openings it can talk about.
Your AI agent
sends the résumé
Seeker
searches live listings
Your AI agent
shows the user the jobs
The call
The whole request is a résumé. No parsing, no embeddings, no job data to supply.
{
"candidateSchemaVersion": 1,
"sourceText": "Senior iOS engineer, 6 yrs.
Swift, UIKit, AppKit…"
}
{
"matches": [
{
"company": "Stripe",
"title": "Staff Backend Engineer",
"url": "https://stripe.com/jobs/…",
"score": 91,
"skillMatchPct": 88,
"matchExplanation": "Strong overlap:
Go, distributed systems.",
"rejectionRisks": ["Emphasizes Kafka."]
}
// + 71 more, ranked by score
],
"corpusVersion": "2026-06-29"
}
Quickstart
No SDK. If your agent can make an HTTP request, it can call Seeker.
Get your key
Seeker is opening access gradually. Join the waitlist, tell us what you're building, and we'll send your key when your project is up.
Join the waitlistSend the résumé
One POST. Your key in the header, the résumé text as sourceText.
curl https://www.seekerscore.com/v1/match \
-H "Authorization: Bearer skr_live_…" \
-d '{ "candidateSchemaVersion": 1,
"sourceText": "…résumé text…" }'
Read the matches
Ranked jobs come back as JSON. Map over them and hand your user the roles, the scores, and the reasoning. That's the whole integration.
const { matches } = await res.json();
matches.forEach(job => {
console.log(job.title, job.score);
// job.matchExplanation, job.rejectionRisks
});
The API may return a temporary timeout while processing a résumé for the first time. Retrying the same request is safe.
The Seeker layer
Your AI can understand a résumé. Seeker gives it a hiring market to evaluate.
A hiring market
LLMs don't keep a live hiring dataset. Seeker does.
Every request is evaluated against a continuously updated corpus of real, open jobs.
Matching, not retrieval
Job search starts with a query. Seeker starts with a candidate.
Retrieval gives you whatever the search returns. Seeker evaluates every job in its corpus against the candidate, then ranks the strongest matches.
Deterministic results
LLMs generate. Seeker scores.
The same résumé produces the same ranking every time, with an explanation for every recommendation. Testable, cacheable, easy to explain.
One API call. An entire hiring market evaluated against your candidate.
Auth
A Bearer token in the Authorization header. One key per project.
Access
Seeker is in early access. Join the waitlist and we'll reach out as access expands.
Pricing
Free while in early access. Usage-based pricing comes later, with notice first.
We're expanding access as we keep building Seeker. Join the waitlist and we'll let you know when your project can get started. Free while in early access.