Skip to content

REST + MCP Jobs API · 434 ATS & Employer Career Sources · Sub-50ms P50 Latency

The Pay-As-You-Go Jobs API for Engineers & AI Agents.

Stop maintaining brittle Workday/Greenhouse headless browsers or signing $9,600/yr enterprise data contracts. Query 9.9M+ redistributable ATS job postings (19.8M total active roles) with full descriptions, normalized USD salaries, and verified employer domains via one clean JSON endpoint.

01 · True Pay-As-You-Go

Top up from $10 one-time (never expires) or $19/mo with 100% Credit rollover. 0 Credits charged on empty queries.

02 · Zero Accounts or Cookies

No LinkedIn/Indeed session cookies, no residential proxy pools, no CAPTCHA solvers. Just one x-api-key header.

03 · 10x Cheaper Unit Cost

$0.199–$0.83 per 1,000 jobs (full description included) vs $5.00–$8.00/1K on TheirStack & Coresignal.

04 · 500 Free Credits Instant

Every verified developer gets 500 free Credits immediately on signup (one-time per verified user, zero card required).

Copy-Paste Integration · Python / cURL / Node

Fetch structured ATS jobs in 8 lines of code

Filter across 434 ATS connectors by keyword, Boolean title, employer domain, work_arrangement=remote, minimum annual USD compensation, or specific ATS source (greenhouse, ashby, lever, workday).

curl -s "https://api.jobpostingsapi.com/v1/jobs/search?company=anthropic&limit=1" \
  -H "x-api-key: jp_live_YOUR_KEY" | jq .

# Python SDK-free example:
import os, requests

res = requests.get(
    "https://api.jobpostingsapi.com/v1/jobs/search",
    headers={"x-api-key": os.environ["JOBPOSTINGS_API_KEY"]},
    params={
        "company": "anthropic",
        "country": "US",
        "limit": 10,
    },
    timeout=15,
)
res.raise_for_status()
for job in res.json()["data"]:
    print(job["title"], "->", job["salary"], job["apply_url"])

Authentic Captured Response · GET /v1/jobs/search?company=anthropic&limit=1

{
  "code": 0,
  "provider": "https://jobpostingsapi.com",
  "status": "ok",
  "msg": "success",
  "data": [
    {
      "id": "j_repkbiloftjoar3g",
      "data_tier": "premium",
      "status": "active",
      "title": "Product Counsel",
      "company": {
        "name": "Anthropic",
        "slug": "anthropic",
        "domain": "anthropic.com"
      },
      "location": {
        "raw": "San Francisco, CA | New York, NY",
        "country": "US",
        "state": "CA",
        "city": "San Francisco",
        "remote_type": "hybrid"
      },
      "employment_type": "full_time",
      "seniority": "senior",
      "salary": {
        "min": 265000,
        "max": 335000,
        "currency": "USD",
        "period": "year",
        "annual_usd_min": 265000,
        "annual_usd_max": 335000
      },
      "source": {
        "name": "greenhouse",
        "board": "anthropic",
        "job_id": "4982104008"
      },
      "redistribution_allowed": true,
      "apply_url": "https://job-boards.greenhouse.io/anthropic/jobs/4982104008"
    }
  ],
  "meta": {
    "request_id": "4e18a9c0-73b2-44d1-a884-210f6e33c91a",
    "count": 1,
    "total": 248,
    "has_more": true,
    "took_ms": 22,
    "redistribution_filter": "redistributable_only"
  }
}

Every endpoint your job board, GTM pipeline, or AI agent needs

GET /v1/jobs/search

1 Credit / job (0 if empty)

Full-text & structured search across 9.9M+ redistributable postings with salary, remote model, skills, and cursor pagination.

GET /v1/feeds/new · /closed

1 Credit / event

Real-time delta streams of newly opened, updated, and closed ATS roles so your job board never displays dead links.

GET /v1/companies/{slug}/jobs

1 Credit / job (?refresh=true: 2)

All active postings for a company slug/domain, with optional live ETag pass-through straight to Greenhouse, Lever, or Ashby.