# Hirescrape Jobs Search API

> Hirescrape Jobs Search API is a paid API for AI agents from www.hirescrape.com, paid per call via x402, $0.21/call, status unknown (last checked 2026-09-15, last successful call 2026-07-21).

Scrapes job listings across 8 major job boards (LinkedIn, Indeed, Glassdoor, Google Jobs, ZipRecruiter, Bayt, BDJobs, Naukri) with flexible filters for role, location, type, and recency

## Facts

- Endpoint: POST https://www.hirescrape.com/api/tools/jobs
- Price: $0.21/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Last successful call: 2026-07-21
- Success rate: 100% of calls made through Zero
- Activations on Zero: 1
- Tags: x402
- Canonical page: https://www.zero.xyz/c/hirescrape-jobs-search-api-b13d799a
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_fyt18N3esfK2BmTIWofAd

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 hirescrape-jobs-search-api-b13d799a -d '<json body>'
```

Example prompt: Search for full-time senior backend engineer jobs posted in the last 48 hours on LinkedIn, Indeed, and Glassdoor in San Francisco — remote-friendly, up to 30 results per board, with full descriptions in markdown.

## When to prefer this

Use this endpoint when you need to aggregate job listings across multiple major job boards in a single call without managing individual API keys or subscriptions. It is ideal for AI agents performing job market research, candidate sourcing, or automated job alert workflows. Prefer this over individual platform APIs when breadth across 8 boards simultaneously, flexible filtering, and pay-per-call USDC settlement via x402 are priorities.

## Known failure modes

- Invalid site name in 'sites' array returns an error or empty results for that board
- Empty searchTerm with no location may return broad or irrelevant results
- hoursOld set too narrowly (e.g. 1 hour) may return zero results
- LinkedIn company IDs that are invalid or private return empty LinkedIn results
- maxResults above 100 is clamped or rejected
- Network timeout or scraping block by target site returns partial results or error
- Unsupported countryIndeed value may default to USA or fail quietly

## How this service works

Pay-per-call web scrapers for AI agents. 28 tools across Reddit, 8-board job search (LinkedIn · Indeed · Glassdoor · Google Jobs · +5), TikTok · Douyin · Bilibili, cross-platform trend research, social media, and ad libraries. No API keys. Agent wallets settle USDC on Tempo or Base via x402 + MPP.

## Output

Returns an array of job listing objects each containing site, job title, company, job URL, salary, location, date posted, job type, and description; plus a runId for auditing, payment settlement summary, and total run duration in seconds.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "sites": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "default": [
    "linkedin",
    "indeed",
    "glassdoor",
    "google",
    "zip_recruiter",
    "bayt",
    "bdjobs",
    "naukri"
   ],
   "description": "Boards: linkedin, indeed, glassdoor, google, zip_recruiter, bayt, bdjobs, naukri."
  },
  "offset": {
   "type": "integer",
   "minimum": 0,
   "description": "Skip first N results (pagination)."
  },
  "jobType": {
   "enum": [
    "",
    "fulltime",
    "parttime",
    "contract",
    "internship",
    "temporary"
   ],
   "type": "string",
   "default": "",
   "description": "Filter by employment type."
  },
  "distance": {
   "type": "integer",
   "default": 50,
   "maximum": 200,
   "minimum": 0,
   "description": "Radius in miles from location."
  },
  "hoursOld": {
   "type": "integer",
   "maximum": 8760,
   "minimum": 1,
   "description": "Only jobs posted in last N hours."
  },
  "isRemote": {
   "type": "boolean",
   "default": false,
   "description": "Remote-only."
  },
  "location": {
   "type": "string",
   "description": "City, state, country, or 'Remote'. Empty = global."
  },
  "easyApply": {
   "type": "boolean",
   "default": false,
   "description": "Only easy-apply jobs."
  },
  "maxResults": {
   "type": "integer",
   "default": 20,
   "maximum": 100,
   "minimum": 1,
   "description": "Max jobs per board (1-100)."
  },
  "searchTerm": {
   "type": "string",
   "description": "Job title, keyword, or skill."
  },
  "countryIndeed": {
   "type": "string",
   "default": "usa",
   "description": "Country code for Indeed/Glassdoor (usa, uk, canada, etc)."
  },
  "googleSearchTerm": {
   "type": "string",
   "description": "Custom query for Google Jobs only."
  },
  "descriptionFormat": {
   "enum": [
    "markdown",
    "html"
   ],
   "type": "string",
   "default": "markdown",
   "description": "Output format for job descriptions."
  },
  "linkedinCompanyIds": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Restrict LinkedIn to specific company IDs."
  },
  "enforceAnnualSalary": {
   "type": "boolean",
   "default": false,
   "description": "Normalize salary to annual."
  },
  "linkedinFetchDescription": {
   "type": "boolean",
   "default": false,
   "description": "Fetch full LinkedIn job descriptions."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "required": [
   "items"
  ],
  "properties": {
   "items": {
    "type": "array",
    "items": {
     "type": "object"
    },
    "description": "Scraped items. Shape varies per tool â see each tool's outputSample for a concrete example."
   },
   "runId": {
    "type": "string",
    "description": "Run ID for debugging/audit."
   },
   "payment": {
    "type": "object",
    "description": "Settlement summary (protocol, amount, currency)."
   },
   "duration": {
    "type": "integer",
    "description": "Run duration in seconds."
   }
  }
 },
 "example": {
  "items": [
   {
    "site": "linkedin",
    "title": "Senior Backend Engineer",
    "jobUrl": "https://www.linkedin.com/jobs/view/4100000",
    "salary": "$180Kâ$240K",
    "company": "Acme AI",
    "jobType": "Full-time",
    "location": "San Francisco, CA (Remote)",
    "datePosted": "2026-04-17",
    "description": "Design and build pay-per-call APIsâ¦"
   }
  ],
  "runId": "sc_mo4jobsexample",
  "payment": {
   "amount": "0.210000",
   "currency": "USD",
   "protocol": "x402"
  },
  "duration": 12
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/hirescrape-jobs-search-api-b13d799a/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from www.hirescrape.com](https://www.zero.xyz/host/www.hirescrape.com/llms.txt)
