Jobs & tech data for agents
Give any coding agent live job-market and tech-stack data. Install the skill and CLI, set your key, and let it work.
$ npx skills add jobspipe/jobspipe-cli$ npm i -g jobspipe-cli$ export JOBSPIPE_API_KEY=jp_live_...
One install, two commands, real data.

Install once
npx skills add jobspipe/jobspipe-cli
npm i -g jobspipe-cliThe skill teaches your agent; the CLI is one zero-dependency file. Export your key and both functions are callable. The key stays in your environment, never in the output.
Install skill and CLI
Run npx skills add jobspipe/jobspipe-cli for your agent, then npm i -g jobspipe-cli for the command it calls — a single zero-dependency file.
Set your key
Export JOBSPIPE_API_KEY. Get one free at signup in about 30 seconds, 1,000 jobs a month.
Ask your agent
Tell it to find roles or scan a company. It calls the live API and gets back normalized JSON, ready to use.
Everything JobsPipe does, callable by your agent.
Find live roles across 30+ sources
Search normalized, deduplicated postings from Workday, Greenhouse, Lever, Ashby, LinkedIn, and more. Filter by title, skill, location, remote, seniority, company, or recency.
$ jobspipe jobs --title "software engineer" --country US --remote --limit 5
- One JSON schema across every source
- Parsed salary ranges and resolved apply URLs
- Pass a raw filter object for the full query surface
Scan any company's tech stack
Detect the technologies a domain runs - frameworks, CDNs, analytics, payments, and more - each with a confidence score. Use open roles and stack together as a buying signal.
$ jobspipe stack stripe.com
- Frameworks, infra, analytics, and payments detected
- Confidence scores and category tags per technology
- Results cached, so repeat scans are instant
Skill, MCP, or raw REST.
Agent skill and CLI
The fastest path. Install the skill for your agent, then add the zero-dependency CLI with one npm command.
npx skills add jobspipe/jobspipe-cliView on GitHubMCP server
Connect over the Model Context Protocol from Claude, Cursor, or any MCP client. No API key needed - sign in when prompted.
claude mcp add --transport http jobspipe https://mcp.jobspipe.dev/mcpMCP guideREST API
Two endpoints, one Bearer key. Call it directly from any language or runtime.
api.jobspipe.dev/v1Read the docsGive your agent live hiring data.
Install the skill and CLI, add one key, and your agent is querying real job and tech-stack data in under two minutes.
What is JobsPipe?
JobsPipe is a unified Jobs API that returns normalized, deduplicated job postings from 30+ applicant tracking system (ATS) feeds and job boards as a single JSON schema, alongside a company tech-stack scanner that reveals the technologies a company runs. It is developer-first: you authenticate with an API key, call one endpoint, and get clean, structured records instead of brittle scrapers. A free tier with 1,000 jobs per month (1 credit = 1 job returned) lets you evaluate the API before upgrading.
JobsPipe by the numbers
- 30+
- ATS and job-board sources
- 1
- normalized JSON schema for every posting
- 1,000
- free jobs per month on the Free tier
- $1.96
- per 1,000 jobs on paid plans, down to $1.05 at volume
- 2-50
- requests per second, by plan tier
- 7 days
- tech-stack scan cache window
Key facts
- 30+ sources, spanning applicant tracking system (ATS) feeds and job boards such as Greenhouse, Lever, Ashby and Workday.
- One normalized JSON schema for every posting: stable ID, title, company, location, parsed salary range, remote flag, posted date, apply URL and full description.
- 1,000 free jobs per month on the Free tier, where 1 credit = 1 job returned.
- Plans: Free, Builder ($49 per month), Growth ($149 per month), Scale ($348 per month), Business ($525 per month).
- Results are deduplicated across sources, so a role posted to two ATS systems collapses into one record with every origin listed under sources.
- Parsed salary ranges expose minimum, maximum and currency as structured fields rather than free text.
- Company tech-stack scans are cached for 7 days to keep technographic lookups fast and cheap.
- Real-time webhooks fire when a job opens, changes or closes, so you never poll the full index.
How developers use the JobsPipe API
Job search. Query open roles by title, skill, location, remote status, seniority and recency, then page through normalized results. Because every record shares one schema, filtering and ranking work the same way across every source.
Hiring-signal intent. Track which companies are opening, changing or closing roles over time to infer growth, team direction and buying intent. Diff webhooks turn those changes into a real-time feed for sales, recruiting and market research.
Tech-stack and technographics. Run the tech-stack scanner against a company domain to learn the frameworks, languages and tools it uses, with results cached for 7 days so repeated lookups stay fast.
Agent integration. Connect JobsPipe to AI agents through the Model Context Protocol (MCP) server and the command-line interface (CLI), so an assistant can search jobs and read tech-stack data as tools without custom glue code.
JobsPipe vs building it yourself
| Capability | Build in-house | JobsPipe |
|---|---|---|
| Source coverage | Write and maintain a separate scraper or API client for each ATS and board. | 30+ sources behind a single endpoint, maintained for you. |
| Deduplication | Build fuzzy matching to merge the same role posted in several places. | Cross-source dedup is automatic, with every origin under sources. |
| Salary parsing | Hand-roll regex to turn salary strings into structured numbers. | Min, max and currency arrive as typed fields. |
| Maintenance | Fix breakage every time a source changes its markup or rate limits. | Source changes are absorbed upstream; your integration stays stable. |
| Time to first call | Weeks of crawler and pipeline work before the first clean record. | Minutes: grab a free key, run the cURL from the docs. |
Sources covered by JobsPipe
JobsPipe normalizes job postings from these applicant tracking systems and job boards into one schema. Each links to a page documenting its coverage and how to pull its postings through the API.
- Workday - Workday's official API is tenant-scoped OAuth. The public postings live on myworkdayjobs.com. JobsPipe collects those public tenants into one endpoint, one schema, one key.
- Paycom - Paycom has no public cross-employer jobs API, and JobsPipe does not collect Paycom. This page explains what Paycom exposes and how to reach the same employers through the boards JobsPipe does collect.
- Indeed - Indeed retired its Publisher API. JobsPipe collects Indeed's public postings into the same record shape as every other collected board, with no partner application.
- Glassdoor - Glassdoor retired its public API in 2022 and JobsPipe does not collect Glassdoor. This page explains what Glassdoor still exposes, and how to reach the same employers' postings through the boards JobsPipe does collect.
- Ashby - Ashby's Job Board endpoint covers one company at a time with no key. JobsPipe collects every public Ashby board in one call, in the same record shape as the other collected boards.
- Workable - Workable's APIs are keyed per account, and its widget feed is one company at a time. JobsPipe collects every public Workable board into one endpoint with the same record shape as the other collected boards.
- Lever - Lever's public postings endpoint is one of the cleanest in the ATS world, one company at a time. JobsPipe collects every public Lever board into one endpoint with the same record shape as the other collected boards.
- SmartRecruiters - SmartRecruiters' Posting API is public and keyless, one company at a time. JobsPipe collects every public SmartRecruiters board into one endpoint with the same record shape as the other collected boards.
- iCIMS - The iCIMS Talent Cloud API is partner-only, and the public data lives in per-employer career portals. JobsPipe does not collect iCIMS. Here is what each surface gives you and how to reach the same employers.
- Pinpoint - Pinpoint has no public cross-employer jobs API, and JobsPipe does not collect Pinpoint. This page explains what Pinpoint exposes and how to reach the same employers through the boards JobsPipe does collect.
- JazzHR - JazzHR has no public cross-employer jobs API, and JobsPipe does not collect JazzHR. This page explains what JazzHR exposes and how to reach the same employers through the boards JobsPipe does collect.
- Manatal - Manatal has no public cross-employer jobs API, and JobsPipe does not collect Manatal. This page explains what Manatal exposes and how to reach the same employers through the boards JobsPipe does collect.
- Breezy HR - Breezy HR has no public cross-employer jobs API, and JobsPipe does not collect Breezy HR. This page explains what Breezy HR exposes and how to reach the same employers through the boards JobsPipe does collect.
- Greenhouse - Greenhouse's Job Board API is free and public, one board token at a time. JobsPipe collects every public Greenhouse board into one endpoint, in the same record shape as the other collected boards.
- BambooHR - BambooHR's API is HRIS-shaped and keyed per company; its job postings live in a careers widget. JobsPipe does not collect BambooHR. Here is what each surface gives you and how to reach the same employers.
- Paylocity - Paylocity's API is partner-gated and per customer. Its public careers pages are not. JobsPipe collects those public Paylocity postings into one endpoint with the same record shape as the other collected boards.
- LinkedIn - LinkedIn's job APIs are partner-only. JobsPipe collects LinkedIn's public job postings into the same record shape as every other collected board, with status, ghost score and closed dates on each one.
- ZipRecruiter - ZipRecruiter's APIs are partner-only and built for sending jobs and applicants to ZipRecruiter. JobsPipe does not collect ZipRecruiter. Here is what each program gives you and how to reach the same employers' postings.
- SAP SuccessFactors - The SuccessFactors API you find first is OData, tenant-gated and built for HRIS integration. Public postings live on Career Site Builder pages. JobsPipe does not collect SuccessFactors. Here is what each surface gives you and how to reach the same employers.
- Zoho Recruit - Zoho Recruit has no public cross-employer jobs API, and JobsPipe does not collect Zoho Recruit. This page explains what Zoho Recruit exposes and how to reach the same employers through the boards JobsPipe does collect.
- Jobvite - Jobvite has no public cross-employer jobs API, and JobsPipe does not collect Jobvite. This page explains what Jobvite exposes and how to reach the same employers through the boards JobsPipe does collect.
- Taleo - Taleo has no public cross-employer jobs API, and JobsPipe does not collect Taleo. This page explains what Taleo exposes and how to reach the same employers through the boards JobsPipe does collect.
- Teamtailor - Teamtailor has no public cross-employer jobs API, and JobsPipe does not collect Teamtailor. This page explains what Teamtailor exposes and how to reach the same employers through the boards JobsPipe does collect.
- Personio - Personio has no public cross-employer jobs API, and JobsPipe does not collect Personio. This page explains what Personio exposes and how to reach the same employers through the boards JobsPipe does collect.
- USAJOBS - USAJOBS runs the rare official, free, self-serve jobs API. JobsPipe does not collect USAJOBS; pair the official API with JobsPipe for the private-sector half of the market.
- Recooty - Recooty has no public cross-employer jobs API, and JobsPipe does not collect Recooty. This page explains what Recooty exposes and how to reach the same employers through the boards JobsPipe does collect.
- Trakstar Hire - Trakstar Hire has no public cross-employer jobs API, and JobsPipe does not collect Trakstar Hire. This page explains what Trakstar Hire exposes and how to reach the same employers through the boards JobsPipe does collect.
- Polymer - Polymer has no public cross-employer jobs API, and JobsPipe does not collect Polymer. This page explains what Polymer exposes and how to reach the same employers through the boards JobsPipe does collect.
- Comeet - Comeet has no public cross-employer jobs API, and JobsPipe does not collect Comeet. This page explains what Comeet exposes and how to reach the same employers through the boards JobsPipe does collect.
- Rippling - Rippling has no public cross-employer jobs API, and JobsPipe does not collect Rippling. This page explains what Rippling exposes and how to reach the same employers through the boards JobsPipe does collect.
- Dayforce - Dayforce has no public cross-employer jobs API, and JobsPipe does not collect Dayforce. This page explains what Dayforce exposes and how to reach the same employers through the boards JobsPipe does collect.
- Bullhorn - Bullhorn has no public cross-employer jobs API, and JobsPipe does not collect Bullhorn. This page explains what Bullhorn exposes and how to reach the same employers through the boards JobsPipe does collect.
- Oracle Recruiting Cloud - Oracle Recruiting Cloud has no public cross-employer jobs API, and JobsPipe does not collect Oracle Recruiting Cloud. This page explains what Oracle Recruiting Cloud exposes and how to reach the same employers through the boards JobsPipe does collect.
- Cornerstone - Cornerstone has no public cross-employer jobs API, and JobsPipe does not collect Cornerstone. This page explains what Cornerstone exposes and how to reach the same employers through the boards JobsPipe does collect.
- HiBob - HiBob has no public cross-employer jobs API, and JobsPipe does not collect HiBob. This page explains what HiBob exposes and how to reach the same employers through the boards JobsPipe does collect.
- TriNet - TriNet has no public cross-employer jobs API, and JobsPipe does not collect TriNet. This page explains what TriNet exposes and how to reach the same employers through the boards JobsPipe does collect.
- JobAdder - JobAdder has no public cross-employer jobs API, and JobsPipe does not collect JobAdder. This page explains what JobAdder exposes and how to reach the same employers through the boards JobsPipe does collect.
- Recruiterflow - Recruiterflow has no public cross-employer jobs API, and JobsPipe does not collect Recruiterflow. This page explains what Recruiterflow exposes and how to reach the same employers through the boards JobsPipe does collect.
- PCRecruiter - PCRecruiter has no public cross-employer jobs API, and JobsPipe does not collect PCRecruiter. This page explains what PCRecruiter exposes and how to reach the same employers through the boards JobsPipe does collect.
- Paycor - Paycor has no public cross-employer jobs API, and JobsPipe does not collect Paycor. This page explains what Paycor exposes and how to reach the same employers through the boards JobsPipe does collect.
- Gem - Gem has no public cross-employer jobs API, and JobsPipe does not collect Gem. This page explains what Gem exposes and how to reach the same employers through the boards JobsPipe does collect.
- UltiPro (UKG Pro) - UltiPro (UKG Pro) has no public cross-employer jobs API, and JobsPipe does not collect UltiPro (UKG Pro). This page explains what UltiPro (UKG Pro) exposes and how to reach the same employers through the boards JobsPipe does collect.
Glossary: jobs-data and hiring-intent terms
- Job ad
- A job ad (job advertisement) is the public announcement an employer publishes to attract applicants for an open role - the same object called a job posting or job listing in American usage. One vacancy typically produces several ads across careers sites, job boards, and aggregators.
- ATS API
- An ATS API is the programmatic interface an applicant tracking system exposes so software can read or write recruiting data - job requisitions, candidates, applications, and interview stages - without going through the ATS web interface.
- ATS integration
- ATS integration is the work of connecting an applicant tracking system to other software - a job board, a sourcing tool, an HRIS, an analytics product - so recruiting data moves between them automatically instead of by manual export.
- Job board API
- A job board API is a programmatic interface for reading job postings - title, company, location, salary, description, apply link - usually across many employers, so software can ingest listings without scraping web pages.
- Job aggregator
- A job aggregator is a system that collects job postings from many sources - company career pages, applicant tracking systems, and other boards - and combines them into a single searchable, deduplicated index.
- Job posting schema
- A job posting schema is the defined structure of a job record - the field names, types, and meanings - that lets job data from different sources be stored, searched, and exchanged consistently.
- Job posting deduplication
- Job posting deduplication is the process of detecting that several collected job records describe the same real-world opening and collapsing them into one, so an aggregated index does not count the same job many times.
- Unified API
- A unified API is a single API that abstracts many similar third-party services behind one schema and one authentication flow, so a developer integrates once instead of once per provider.
- Talent intelligence
- Talent intelligence is the practice of collecting and analyzing workforce data - job postings, skills, compensation, hiring activity, talent movement - to make better decisions about recruiting, workforce planning, and competitive strategy.
- Job scraping
- Job scraping is the automated extraction of job postings from websites - company career pages, job boards, and ATS-hosted listings - by programmatically fetching pages and parsing the posting data out of them.
- API rate limiting
- API rate limiting is the practice of capping how many requests a client can make to an API within a set time window, protecting the service from overload and enforcing fair use across all consumers.
- Intent data
- Intent data is any signal that suggests an account or buyer is moving toward a purchase decision - inferred from third-party content consumption, software-review activity, first-party website engagement, or capital-allocation moves like hiring.
- Hiring-signal intent
- Hiring-signal intent is a category of B2B intent data that uses a company's open job postings and headcount changes as a leading indicator of buying intent - typically 1-2 quarters before content or review intent fires.
- Technographics
- Technographics is data about the technology stack a company runs - its frameworks, analytics, hosting, CRM, payments, and other tools - used by B2B teams to target and qualify accounts by the software they already use.
- Technographic data
- Technographic data is structured data on the technologies a company uses, attached to its domain, exposed via API so sales, marketing, and competitive-intelligence teams can target and segment by tech stack.
- Firmographic vs technographic data
- Firmographic data describes a company's attributes (industry, size, revenue, location); technographic data describes the technologies it uses. B2B teams combine both to define and prioritize target accounts.
- B2B technographic data
- B2B technographic data is technology-usage data on companies, used by sales, marketing, and competitive-intelligence teams to build target lists, qualify accounts, and personalize outreach around the tools a prospect already runs.
- Technographic segmentation
- Technographic segmentation is the practice of grouping accounts by the technologies they use, so messaging, targeting, and prioritization can be tailored to each group's stack.
- Technographic data examples
- Technographic data examples are the concrete technology data points attached to a company, such as the analytics suite, hosting provider, ecommerce platform, CRM, or payment processor it uses.
- Employment Type
- Employment type is the field on a job posting that records the kind of working relationship an opening offers - full-time, part-time, contract, temporary, or internship - using a small, fixed set of values so jobs can be filtered and compared across sources.
Frequently asked questions
Is scraping ATS sites legal?
JobsPipe only ingests publicly listed postings, respects robots.txt, source-specific terms, and uses official APIs wherever they exist (Workday, Greenhouse, Lever, etc). We don't touch authenticated pages or candidate data.
How fresh is the data?
All sources are crawled within 24 hours on the Free tier, within 6 hours on Builder and Growth, and within 1 hour on Scale and Business. Diff webhooks fire within minutes of detection.
What is a credit?
One credit is one job returned, so a response carrying twenty-five postings costs twenty-five credits and a response carrying one costs one. A search that matches nothing costs nothing, and preview mode returns masked results at no charge. Free includes 1,000 credits per month; the packages include 25,000, 100,000, 300,000 or 500,000, from $1.96 per 1,000. Allowances reset at the start of each month; extra credits you bought carry over.
What does "normalized" actually mean?
Every record matches the same JSON shape regardless of source: stable ID, title, company, normalized location, parsed salary range with currency, remote flag, posted_at, apply_url and full description in Markdown.
Do you handle dedup across sources?
Yes. When the same role is posted to Greenhouse and Ashby, we collapse them into one record and surface every board under .sources[].
Can I filter by ATS source?
Pass {"source_or": ["greenhouse", "lever"]} to scope a query. You can also exclude with {"source_not": ["indeed"]} when you don't want aggregator listings.
How do I authenticate API requests?
Send your secret key as a Bearer token in the Authorization header. Keys start with jp_live_ and are issued from the dashboard about 30 seconds after signup. Agents can also discover OAuth 2.0 metadata with jobs:read and stack:read scopes at /.well-known/oauth-authorization-server. The full reference lives at docs.jobspipe.dev/authentication.
Do you support webhooks?
Yes. job.created and job.closed events are pushed to your endpoint as they happen, so you can react to a posting closing without polling. Every payload is signed with HMAC-SHA256 in the X-JobsPipe-Signature header; verify the signature, respond 200, and we retry with backoff on anything else. Webhooks are included on paid plans.
Can AI agents and MCP clients use JobsPipe?
Yes, JobsPipe ships as native agent tooling: a hosted MCP server at mcp.jobspipe.dev/mcp (streamable HTTP with your Bearer API key; a no-key demo lives at jobspipe.dev/mcp, listed on Smithery and the official MCP registry), agent skills you can install with npx skills add jobspipe/skills, a CLI, and llms.txt for context. Agents get the same job search and stack-scan capabilities as the REST API.
Can I try the API without signing up?
Yes. Every /v1/sandbox route answers without an API key and without a quota, returning sample data in the exact live schema. POST to api.jobspipe.dev/v1/sandbox/jobs/search to see the response shape before you create an account. The free tier then gives you 1,000 jobs per month against the live dataset.
Which SDKs and clients are official?
Python (pip install jobspipe), Go (github.com/jobspipe/jobspipe-go) and the jobspipe-cli Node package, plus the OpenAPI 3.1 spec at jobspipe.dev/openapi for generating clients in any other language. All of them wrap the same two calls: job search and stack scan.
Do you provide salary data and history?
Salary ranges are AI-parsed from posting text into typed min, max, currency and period fields, so you can filter and aggregate without writing regexes. Paid plans include 12 months of historical postings; query them with posted_at_gte and posted_at_lte to build a time series of any company's hiring.
How does JobsPipe compare to building scrapers in-house?
One maintained API replaces 30+ per-site crawlers that break on every markup change. You get cross-source dedup, AI-parsed salaries and webhook delivery out of the box, and you pay per request instead of paying an engineer to babysit XPath selectors.
What can I search and filter on?
Title and location accept arrays (job_title_or, job_location_or), plus description keywords, country, remote flag, posted_at date ranges and per-source include or exclude. The schema is strict: unknown parameters return a 400 instead of silently returning everything.
Do you cover LinkedIn and Y Combinator?
Yes. LinkedIn public postings and the Y Combinator jobs board are first-class sources alongside the ATS feeds, normalized into the same schema and deduplicated against every other source.
Where is the API documentation?
docs.jobspipe.dev covers quickstart, authentication, every endpoint and the job schema. jobspipe.dev/developers lists every developer resource on one page, and machine-readable copies live at /openapi.json and /llms.txt for agents and code generators.
What does the Stack Scan endpoint do?
POST /v1/stack/scan takes a company domain and returns the frameworks, languages, analytics and infrastructure it runs, with results cached for 7 days. Combine it with job-posting data to score accounts on both hiring signals and technology fit.
How is JobsPipe priced compared to bulk datasets?
Metered on the jobs you actually pull instead of sold as a dataset subscription: Free is 1,000 credits a month, then four packages at $1.96 per 1,000 on Builder (25,000 credits is $49), $1.49 on Growth (100,000), $1.16 on Scale (300,000) and $1.05 on Business (500,000), and extra credits at your package's rate whenever you need them. You query live data when you need it rather than buying periodic file dumps and storing them yourself.
Can I export large result sets?
Yes. Batch endpoints accept multiple searches in one call, and the async export pattern returns a 202 with a poll URL for big pulls. Cursor pagination keeps ordinary result sets stable while you page through them.
Do you publish rate limits and an SLA?
Rate limits scale from 2 to 50 requests per second by package and are advertised in IETF RateLimit response headers. Scale and Business carry a 99.95% uptime SLA. Back off and retry on HTTP 429 and documented transient 5xx; other 4xx errors are never retried.
How do I get started?
Grab a free key, paste the cURL from the docs, ship. Most teams have JobsPipe wired up in under 10 minutes.



