Looking for the overview — what this API returns, what it costs, and a call you can run without a key? See the Indeed API page →
Jobs & Hiring

Indeed API & Scraper

The Indeed API returns live job listings, salary data and company profiles as clean JSON.

7 actionsLive JSON1,000 free credits$0.67–$1.50 / 1,000 creditsMCP-ready
Get a free keyOpen in playground

🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.

The primary jobs/search endpoint returns jobs with jobkey, title, company, location, remote flag, employment types, job level and salary range, and you can pull a single job, a company profile, company reviews and salaries, and an estimated salary for a role. It is built for recruiting tools, labor-market analysts and job boards that need live Indeed data without a scraper. One ReefAPI key, one shared credit pool, the standard envelope.

Reference

Country sites, the jobkey, and which salary fields each action fills

Indeed is not one site but roughly 60 country sites, and a jobkey only means something on the one it came from. Salary is genuinely parsed into numbers rather than left as a snippet, but the two job-bearing actions fill different salary fields from different sources. Measured on 'python developer' in New York (60 rows), a nine-country sweep, jobkeys 91ddcf600033e1ee and 29d4f6e637589348, the Microsoft company profile, and a 'software engineer' estimate for Austin, TX.

ThingMeasuredNote
jobkey16 lowercase hex characters: 91ddcf600033e1ee. All 60 rows in one search were exactly 16 characters.It is the ?jk= value in an Indeed job URL. The job action accepts a single key, a list of keys, or full URLs.
country=USwww.indeed.comThe default. Every other country is a separate site with its own postings and its own jobkeys.
country=CA, DE, IN, AU, FR, TR, BRca.indeed.com, de.indeed.com, in.indeed.com, au.indeed.com, fr.indeed.com, tr.indeed.com, br.indeed.comAll seven returned live rows in our sweep. The enum lists about 60 codes in total; the rest we did not test.
country=UKReturned TARGET_BLOCKED at the time of writingRecorded as measured, not as a permanent verdict. Other European sites in the same sweep answered normally.
salary_min / salary_maxFloats, with salary_period 'YEARLY' or 'HOURLY' and salary_currency alongsideOf 60 New York rows, 58 were priced, 59 YEARLY and 1 HOURLY. salary_yearly_min and salary_yearly_max are always annualized, so compare on those.
salary_source'EMPLOYER' on jobs/search rows, 'EXTRACTION' on the company action's job rowsEMPLOYER means the pay came from the employer's structured posting. EXTRACTION means it was read out of the salary text, and only then are salary_text and the salary_range object filled.
posted_iso / posted_epoch_msposted_iso is a date only, '2026-08-26'. posted_epoch_ms is usually rounded to midnight US-Eastern.These are real posting dates, not fetch times: one 60-row search spanned 11 distinct days back to 2026-06-18. On the company action posted_iso is null and you get posted_relative ('15 days ago') instead.
job bodydescription_text and description_html, not a field called descriptionFilled on jobs/search and job, roughly 7,000 to 11,000 characters of text. Both are null on the job rows embedded in the company action.
job_level'Entry level', 'Mid-level', 'Senior level'Present on jobs/search and job rows, null on the company action's rows.
estimated_salarylocal_estimate and national_estimate, each {median, min, max, mean, std, sample_size, period, inferred, currency, cash_bonus_mean}'software engineer' in Austin, TX: local median 128,732 from 877 samples, national median 135,623 from 39,364. avg_salary_by_us_state carries 51 keys, the 50 states plus DC.

In estimated_salary, top_paid_cities gives you a city object with displayName and locationUrlSegment, but its mean was null on every row we read, so that block is an ordering rather than a set of figures. avg_salary_by_us_state is the field that actually carries numbers.

Live example

Real request and response JSON

