Indeed API

  • Data from Indeed

Indeed API for job listings, salaries and company ratings

Search Indeed by keyword and place and get every listing on the page with its title, company, location, posted pay, posting date and company rating. Structured JSON, priced per page.

1,000 free credits a month · Failed requests are free · Free during the beta

Endpoints and prices checked against the API on

Indeed is one of the largest job boards, so its listings are a standard source for job-market research, salary benchmarking, recruiting and staffing lead lists. Indeed’s APIs are for employers, agencies and applicant-tracking systems that post and manage their own jobs; none of them returns search results as data. This API runs a search on indeed.com, Indeed’s US site, and returns each listing from Indeed’s own job model.

Pay on Indeed is posted in many forms, from “$27.87 an hour” to yearly ranges. Each record keeps Indeed’s salary text and adds the minimum, maximum and period Indeed extracted from it, so hourly and yearly pay can be compared. Sponsored listings are mixed into Indeed’s results; they come labelled rather than removed. For every opening at one company, the careers endpoints read the company’s applicant-tracking system directly.

What you get

  • jobkey — Indeed’s id for the listing, also used in its link
  • title, company, location — as Indeed lists them, with the location’s ZIP code when Indeed shows one
  • salary — the pay text word for word, plus the min, max and period (hourly, yearly…) Indeed extracted
  • posted, created — Indeed’s relative age, such as “6 days ago”, and the date the listing was created
  • company_rating, company_review_count — the employer’s Indeed rating and how many reviews it has
  • job_types[], remote — job types such as part-time, and whether the listing is remote
  • sponsored — true for paid listings, which are labelled instead of dropped
  • link, snippet — Indeed’s link to the listing and the summary from the result card

One call, structured JSON

POST /v1/indeed/jobs — 2 credits per successful call.

curl -X POST "https://api.scrapercompany.com/v1/indeed/jobs" \
  -H "x-api-key: $SCRAPERCOMPANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "q": "hotel jobs"
  }'
Response (trimmed)
{
  "search_parameters": {
    "engine": "indeed_jobs",
    "q": "hotel jobs",
    "location": "Chicago, IL",
    "page": 1
  },
  "jobs_results": [
    {
      "jobkey": "8f0ec6e87b6ba389",
      "title": "Front Desk Agent",
      "company": "Marriott International, Inc",
      "location": "Chicago, IL 60616",
      "salary": {
        "text": "$27.87 an hour",
        "min": 27.87,
        "max": 27.87,
        "period": "HOURLY"
      },
      "posted": "6 days ago",
      "created": "2029-03-01",
      "company_rating": 4,
      "company_review_count": 26245,
      "job_types": [],
      "remote": false,
      "sponsored": false,
      "link": "https://www.indeed.com/rc/clk?jk=8f0ec6e87b6ba389",
      "snippet": "Process all guest check-ins by confirming reservations, assigning room…"
    },
    {
      "jobkey": "e3479bc018d43229",
      "title": "Housekeeping Attendant",
      "company": "Sonesta International Hotels",
      "location": "Chicago, IL",
      "salary": {
        "text": "$21.00 an hour",
        "min": 21,
        "max": 21,
        "period": "HOURLY"
      },
      "posted": "1 day ago",
      "created": "2029-03-06",
      "company_rating": 4.1,
      "company_review_count": 402,
      "job_types": [
        "PART_TIME"
      ],
      "remote": false,
      "sponsored": false,
      "link": "https://www.indeed.com/rc/clk?jk=e3479bc018d43229",
      "snippet": "Clean guest rooms and public areas."
    }
  ],
  "total": 2,
  "meta": {
    "source": "indeed",
    "wire_bytes": 1759431,
    "elapsed_s": 1.488
  }
}

Endpoints and price per call

Credits per successful call, and what one call costs on the Starter, Growth, Scale plans. Failed requests cost nothing. See all plans.

EndpointWhat it returnsCreditsStarter · Growth · Scale
Job search
POST /v1/indeed/jobs
One page of listings for a query and place, with radius and posting-age filters2 credits$0.0020 · $0.0012 · $0.0008
Does Indeed have a public API?

Not one for reading job listings. Indeed’s partner APIs, such as the Job Sync API, let applicant-tracking systems, agencies and employers post and manage their own jobs, and publishing partners get a front-end plugin that displays Indeed jobs on their site. This API is independent of Indeed and returns the listings indeed.com shows for a search, as data.

How is salary returned?

Both as posted and as numbers. salary.text is the pay exactly as Indeed shows it, and salary.min, salary.max and salary.period are the range and period Indeed extracted from it. Listings without posted pay come back with empty salary values.

Are sponsored jobs included?

Yes, and they are labelled. Indeed mixes paid listings into its results, and each record has sponsored set to true or false, so you can keep or drop them. Duplicate listings within one page are removed.

Which search options are supported?

q is the search text and location is a city, a state or “remote”. radius_km sets the distance around the location, fromage_days sets the oldest posting age in days (up to 30), and page (1 to 30) moves to later pages. Use jobkey to de-duplicate listings you collect across pages and days.

Can I get every open job at one company?

Use the company careers endpoints for that. Give a careers page or job-board URL and they find the applicant-tracking system behind it (Greenhouse, Lever, Ashby, Workable, SmartRecruiters, Workday, Recruitee or Personio) and return the open jobs on that board in one normalized shape.

Do failed requests cost credits?

No. A failed or blocked call (any 4xx or 5xx response) costs 0 credits, and so does a search page that comes back empty. You pay only for successful results.

How do I get an API key?

Create an account on the sign-up page. Public sign-up is invite-only during the beta, so join the waitlist there and we will email you when your account is ready. The Free plan includes 1,000 credits a month, and the API is free while it is in beta. You create and rotate keys yourself in the dashboard.

Start with 1,000 free credits a month

Join the waitlist and we will email you when your account is ready: your own API keys, 1,000 free credits a month, and the API is free during the beta.

Sign-up is invite-only during the beta. Privacy

Or read the quickstart →