fr.indeed.com APIfr.indeed.com ↗
Search fr.indeed.com job listings, retrieve full job details, find alternance offers, and fetch company profiles via a structured JSON API.
curl -X GET 'https://api.parse.bot/scraper/4154d0ab-67c2-49be-b699-ebadff95afcb/search_jobs?query=comptable&start=0&location=Paris' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for job listings on Indeed France. Returns the first page of results (approximately 15-16 results) for anonymous requests.
| Param | Type | Description |
|---|---|---|
| query | string | Job title or keywords (e.g. 'comptable', 'développeur') |
| start | integer | Result offset for pagination (increments of 10-15). |
| fromage | integer | Limit results to jobs posted within the last N days (e.g. 1 for today, 7 for last week) |
| location | string | Location to search in (e.g. 'Paris', 'Lyon') |
{
"type": "object",
"fields": {
"count": "integer total number of results returned",
"query": "string the search query used",
"results": "array of job listing objects with job_key, title, company_name, location, salary_snippet, relative_date, pub_date, snippet",
"location": "string the location searched",
"page_start": "integer the offset used"
},
"sample": {
"data": {
"count": 16,
"query": "comptable",
"results": [
{
"title": "Collaborateur / Collaboratrice Expertise-Comptable Confirmé(e)",
"job_key": "bdef791bf4dc3162",
"snippet": null,
"location": "75116 Paris",
"pub_date": null,
"company_name": "ECAI",
"relative_date": null,
"salary_snippet": null
}
],
"location": "Paris",
"page_start": 0
},
"status": "success"
}
}About the fr.indeed.com API
This API gives structured access to fr.indeed.com across 4 endpoints: search job listings by keyword and location, retrieve full job details including HTML description and benefits, query today's alternance offers, and pull company profiles with ratings and review counts. The search_jobs endpoint alone returns up to 16 fields per listing including job_key, salary_snippet, pub_date, and snippet, making it practical for job aggregators and recruiting tools targeting the French market.
Job Search and Listing Data
The search_jobs endpoint accepts a query string (e.g. 'développeur', 'comptable'), a location (e.g. 'Paris', 'Lyon'), a fromage parameter to filter by recency in days, and a start offset for pagination. Results include job_key, title, company_name, location, salary_snippet, relative_date, pub_date, and a short snippet. The first page returns approximately 15–16 results; paginate by incrementing start in steps of 10–15.
Job Detail Retrieval
Pass a job_key from search_jobs results to get_job_details to fetch the full record. The response includes description_html (the complete job description as HTML), benefits (array or null), job_type (array or null), salary_snippet, pub_date, company_name, and company_slug. The company_slug field feeds directly into get_company_profile.
Alternance and Company Endpoints
search_alternance_today is a scoped variant of search_jobs that fixes query='alternance' and fromage=1, returning apprenticeship listings posted in the last 24 hours. It accepts location and start for filtering and pagination, and returns the same listing object shape as search_jobs. get_company_profile takes a company_slug and returns company_name, rating, sector, jobs_count, and reviews_count — useful for enriching job results with employer context.
- Aggregate French job listings by role and city using
search_jobswithqueryandlocationparams - Build a daily alternance digest by polling
search_alternance_todaywithfromage=1 - Enrich a job board with full descriptions and benefits via
get_job_detailsusingdescription_htmlandbenefits - Score employers for a recruiting tool by pulling
ratingandreviews_countfromget_company_profile - Track new job postings in a specific sector by filtering
search_jobsresults bypub_date - Cross-reference company sector and open headcount using
sectorandjobs_countfromget_company_profile - Monitor salary ranges for French tech roles by collecting
salary_snippetacross paginatedsearch_jobscalls
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Indeed have an official developer API?+
What does `get_job_details` return that `search_jobs` does not?+
get_job_details returns the full description_html field containing the complete job description as HTML, a benefits array, a job_type array, and the company_slug used to call get_company_profile. The search_jobs results only include a short snippet, not the full description.How does pagination work in `search_jobs`?+
start parameter to offset results. Indeed France returns roughly 15–16 results per page, so increment start by 10–15 on each subsequent call. There is no explicit total-pages field; use the count field in the response to estimate how many pages exist.Does the API cover job applications or saved jobs from a user account?+
Are salary data and benefits always present in job detail responses?+
salary_snippet and benefits can be null in get_job_details responses, since many French job postings on Indeed do not include that information. job_type can also be null. Always handle null values in these fields when processing results.