indeed.com APIindeed.com ↗
Access Indeed job listings, full job details, company profiles, salary statistics, and more via a structured REST API with 5 endpoints.
curl -X GET 'https://api.parse.bot/scraper/6ec17689-852f-49ed-b969-1b787c8344e7/search_jobs?query=software+engineer&location=New+York' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for job listings on Indeed with filters and pagination. Returns job cards with metadata including titles, companies, locations, and pagination info.
| Param | Type | Description |
|---|---|---|
| jt | string | Job type: fulltime, parttime, contract, internship, temporary |
| queryrequired | string | Job title, keywords, or company name |
| start | integer | Pagination offset (usually in increments of 10) |
| explvl | string | Experience level: entry_level, mid_level, senior_level |
| fromage | string | Number of days since posted: 1, 3, 7, 14, 30 |
| location | string | City, state, or 'remote' |
{
"type": "object",
"fields": {
"results": "array of job card objects with jobkey, title, company, formattedLocation, snippet, salary info",
"metaData": "object containing search metadata (mosaicId, mosaic provider info)",
"tierResults": "array of tier-grouped job results"
},
"sample": {
"data": {
"results": [
{
"title": "Software Engineer",
"jobkey": "abc123",
"company": "Acme Corp",
"snippet": "We are looking for...",
"formattedLocation": "New York, NY"
}
],
"metaData": {
"mosaicId": "example"
},
"tierResults": []
},
"status": "success"
}
}About the indeed.com API
The Indeed API provides access to 5 endpoints covering job search, full job details, company profiles, company search, and salary statistics drawn from Indeed.com. The search_jobs endpoint accepts filters for job type, experience level, location, and post date, returning job cards with titles, companies, locations, salary info, and pagination metadata. The get_salary_info endpoint returns median, mean, and standard deviation broken down by hourly, weekly, monthly, and yearly periods alongside state-by-state salary maps.
Job Search and Details
The search_jobs endpoint accepts a required query string and optional filters including jt (job type: fulltime, parttime, contract, internship, temporary), explvl (entry_level, mid_level, senior_level), fromage (days since posted: 1, 3, 7, 14, 30), and location (city, state, or 'remote'). Pagination is controlled via the start parameter in increments of 10. Each result in the results array includes a jobkey, title, company, formattedLocation, snippet, and salary information. The tierResults field groups results by tier, and metaData carries search-level metadata.
For individual postings, get_job_details takes a 16-character hex jk job key and returns the full job description via jobInfoWrapperModel.jobInfoModel, salary range fields (salaryMin, salaryMax, salaryType, salaryText) inside salaryInfoModel, and hiringInsightsModel containing posting age and candidate count.
Company Data
search_companies finds companies by name and returns each result's name, rating, reviewsCount, companyUrl, and sectors. Once you have a company slug, get_company_profile returns a detailed view: aboutSectionViewModel includes the company description, CEO info, industry, and headquarters; reviewsSectionViewModel surfaces recent employee reviews; and reviewRatingOverallSectionViewModel provides an overall rating alongside category-level breakdowns. Salary data by role category is available in salarySectionViewModel.
Salary Statistics
The get_salary_info endpoint accepts a required job_title and an optional location. The response includes localSalaryAggregate and nationalSalaryAggregate objects with median, mean, and standard deviation across HOURLY, DAILY, WEEKLY, MONTHLY, and YEARLY periods. Additional objects include salaryMapInfo for state-by-state breakdowns, topPaidCities for city-level salary comparisons, and relatedTitlesResponse listing adjacent job titles with their own salary data.
- Aggregate remote software engineering job listings filtered by experience level and post date for a job board.
- Pull salary medians and standard deviations by state for a compensation benchmarking tool.
- Enrich a company database with Indeed ratings, review counts, headquarters, and sector data via
get_company_profile. - Track posting volume and candidate counts for specific roles using
hiringInsightsModelfromget_job_details. - Build a job alert system that polls
search_jobsdaily using thefromage=1filter. - Compare salaries across related job titles using
relatedTitlesResponseinget_salary_info. - Surface top-paying cities for a given role using the
topPaidCitiesfield in salary responses.
| 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?+
How does pagination work in `search_jobs`?+
start parameter to offset results, typically in increments of 10. A start value of 0 returns the first page, 10 returns the second, and so on. The response does not include a total result count field, so iteration should continue until fewer than 10 results are returned.What does `get_job_details` return that `search_jobs` does not?+
search_jobs returns summary cards with a snippet and basic salary info. get_job_details returns the full job description text inside jobInfoWrapperModel.jobInfoModel, structured salary range fields (salaryMin, salaryMax, salaryType), and hiringInsightsModel with candidate count and posting age — none of which are present in search results.Does the API return job application data or let you submit applications?+
Are job listings available for countries outside the United States?+
location parameter accepts US city and state values, and salary data resolves US locations. International Indeed markets (UK, Canada, Australia, etc.) are not currently covered by the endpoint set. You can fork this API on Parse and revise it to target Indeed's regional domains and add location parameters for those markets.