Captured from the indexed primary action, jobs/search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/indeed/v1/jobs/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "query": "python developer",
    "location": "New York",
    "country": "US",
    "max_results": 60
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "indeed",
    "endpoint": "jobs/search",
    "mode": "live",
    "latency_ms": 906.4,
    "record_count": 60,
    "bytes": 0,
    "cache_hit": false,
    "charged_credits": 3,
    "version": "1.3.0"
  },
  "data": {
    "jobs": [
      {
        "jobkey": "23635acc7a4c6f9b",
        "indeed_url": "https://www.indeed.com/viewjob?jk=23635acc7a4c6f9b",
        "search_query": "python developer",
        "search_country": "US",
        "title": "MES Analyst",
        "normalized_title": null,
        "company": "Corning",
        "company_rating": null,
        "company_review_count": null,
        "company_logo_url": "https://d2q79iu7y748jz.cloudfront.net/s/_squarelogo/256x256/d8c4a309ebecc5431f7aa8881113c519",
        "company_url": "https://www.indeed.com/cmp/Corning-4",
        "company_industry": "Industrial Manufacturing",
        "company_employees": "10,000+",
        "company_revenue": "more than $10B (USD)",
        "company_description": "Corning is one of the world’s leading innovators in glass, ceramic, and materials science. From the depths of the ocean to the farthest reaches of space, our technologies push the boundaries of what’s",
        "company_website": "http://www.corning.com/",
        "formatted_location": "Fairport, NY 14450",
        "city": "Fairport",
        "state": "NY",
        "postal_code": "14450",
        "country": "US",
        "remote": false,
        "location": null,
        "salary_text": null,
        "salary_min": 78062,
        "salary_max": 107335,
        "salary_period": "YEARLY",
        "salary_currency": "USD",
        "salary_source": "EMPLOYER",
        "salary_yearly_min": 78062,
        "salary_yearly_max": 107335,
        "salary_usd_yearly_normalized": null,
        "salary_range": null,
        "posted_relative": null,
        "posted_iso": "2026-09-23",
        "posted_epoch_ms": 1790139600000,
        "valid_through": null,
        "sponsored": false,
        "urgently_hiring": false,
        "new_job": false,
        "expired": false,
        "indeed_apply": false,
        "apply_url": "https://corningjobs.corning.com/job/Fairport-MES-Analyst-NY-14450/1432899900/",
        "external_apply_url": "https://corningjobs.corning.com/job/Fairport-MES-Analyst-NY-14450/1432899900/",
        "snippet_html": null,
        "snippet_text": null,
        "description_html": "<p><b>Date: </b>Sep 23, 2026</p>\n<br><p><b>Location:</b> Fairport, NY, US, 14450</p>\n<br><p><b>Company: </b>Corning</p>\n<br><div><p>Requisition Number: 78225</p><br>\n<p></p><p><b>The company built on breakthroughs.\n</b><br>\n<b>Join us.<br>\n</b></p><p></p><p>Corning is one of the world&rsquo;s leading innovators in glass, ceramic, and materials science. From the depths of the ocean to the farthest reaches of space, our technologies push the boundaries of what&rsquo;s possible.<br>\n</p><p></p><p>How do we do this? With our people. They break through limitations and expectations &ndash; not once ",
        "description_text": "Date:  Sep 23, 2026 \n Location:  Fairport, NY, US, 14450 \n Company:  Corning \n Requisition Number: 78225 \n The company built on breakthroughs.\n \n Join us. \n Corning is one of the world’s leading innovators in glass, ceramic, and materials science. From the depths of the ocean to the farthest reaches of space, our technologies push the boundaries of what’s possible. \n How do we do this? With our people. They break through limitations and expectations – not once in a career, but every day. They help move our company, and the world, forward. \n At Corning, there are endless possibilities for makin",
        "indeed_skills": [
          "Quality control corrective actions",
          "Version control",
          "Systems integration"
        ],
        "benefits": [
          "Paid parental leave",
          "Disability insurance",
          "Health insurance"
        ],
        "employment_types": [
          "Full-time"
        ],
        "job_level": "Mid-level",
        "work_schedule": null,
        "onet_skills": null,
        "ai_summary": null
      },
      {
        "jobkey": "985e2e0b98ceeafb",
        "indeed_url": "https://www.indeed.com/viewjob?jk=985e2e0b98ceeafb",
        "search_query": "python developer",
        "search_country": "US",
        "title": "Full Stack Developer",
        "normalized_title": null,
        "company": "Teso Life",
        "company_rating": null,
        "company_review_count": null,
        "company_logo_url": null,
        "company_url": "https://www.indeed.com/cmp/Teso-Life",
        "company_industry": null,
        "company_employees": null,
        "company_revenue": null,
        "company_description": null,
        "company_website": null,
        "formatted_location": "Flushing, NY 11354",
        "city": "Flushing",
        "state": "NY",
        "postal_code": "11354",
        "country": "US",
        "remote": false,
        "location": null,
        "salary_text": null,
        "salary_min": 110000,
        "salary_max": 140000,
        "salary_period": "YEARLY",
        "salary_currency": "USD",
        "salary_source": "EMPLOYER",
        "salary_yearly_min": 110000,
        "salary_yearly_max": 140000,
        "salary_usd_yearly_normalized": null,
        "salary_range": null,
        "posted_relative": null,
        "posted_iso": "2026-09-23",
        "posted_epoch_ms": 1790179680000,
        "valid_through": null,
        "sponsored": false,
        "urgently_hiring": false,
        "new_job": false,
        "expired": false,
        "indeed_apply": false,
        "apply_url": "https://ats.rippling.com/tesolife-us-inc/jobs/4735ac03-7c3d-427c-a6e2-1c59816a7550?jobSite=Indeed",
        "external_apply_url": "https://ats.rippling.com/tesolife-us-inc/jobs/4735ac03-7c3d-427c-a6e2-1c59816a7550?jobSite=Indeed",
        "snippet_html": null,
        "snippet_text": null,
        "description_html": "<div><div><p><b>About TESO Group</b><br>\nFounded in 2017 in New York, TESO Group is an Asian-inspired lifestyle retail company bringing premium Asian products and culture to the U.S. market. With brands including TESO LIFE, TESO X, and TESO Mini, we offer a curated mix of beauty, snacks, home goods, and trendy collectibles&mdash;delivering quality, value, and a unique shopping experience.</p></div><p></p><div><p><b><br>\nPosition Overview</b></p><p>\nThe Full-Stack Developer builds and guards the company&rsquo;s in-house systems, maintaining TESO Dock, TESO Dashboard, and TESO Tools in productio",
        "description_text": "About TESO Group \nFounded in 2017 in New York, TESO Group is an Asian-inspired lifestyle retail company bringing premium Asian products and culture to the U.S. market. With brands including TESO LIFE, TESO X, and TESO Mini, we offer a curated mix of beauty, snacks, home goods, and trendy collectibles—delivering quality, value, and a unique shopping experience. \nPosition Overview \nThe Full-Stack Developer builds and guards the company’s in-house systems, maintaining TESO Dock, TESO Dashboard, and TESO Tools in production while building new systems and features per roadmap priorities. \nThis role",
        "indeed_skills": [
          "Performance dashboard reports",
          "Roadmap creation (System development task)",
          "Dashboard development"
        ],
        "benefits": [
          "Performance bonus",
          "Quarterly bonus",
          "Health insurance"
        ],
        "employment_types": [
          "Full-time"
        ],
        "job_level": "Mid-level",
        "work_schedule": null,
        "onet_skills": null,
        "ai_summary": null
      },
      {
        "jobkey": "f0c5a06e69cef889",
        "indeed_url": "https://www.indeed.com/viewjob?jk=f0c5a06e69cef889",
        "search_query": "python developer",
        "search_country": "US",
        "title": "2027 Quantitative Research - Risk and Treasury - Summer Internship - Associate - United States",
        "normalized_title": null,
        "company": "JPMorganChase",
        "company_rating": null,
        "company_review_count": null,
        "company_logo_url": "https://d2q79iu7y748jz.cloudfront.net/s/_squarelogo/256x256/62e186e96c7550325814ef6880fae379",
        "company_url": "https://www.indeed.com/cmp/Jpmorganchase-2",
        "company_industry": null,
        "company_employees": "10,000+",
        "company_revenue": "more than $10B (USD)",
        "company_description": "Headquartered in New York City, JPMorgan Chase is the largest bank in the United States.",
        "company_website": "https://www.jpmorganchase.com/",
        "formatted_location": "New York, NY 10001",
        "city": "New York",
        "state": "NY",
        "postal_code": "10001",
        "country": "US",
        "remote": false,
        "location": null,
        "salary_text": null,
        "salary_min": 123500,
        "salary_max": 170000,
        "salary_period": "YEARLY",
        "salary_currency": "USD",
        "salary_source": "EMPLOYER",
        "salary_yearly_min": 123500,
        "salary_yearly_max": 170000,
        "salary_usd_yearly_normalized": null,
        "salary_range": null,
        "posted_relative": null,
        "posted_iso": "2026-09-23",
        "posted_epoch_ms": 1790139600000,
        "valid_through": null,
        "sponsored": false,
        "urgently_hiring": false,
        "new_job": false,
        "expired": false,
        "indeed_apply": false,
        "apply_url": "https://JPMorganChase.contacthr.com/153700939",
        "external_apply_url": "https://JPMorganChase.contacthr.com/153700939",
        "snippet_html": null,
        "snippet_text": null,
        "description_html": "<div><b>JOB DESCRIPTION</b><br>\n<br>\n<br>\n<p>At JPMorganChase, we champion your innovative ideas through a supportive culture that helps you every step of the way as you build your career. If you are passionate, curious and ready to make an impact, we are looking for you.</p><p>\n</p><p><b>Job Summary</b></p><p>\nAs a Quantitative Research &ndash; Risk and Treasury Summer Associate in the Quantitative Modeling Program, you will work alongside top-tier professionals in a dynamic environment. You'll apply academic knowledge to real-world financial challenges, gain hands-on experience, and build a ",
        "description_text": "JOB DESCRIPTION \n \n \n At JPMorganChase, we champion your innovative ideas through a supportive culture that helps you every step of the way as you build your career. If you are passionate, curious and ready to make an impact, we are looking for you. \n Job Summary \nAs a Quantitative Research – Risk and Treasury Summer Associate in the Quantitative Modeling Program, you will work alongside top-tier professionals in a dynamic environment. You'll apply academic knowledge to real-world financial challenges, gain hands-on experience, and build a valuable network. This program sets a solid foundation",
        "indeed_skills": [
          "AI models",
          "Financial forecasting",
          "MATLAB"
        ],
        "benefits": [],
        "employment_types": [
          "Full-time"
        ],
        "job_level": "Entry level",
        "work_schedule": null,
        "onet_skills": null,
        "ai_summary": null
      }
    ]
  }
}
Actions

