# ATS Jobs API – Hiring Summary

> ATS Jobs API – Hiring Summary is a paid API for AI agents from companyfacts.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-31).

Returns a structured hiring snapshot for a company: open role count, recent openings/closings, salary distributions, and breakdowns by department and location, sourced directly from Greenhouse, Ashby, Lever, or Workable ATS.

## Facts

- Endpoint: GET https://companyfacts.dev/x402/v1/hiring-summary?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ats-jobs-api-hiring-summary-d91a20c6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_fU2cZlB2ORWPbAXyjmz23

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ats-jobs-api-hiring-summary-d91a20c6
```

Example prompt: Pull the hiring summary for Stripe from the ATS Jobs API — I want to see how many open roles they have, the salary ranges, and a department breakdown, looking at changes over the last 30 days.

## When to prefer this

Use this endpoint when you need structured, ATS-sourced hiring data for a specific company — not scraped job boards or aggregators. It is the best choice when you need accurate open role counts, parsed salary numbers, department/location breakdowns, or recent hiring velocity. Prefer it over LinkedIn or Indeed scrapers when freshness and fidelity to the employer's own ATS matter, or when you need the verify URL to cross-check data.

## Known failure modes

- Company not found in the 8532-company directory — returns an error or empty result
- Ambiguous company name resolves to wrong entity — verify using the returned verify_url
- Salary data absent when employer does not publish compensation — salary fields will be empty or omitted
- ATS board temporarily unreachable — may return stale or partial data
- Invalid 'days' parameter format causes query rejection

## How this service works

Open job postings read first-hand from the applicant-tracking system behind a company's careers page: Greenhouse, Ashby, Lever or Workable. Includes a directory of 8532 company job boards, because none of the vendors publishes one. Salaries are parsed into numbers where the employer publishes them and refused where ambiguous. No personal data.

## Output

Returns a JSON object with: the detected ATS platform, the company's board slug, total open roles, count of remote roles, recent hiring activity (roles opened, closed, changed, net change over the specified window), salary statistics (median midpoint, lowest, highest, share of roles with salary) segmented by currency, open roles grouped by department and by location, and a verification URL linking to the live ATS board.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "company"
     ],
     "properties": {
      "days": {
       "type": "string"
      },
      "company": {
       "type": "string"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ats": "greenhouse",
  "board": "stripe",
  "recent": {
   "since": "2026-10-31",
   "until": "2026-11-29",
   "closed": 22,
   "opened": 37,
   "changed": 9,
   "reopened": 1,
   "available": true,
   "net_change": 16,
   "window_days": 30
  },
  "salary": {
   "by_currency": [
    {
     "roles": 221,
     "lowest": 98000,
     "highest": 420000,
     "currency": "USD",
     "median_midpoint": 214000
    }
   ],
   "roles_with_salary": 230,
   "share_with_salary": 0.558
  },
  "company": "Stripe",
  "open_roles": 412,
  "verify_url": "https://job-boards.greenhouse.io/stripe",
  "by_location": [
   {
    "open": 96,
    "location": "San Francisco"
   },
   {
    "open": 41,
    "location": "Dublin"
   }
  ],
  "remote_roles": 38,
  "by_department": [
   {
    "open": 141,
    "department": "Engineering"
   },
   {
    "open": 88,
    "department": "Sales"
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ats-jobs-api-hiring-summary-d91a20c6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from companyfacts.dev](https://www.zero.xyz/host/companyfacts.dev/llms.txt)
