Search candidates
Full-text and geo-filtered search across Jobiflow candidate profiles that have opted in to recruiter visibility. Requires scope: `candidates:read`
Full-text and geo-filtered search across Jobiflow candidate profiles that have opted in to recruiter visibility.
Requires scope: candidates:read
Authorization
ApiKeyAuth API key issued by Jobiflow. Pass it in the X-API-Key request header.
Create keys via the company dashboard (Settings → API Keys) or via POST /settings/api-keys.
In: header
Query Parameters
Partial match on the candidate's professional headline.
Filter to candidates who prefer remote work.
Filter by skill name (partial match, case-insensitive).
Filter by language name (partial match, e.g. English, German).
Filter by a job title in the candidate's work history (partial match).
Latitude of the center point for geo-radius filtering. Must be provided together with filterLng and radiusKm.
doubleLongitude of the center point for geo-radius filtering.
doubleSearch radius in kilometres around the geo coordinates.
int321 <= valueZero-based page index.
0int320 <= valueNumber of items per page (max 100).
20int321 <= value <= 100Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/public/v1/candidates"{
"data": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"firstName": "string",
"lastName": "string",
"headline": "string",
"city": "string",
"country": "string",
"desiredJobTypes": "string",
"remotePreference": true
}
],
"pagination": {
"page": 0,
"size": 0,
"totalElements": 0,
"totalPages": 0
}
}{
"status": 401,
"error": "UNAUTHORIZED",
"message": "Invalid or missing API key",
"timestamp": "2026-05-17T12:00:00Z",
"path": "/public/v1/job-listings"
}{
"status": 403,
"error": "FORBIDDEN",
"message": "Scope 'jobs:write' is required",
"timestamp": "2026-05-17T12:00:00Z",
"path": "/public/v1/job-listings"
}Submit an external application POST
Creates an application sourced from outside Jobiflow (e.g. your own careers page or another job board). The candidate does not need to have a Jobiflow account. Requires scope: `applications:write`
Get a candidate profile GET
Returns the full profile of a candidate, including work experience, education, skills, languages, and certifications. Requires scope: `candidates:read`