Endpoint
List matches
Read persisted matches for your tenant. Use this to poll for new matches or to back a 'recent matches' view in your own UI.
Authentication
Requires the match scope. Employer-scoped keys see only matches on their jobs; organization-scoped keys see only matches involving their candidates.
Endpoint
GET
/api/v1/matchesQuery parameters
candidateIduuidRestrict to one candidate.
jobIduuidRestrict to one job.
minScorenumberDrop matches below this score. Default 0.
limitnumberMax results, default 50, max 200.
curl "https://www.astrishr.com/api/v1/matches?minScore=75&limit=10" \
-H "Authorization: Bearer $KEY"Response
{
"matches": [
{
"matchId": "…",
"candidateId": "…",
"candidateName": "Mohammed K.",
"jobId": "…",
"jobTitle": "Warehouse Lead",
"employerName": "Harbor Logistics",
"finalScore": 87,
"recommendation": "strong_match",
"componentScores": {
"skills": 92, "experience": 88, "language": 60,
"distance": 90, "schedule": 95, "certification": 50,
"transportation": 100
},
"gaps": [],
"transferableSkills": [],
"modelVersion": "v1-ensemble",
"modelRunAt": "2026-06-08T17:30:00Z",
"reviewed": false,
"employerRating": null
}
]
}Polling vs webhooks
For new-match alerts, subscribe to match.created via webhooks instead of polling — payloads are HMAC-signed and arrive within seconds of the match being persisted.