← Plugin catalog
Productivity
JobsPipe
JobsPipe v0.1.0
Publisher description
From the marketplace listing
Search live job postings from 30+ ATS feeds and job boards, and detect the technology stack a company runs.
Language: English · Automatically detected from descriptions.
Files & skills
File archives
Plugin package6 files · 60.5 KBBrowse files →
Skill instructions
jobspipe5.7 KB
---
name: jobspipe
description: Search live job postings and detect a company's tech stack with the JobsPipe API. Use when an agent needs real hiring data (open roles, hiring signals, sourcing, salary and location) or to identify which technologies a domain runs.
---
# JobsPipe
JobsPipe is a developer API with two functions over one host and one key:
1. **Job search** — live, normalized job postings from 30+ ATS and job-board
sources (Workday, Greenhouse, Lever, Ashby, LinkedIn, and more), deduplicated
into one JSON schema.
2. **Tech search (stack scan)** — detect the technologies a given domain runs
(frameworks, CDNs, analytics, payments, and more), with confidence scores.
Base URL: `https://api.jobspipe.dev`
## When to use
- Find, list, or analyze open job postings (by title, skill/tech, location,
remote, seniority, company, recency).
- Use open roles as a hiring/buying signal for a company.
- Identify which technologies a company or domain uses.
## Authentication
Every request needs an API key sent as a Bearer token. Keys start with
`jp_live_`. Get one free at https://jobspipe.dev/signup (free tier: 1,000
jobs/month, 1 credit = 1 job returned).
```
Authorization: Bearer jp_live_YOUR_KEY
```
Set it once:
```bash
export JOBSPIPE_API_KEY=jp_live_YOUR_KEY
```
## Install the CLI
Installing this skill does **not** install the CLI — `npx skills add` only
copies this file. Install the CLI once (global), so the `jobspipe` command is
on PATH, then set your key:
```bash
npm i -g jobspipe-cli
export JOBSPIPE_API_KEY=jp_live_YOUR_KEY
```
Then `jobspipe jobs ...` and `jobspipe stack ...` work directly. Run
`jobspipe --help` for every flag; verify your key with `jobspipe jobs --limit 1`.
Can't install globally? Prefix any command with `npx -y`, e.g.
`npx -y jobspipe-cli jobs --limit 1`. No Node at all? Use the `curl` examples below.
## Function 1 — Job search
`POST /v1/jobs/search`. The body is a JSON object of filters; all fields are
optional and combine with AND. Array filters ending in `_or` match any value.
An empty body returns the most recent postings.
```bash
curl -s https://api.jobspipe.dev/v1/jobs/search \
-H "Authorization: Bearer $JOBSPIPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"job_title_or": ["software engineer", "backend engineer"],
"job_country_code_or": ["US"],
"remote": true,
"posted_at_max_age_days": 7,
"limit": 25,
"include_total_results": true
}'
```
CLI equivalent:
```bash
jobspipe jobs --title "software engineer" --title "backend engineer" \
--country US --remote --max-age-days 7 --limit 25 --total
```
Pass a raw filter object for the full surface (overrides any flags, also read
from stdin):
```bash
jobspipe jobs '{"description_or":["rust"],"posted_at_max_age_days":7,"limit":10}'
```
Common filters: `job_title_or`, `job_title_not`, `description_or`
(match a skill or tech in the description), `description_not`,
`job_country_code_or`, `remote`, `posted_at_max_age_days`, `posted_at_gte` and
`posted_at_lte` (`YYYY-MM-DD`), `company_name_or`,
`company_name_partial_match_or`, `job_seniority_or`, `employment_type_or`
(full-time, part-time, contract, temporary, internship), `source_or`,
`limit`, `offset`, `include_total_results`.
Response:
```json
{
"metadata": {
"total_results": 412,
"truncated_results": 25,
"next_cursor": "eyJvZmZzZXQiOjI1fQ"
},
"data": [
{
"id": "jp_3958211043",
"job_title": "Backend Engineer",
"company": "Acme Inc",
"company_domain": "acme.com",
"location": "Remote · United States",
"country_code": "US",
"remote": true,
"seniority": "Mid-Senior",
"min_annual_salary_usd": 150000,
"max_annual_salary_usd": 190000,
"date_posted": "2026-06-18",
"technology_slugs": ["go", "postgres"],
"final_url": "https://example.com/careers/3958211043"
}
]
}
```
`limit` is capped by your plan (free 25, builder 100, scale and volume 500). Paginate with
`offset` (or follow `metadata.next_cursor`) until fewer than `limit` rows return.
## Function 2 — Tech search (stack scan)
`POST /v1/stack/scan`. Give a domain; get the technologies detected on it.
`mode` is optional: `auto` (default, fast HTTP then headless render if thin),
`html`, or `render`.
```bash
curl -s https://api.jobspipe.dev/v1/stack/scan \
-H "Authorization: Bearer $JOBSPIPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "domain": "stripe.com" }'
```
CLI equivalent:
```bash
jobspipe stack stripe.com
jobspipe stack vercel.com --mode render
```
Response:
```json
{
"domain": "stripe.com",
"scanned_at": "2026-06-25T12:00:00.000Z",
"http_status": 200,
"render_path": "curl_cffi",
"detected": [
{
"slug": "react",
"name": "React",
"categories": ["JavaScript frameworks"],
"confidence": 95,
"version": null,
"signals": [{ "kind": "script", "match": "react.production.min.js" }],
"website": "https://react.dev",
"pricing": ["open source"],
"saas": false,
"oss": true
}
]
}
```
Scans are cached for about 14 days; a repeat within that window is served from
cache and still counts as one request.
## Errors
Both functions return `{ "error": "..." }` with these statuses:
- `400` — invalid domain (stack scan only).
- `401` — missing or invalid API key.
- `402` — monthly request quota exceeded.
- `429` — per-second rate limit exceeded; slow down and retry.
- `502` — scanner failed (stack scan); retry or try `--mode render`.
- `504` — upstream timed out; retry.
## Notes
- Job records are deduplicated across sources; the same role appears once.
- Salary is parsed into structured ranges (`*_annual_salary*`) when present.
- Full schema and guides: https://jobspipe.dev/docs
Package details
Publisher declarations from the archived package. These are separate from our research and the live service's terms.
- Package author
- JobsPipe
Package observed Oct 2, 2026.
Technical details
- First seen
- Sep 30, 2026 · 22:02 UTC
- Last seen
- Oct 2, 2026 · 18:00 UTC
- Collection status
- Collected
plugins_6a71ba177f448191b11fc1352bc2ed9e
Download plugin data (JSON)