Job Postings API - View, monitor, and analyze 1.8M+ US jobs

A free, hosted job listings API with 1.8M+ listings across 60k companies. Get comprehensive active and historical job data from 30+ applicant tracking systems, with companies spanning industries and stages.

Add a comment

Replies

Best

the use case i'd want to validate before building on this is freshness. job postings have a short shelf life and a listing that was active three days ago might already be filled or pulled. what does the update frequency look like across the 1.8M listings and is there a way to query only postings updated within a specific window so i'm not surfacing stale data to end users. that latency question is probably the thing that determines whether this works for real-time job search applications or only for market analysis

 Some good points here. It is a daily sync, so 'active' jobs are active as of that morning. You start to see patterns for when jobs are added / pulled and this aligns roughly with what companies do. Because we keep inactive jobs, if you chose to look back at older listings, you can. Otherwise, if it is active, regardless of how long it has been up, it is fresh.

 that makes sense. the pattern recognition on when jobs get added and pulled is actually the more interesting data product long term. if you know that certain company types tend to pull listings after 14 days or that postings in certain roles have shorter active windows, that metadata becomes useful signal for prioritization in job search applications. is any of that pattern data exposed in the API or is it something you'd have to derive from the historical records yourself

 I hadn't thought of that but I agree that's a very interesting data point. Uptime for a job listing before it's taken down. It isn't perfect signal but it's definitely something and I'm sure trends would emerge around fast v. slow.

is it actually free to consume? I might have an use case for my portal, Obvelum

 Yes, with an API key (only requires auth via your email) you get 100 rps / 500 burst. If you need higher limits, ping me and I'll get you set up for Obvelum.

   This was my question; very cool.

Can you ballpark the paid tiers for low to moderate usage for a solo developer (say, 10k-100k calls per day)?

   As long as they aren't all at once, you'll easily fall under the free tier. If you need above 100k+ calls, or you hit rate limits with your auth'd account, you can ping me and I'll increase rate limits.

 How does one get an API key to test it out?

The normalization layer is where I'd want to understand the depth of work done. Thirty-plus ATSs means thirty-plus ways to express job title, seniority, and employment type — and raw aggregation without opinionated normalization just moves the cleanup problem to whoever's consuming the API. How standardized are fields like seniority level or work location across sources, or is that still left to the builder?

 There's some high-level normalization but it's mostly up to the AI / the end system to reconcile things like company names or roles. At some point, we will internalize this to make it a better experience out of the box.

This is like a Wayback Machine for job listings. Maybe a data analyst can use this to see the number of times a company posts the same job type in a given time period and gauge overall turnover rate.

 I like this idea! I think the historical job data should be a really rich source for that type of analysis.

Unified ATS access is the part people underestimate. Anyone who built a jobs-data side project knows you start scraping LinkedIn/Indeed and rebuild it monthly when something breaks. 30+ ATS in one schema removes the worst part of the stack. Free tier is a strong play for early devs.

 The standardization at the ATS level does make it a bit easier!

Historical job data is super useful for trend analysis. Do you expose fields like salary ranges and remote policy consistently, or is that only available when the ATS includes it?

 Short answer, it depends. Some ATSs have great salary coverage as a structured field, others do not. And within each ATS, some companies list it v. make it unstructured text v. don't include. I wouldn't expect it to be on the majority of listings, but if you ingest the job description text, you can probably expect 50%+ coverage. Remote policies are a similar story, although "in-person" v. "remote" v. "hybrid" have better cross-ATS coverage.

Only the US? Will other countries be supported?

And a second question: how up-to-date are the job listings? How often is the database updated? I need to track job postings by keywords and receive a list of vacancies for specific technologies immediately after they are published, ideally within 1 hour.

 US/Canada for now. I'd like to expand to other countries at some point. The job listings are synced once a day in the morning, so it wouldn't satisfy your use case. However, if you ping me, we can talk about setting up something that's faster for your use case.

怎么更新信息的时效性?

I would like to see this include a verification badge. Verified that the job is active, the company is real and even show how many active postings a company has, how many they post and repost

 Could you elaborate on the role of verification? The way the API works is: if the job is on a company's job board, it is marked active. If it is removed, it is marked inactive. At the job board level, you can see the # of active postings, along with other details about the org.

 Yes the difficulty is that there are job boards that scrape and post and then don't update. They use old or outdated information. What I am suggesting (tall order) is for there to be a verification badge that says this role has been verified by a human (making this up as I go) and is active. Right now if I find a role while searching I manually jump to their website and verify that it is still there. Sometimes the company even posts how long it has been active. Anyway these are pain points for all job searchers. Is the job valid, is the company valid, how often are they hiring vs posting.

This looks really useful for market research especially tracking hiring trends by company or category over time. For active roles, how often are listings refreshed? I imagine freshness matters a lot if someone wants to build job search or alert workflow on top of it.

 Once a day in the early morning, though depending on your use case, we could speed this up.

12
Next
Last