What the Indeed API does

ActionDescriptionConcrete use caseKey params
jobs/searchSearch live job postings on Indeed by keyword and location. Each result includes the full job description, salary range, employer details, posting date, apply link, employment type and remote flag. Filter by job type, remote/hybrid, seniority, posting date and radius. Covers 60+ Indeed country sites.Recruiting teams call jobs/search to search live job postings on Indeed by keyword and location.query, country, location, max_results, sort_by, ...
jobGet the full detail of one or more specific jobs by their Indeed job key (or job URL). Returns the complete job description, salary, employer details, location, posting date, skills, benefits and apply link for each. Pass several keys at once to fetch them in a single call.Labor-market analysts call job to get the full detail of one or more specific jobs by their Indeed job key (or job URL).jobkey, country
companyLook up a company on Indeed: profile (industry, size, revenue, HQ, founded year, description, website), reputation (overall rating, review count, CEO approval) and optionally the company's open jobs.Job boards call company to look up a company on Indeed.company, country, include_jobs, max_jobs
company/searchFind companies on Indeed by name or keyword (optionally near a location). Returns a ranked list of companies with each one's overall rating, review count, industry sectors, logo and links to its Indeed profile, jobs, reviews and salaries pages.Sales intelligence teams call company/search to find companies on Indeed by name or keyword (optionally near a location).query, country, location, max_results
company/reviewsGet a company's employee reviews from Indeed (review text, overall rating, the 5 sub-ratings — work/life balance, compensation, management, culture, job security — job title, location and date). Pass the company name or Indeed /cmp slug; paginate with `start`.Recruiting teams call company/reviews to get a company's employee reviews from Indeed (review text, overall rating, the 5 sub-ratings.company, max_reviews, start, sort
company/salariesGet a company's salary breakdown by job title from Indeed (average pay, pay period and the number of salaries reported per role). Pass the company name or Indeed /cmp slug.Labor-market analysts call company/salaries to get a company's salary breakdown by job title from Indeed (average pay, pay period and the nu….company
estimated_salaryEstimate the market salary for a job title (optionally in a specific US location) from Indeed's salary data — median/mean/min/max/std + sample size + average cash bonus, plus the top-paying companies, top-paid cities, related job titles and a per-US-state average map. Both the location-specific estimate and the national estimate are returned.Job boards call estimated_salary to get estimate the market salary for a job title (optionally in a specific US location) from Indeed….job_title, location
Code samples

Call jobs/search from your stack

curl -X POST https://api.reefapi.com/indeed/v1/jobs/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"python developer","location":"New York","country":"US","max_results":60}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.indeed.jobs/search with {"query":"python developer","location":"New York","country":"US","max_results":60}.
Use cases

Who uses this API and why

  • Job boards call jobs/search to aggregate fresh listings by role, location and remote status.
  • Compensation tools use estimated_salary and company/salaries to benchmark pay for a title.
  • Sales-intelligence teams use company and jobs/search to detect hiring signals at target accounts.
FAQ

Questions developers ask before integrating

What does an Indeed jobkey look like, and where do I get one?

It is 16 lowercase hex characters, for example 91ddcf600033e1ee, and it is the ?jk= parameter in any Indeed job URL. Every row from jobs/search carries it as jobkey along with the matching indeed_url. The job action takes a single key, an array of keys, or full job URLs, so you can refresh a batch of saved postings in one call.

Which country sites are live?

The country enum lists about 60 codes and each one is a genuinely separate site: US serves www.indeed.com and everything else serves a subdomain such as ca.indeed.com or de.indeed.com. In our sweep US, CA, DE, IN, AU, FR, TR and BR all returned rows, while UK came back TARGET_BLOCKED at the time of testing. A jobkey from one country does not resolve on another, so keep the country next to the key.

Is the salary a parsed range or a snippet string?

Parsed. jobs/search rows carry numeric salary_min and salary_max, a salary_period of YEARLY or HOURLY, salary_currency, and salary_yearly_min and salary_yearly_max already annualized. In a 60-row New York search, 58 rows were priced and salary_source was EMPLOYER on all of them, meaning the figures came from the employer's own structured posting rather than from text.

Why does the same company look different in jobs/search and in the company action?

They come from different Indeed surfaces. jobs/search returns full description_text, job_level, an exact posted_iso, and salary_source 'EMPLOYER' with salary_text null. The job rows nested inside the company action return the opposite: no description, job_level null, posted_iso null with posted_relative '15 days ago', and salary_source 'EXTRACTION' with salary_text '$97,600 - $206,400 a year' plus a salary_range object. Use the company action for the profile and ratings, then re-fetch those jobkeys through the job action when you need bodies.

How do I tell sponsored listings from organic ones?

Every row carries a sponsored boolean alongside urgently_hiring, new_job and expired. In our 60-row sample it was false on all of them, so treat it as a hint that is present rather than a reliable split between paid and organic placement. If ad placement matters to your analysis, compare the same query under sort_by='relevance' and sort_by='date' instead.

What is the difference between posted_iso and posted_epoch_ms?

posted_iso is a plain date such as '2026-08-26' with no time at all. posted_epoch_ms is a millisecond timestamp, usually rounded to midnight US-Eastern for that same day, though a few rows carried an exact time. They are genuine posting dates rather than fetch times: one 60-row search covered 11 distinct days going back to 2026-06-18.

What does estimated_salary give me that a job row does not?

Market context rather than one employer's offer. You get local_estimate and national_estimate side by side, each with median, mean, min, max, std and the sample size behind them, so you can see how thin a local figure is. For 'software engineer' in Austin, TX the local median was 128,732 from 877 reports against a national median of 135,623 from 39,364. It also returns top_paying_companies, related job titles and a 51-key state map.

Is the job description HTML or plain text?

Both, as two separate fields. description_html keeps Indeed's markup, including the jobSectionHeader headings employers use, and description_text is the flattened version, typically a few thousand characters shorter. Alongside them you get indeed_skills, an extracted skill list that ran to 60 entries on one posting, and a benefits array that is often empty.

What is the Indeed API?

Indeed API is a ReefAPI endpoint group for job search and company profiles. It returns live JSON through POST requests under /indeed/v1.

Is the Indeed API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. Indeed calls use the same shared credit balance as every other ReefAPI engine.

Do I need an Indeed login or account?

No login to Indeed is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Indeed data?

The page example is captured from a live jobs/search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Indeed API use?

Indeed actions currently cost 1-2 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call Indeed from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call indeed actions with the same key, credit pool and JSON envelope used by normal REST requests.

docs / indeed

Indeed

Job search and company profiles.

base /indeed/v17 endpoints
post/indeed/v1/jobs/search1 credit

Search live job postings on Indeed by keyword and location. Each result includes the full job description, salary range, employer details, posting date, apply link, employment type and remote flag. Filter by job type, remote/hybrid, seniority, posting date and radius. Covers 60+ Indeed country sites.

ParameterAllowed / rangeDescription
queryrequired—What job to search for — job title, skill or company keyword.
country = USoptionalUS · CA · MX · UK · IE · DE · FR · ES · IT · NL · CH · AT · BE · LU · PT · SE · DK · NO · FI · PL · CZ · HU · RO · GR · UA · TR · AE · SA · QA · KW · BH · OM · IL · ZA · EG · MA · NG · IN · PK · SG · HK · PH · MY · ID · JP · KR · TW · TH · VN · AU · NZ · BR · AR · CL · CO · PE · EC · CR · PA · UY · VEIndeed country site to search. Each country is a separate Indeed site with its own jobs.
locationoptional—City, region or postal code to search around. Leave empty to search the whole country.
max_results = 60optional1–1000How many jobs to return (1–1000). The engine pages internally — no page/cursor needed.
sort_by = relevanceoptionalrelevance · dateResult ordering.
job_typeoptionalfulltime · parttime · contract · internship · temporary · permanent · seasonalOnly return jobs of this employment type.
remote = falseoptional—Only remote jobs.
hybrid = falseoptional—Only hybrid (part-remote) jobs.
leveloptionalentry_level · mid_level · senior_levelOnly jobs at this seniority level.
from_daysoptional1 · 3 · 7 · 14Only jobs posted within the last N days. Dropdown values work everywhere; other day-counts work on the primary API path.
radiusoptional0 · 5 · 10 · 15 · 25 · 35 · 50 · 100Search radius in miles around `location` (only used when a location is given). Dropdown values work everywhere; other mile-counts work on the primary API path.
include_detail = falseoptional—Force-fetch the full job description per job on the slow fallback path. Normally unnecessary — descriptions come inline.
Try in playground →
post/indeed/v1/job1 credit

Get the full detail of one or more specific jobs by their Indeed job key (or job URL). Returns the complete job description, salary, employer details, location, posting date, skills, benefits and apply link for each. Pass several keys at once to fetch them in a single call.

ParameterAllowed / rangeDescription
jobkeyrequired—One or more Indeed job keys (the 16-character id from a job URL, e.g. ?jk=c64905855731be67) or full Indeed job URLs. Accepts a single value or a list.
country = USoptionalUS · CA · MX · UK · IE · DE · FR · ES · IT · NL · CH · AT · BE · LU · PT · SE · DK · NO · FI · PL · CZ · HU · RO · GR · UA · TR · AE · SA · QA · KW · BH · OM · IL · ZA · EG · MA · NG · IN · PK · SG · HK · PH · MY · ID · JP · KR · TW · TH · VN · AU · NZ · BR · AR · CL · CO · PE · EC · CR · PA · UY · VEIndeed country site to search. Each country is a separate Indeed site with its own jobs.
Try in playground →
post/indeed/v1/company2 credits

Look up a company on Indeed: profile (industry, size, revenue, HQ, founded year, description, website), reputation (overall rating, review count, CEO approval) and optionally the company's open jobs.

ParameterAllowed / rangeDescription
companyrequired—Company name or Indeed company slug (the part after indeed.com/cmp/).
country = USoptionalUS · CA · MX · UK · IE · DE · FR · ES · IT · NL · CH · AT · BE · LU · PT · SE · DK · NO · FI · PL · CZ · HU · RO · GR · UA · TR · AE · SA · QA · KW · BH · OM · IL · ZA · EG · MA · NG · IN · PK · SG · HK · PH · MY · ID · JP · KR · TW · TH · VN · AU · NZ · BR · AR · CL · CO · PE · EC · CR · PA · UY · VEIndeed country site to search. Each country is a separate Indeed site with its own jobs.
include_jobs = trueoptional—Also list the company's open jobs.
max_jobs = 50optional1–500How many of the company's jobs to return (1–500).
Try in playground →
post/indeed/v1/company/search1 credit

Find companies on Indeed by name or keyword (optionally near a location). Returns a ranked list of companies with each one's overall rating, review count, industry sectors, logo and links to its Indeed profile, jobs, reviews and salaries pages.

ParameterAllowed / rangeDescription
queryrequired—Company name or keyword to search for (e.g. a name, industry or product).
country = USoptionalUS · CA · MX · UK · IE · DE · FR · ES · IT · NL · CH · AT · BE · LU · PT · SE · DK · NO · FI · PL · CZ · HU · RO · GR · UA · TR · AE · SA · QA · KW · BH · OM · IL · ZA · EG · MA · NG · IN · PK · SG · HK · PH · MY · ID · JP · KR · TW · TH · VN · AU · NZ · BR · AR · CL · CO · PE · EC · CR · PA · UY · VEIndeed country site to search. Each country is a separate Indeed site with its own jobs.
locationoptional—Optional city or region to bias the company search.
max_results = 50optional1–50How many companies to return (1–50, one page).
Try in playground →
post/indeed/v1/company/reviews1 credit

Get a company's employee reviews from Indeed (review text, overall rating, the 5 sub-ratings — work/life balance, compensation, management, culture, job security — job title, location and date). Pass the company name or Indeed /cmp slug; paginate with `start`.

ParameterAllowed / rangeDescription
companyrequired—Company name or Indeed /cmp slug.
max_reviews = 20optional1–20How many reviews to return from this page (1–20).
start = 0optional0–Pagination offset (0, 20, 40 …).
sort = relevanceoptionalrelevance · helpfulness · rating_desc · rating_asc · date_descHow to order the reviews.
Try in playground →
post/indeed/v1/company/salaries1 credit

Get a company's salary breakdown by job title from Indeed (average pay, pay period and the number of salaries reported per role). Pass the company name or Indeed /cmp slug.

ParameterAllowed / rangeDescription
companyrequired—Company name or Indeed /cmp slug.
Try in playground →
post/indeed/v1/estimated_salary1 credit

Estimate the market salary for a job title (optionally in a specific US location) from Indeed's salary data — median/mean/min/max/std + sample size + average cash bonus, plus the top-paying companies, top-paid cities, related job titles and a per-US-state average map. Both the location-specific estimate and the national estimate are returned.

ParameterAllowed / rangeDescription
job_titlerequired—The job title to estimate pay for (e.g. 'software engineer', 'registered nurse', 'truck driver').
locationoptional—Optional US city or state to localise the estimate (e.g. 'Austin, TX', 'California'). Omit for the national figure.
Try in playground →
Built for volume
5M+ requests a day

Measured at 60 requests a second across the fleet, with no central bottleneck. Volume pricing is on request, and per-key limits are raised for high-volume accounts.

Missing a source?
We build it

Tell us a site we do not cover yet and it becomes an engine. A customer asked for bestprice.gr on a Sunday and it was in the catalog the next day.

Support
2 minute median reply

Median time from a question in the live chat to the first answer, measured across every answered conversation. Setup help included, no support tier to buy.

One key, one balance
Every API included

No per-site plans and no separate subscriptions. One key and one credit pool across the whole catalog, so adding a source costs nothing up front.

Planning something large? Tell us the volume and the sources and we will come back with what it costs and what we would have to build.