Discover/ReqHunt API
live

ReqHunt APIreqhunt.com

Access ReqHunt's tracked company directory and live job postings via two endpoints. Filter jobs by title and location across companies with active careers pages.

Endpoint health
verified 3h ago
list_companies
search_company_jobs
2/2 passing latest checkself-healing
Endpoints
2
Updated
3h ago

What is the ReqHunt API?

The ReqHunt API exposes two endpoints covering a directory of tracked companies and their live job postings. Call list_companies to page through companies ordered by open role count, then call search_company_jobs with a company slug to retrieve postings filtered by job title and location — each posting returning fields like job_url, department, location, and posted_at timestamp.

This call costs1 credit / call— charged only on success
Try it
1-based directory page number (100 companies per page).
api.parse.bot/scraper/49f2e024-0e95-48cd-a97d-5d81fd85de98/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/49f2e024-0e95-48cd-a97d-5d81fd85de98/list_companies' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace reqhunt-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: ReqHunt Jobs API — browse top companies, then search one's postings."""
from parse_apis.reqhunt_com_api import ReqHunt, CompanyNotFound

client = ReqHunt()

# Browse the top companies by open roles.
for company in client.companies.list(limit=5):
    print(company.rank, company.name, company.open_roles, company.work_mode)

# Pick the first company and search its engineering jobs.
top = client.companies.list(limit=1).first()
if top is not None:
    try:
        result = top.search_jobs(title="engineer")
    except CompanyNotFound:
        print("company no longer tracked")
    else:
        print(f"Searching {result.company.name} — {result.company.total_roles} total roles")
        for job in result.jobs:
            print(job.title, job.location, job.posted_at)

        # Continue scanning from the next offset if more results exist.
        if result.next_start is not None:
            more = top.search_jobs(title="engineer", start=result.next_start)
            for job in more.jobs:
                print(job.title, job.location)

print("exercised: companies.list / search_jobs")
All endpoints · 2 totalmissing one? ·

Returns one page (100 rows) of the public company directory, ordered by number of live open roles (descending). Each row carries the company's display name and its slug, which is the identifier search_company_jobs accepts as company. remote_index_tier and work_mode are null for companies the site has not scored. One request per call; page beyond total_pages returns an empty companies array with has_more=false. Omitting page returns the first page.

Input
ParamTypeDescription
pageinteger1-based directory page number (100 companies per page).
Response
{
  "type": "object",
  "fields": {
    "page": "integer page returned",
    "has_more": "boolean, true when a later page exists",
    "companies": "array of company rows: rank (integer position in the directory), name, slug (pass as company to search_company_jobs), open_roles (integer live roles), remote_index_tier (e.g. R0, or null when unscored), work_mode (e.g. On-Site, or null when unscored)",
    "total_pages": "integer number of directory pages",
    "total_companies": "integer number of companies tracked"
  },
  "sample": {
    "data": {
      "page": 1,
      "has_more": true,
      "companies": [
        {
          "name": "SpaceX",
          "rank": 1,
          "slug": "spacex",
          "work_mode": "On-Site",
          "open_roles": 2426,
          "remote_index_tier": "R0"
        },
        {
          "name": "Anduril Industries",
          "rank": 2,
          "slug": "anduril-industries",
          "work_mode": null,
          "open_roles": 2276,
          "remote_index_tier": null
        }
      ],
      "total_pages": 76,
      "total_companies": 7594
    },
    "status": "success"
  }
}

About the ReqHunt API

Company Directory

list_companies returns one page of 100 companies at a time, ordered by number of live open roles descending. Each row includes the company name, its slug (the identifier used in search_company_jobs), and open_roles count. The response also carries total_companies, total_pages, and a has_more boolean so you can walk the full directory programmatically using the page parameter.

Job Postings Search

search_company_jobs scans a single company's live postings and returns matches against optional title and location substring filters (both case-insensitive). Each matching posting in the jobs array includes title, job_url, location, department, company, posted_at (ISO 8601 UTC), and posted_text. The company object in the response surfaces the careers page URL (careers_page_url), total_roles, and pagination metadata for the source listing.

Pagination and Scanning

The endpoint uses offset-based pagination via start (0-based) and limit (capped at 50). A next_start field in the response gives you the offset to pass in the next call; it returns null when the list is exhausted. Each call reports scanned (postings examined) and pages_scanned (capped at 5 per call), which helps you understand how much of the company's listing was covered in a single request.

Reliability & maintenanceVerified

The ReqHunt API is a managed, monitored endpoint for reqhunt.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when reqhunt.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official reqhunt.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3h ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a job alert tool that watches a specific company's postings for new titles matching a keyword.
  • Rank companies by hiring velocity using the open_roles field from list_companies.
  • Filter postings by location substring (e.g. 'remote' or 'new york') to surface roles in a target geography.
  • Aggregate department-level hiring data across companies by collecting the department field from job results.
  • Identify which companies have active careers pages by checking careers_page_url in search_company_jobs responses.
  • Track changes in a company's total_roles count over time to monitor hiring trends.
  • Cross-reference posted_at timestamps across companies to find the most recently listed roles in a given field.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does ReqHunt have an official developer API?+
ReqHunt does not publish an official public developer API. This Parse API provides structured access to the company directory and job listing data that ReqHunt surfaces on its site.
What does `search_company_jobs` return for each posting?+
Each posting in the jobs array includes title, job_url, location, department, posted_at (ISO 8601 UTC timestamp), posted_text, and the company name and slug. The enclosing company object adds careers_page_url, total_roles, and paginator metadata for that company's listing.
Can I search jobs across all companies at once rather than one company at a time?+
Not currently. search_company_jobs targets one company per call, identified by the company slug parameter. Cross-company search would require iterating the directory via list_companies and querying each slug. You can fork this API on Parse and revise it to add a multi-company search endpoint.
Does the API expose salary or compensation data for job postings?+
Not currently. The postings return title, location, department, job_url, and timestamps, but no salary or compensation fields. You can fork this API on Parse and revise it to add compensation data if the source careers pages expose it.
How fresh are the job postings returned by the API?+
The postings reflect live listings as tracked by ReqHunt from each company's careers page. The posted_at field gives the ISO 8601 UTC timestamp of when each role was posted, which helps you assess recency. Listings that have been taken down will not appear in results.
Page content last updated . Spec covers 2 endpoints from reqhunt.com.
Related APIs in JobsSee all →
jobs.lever.co API
Access job postings on any Lever-hosted company job board. List, filter, search, and group open roles, retrieve full posting details, and extract application form questions via Lever's public API.
jobs.ashbyhq.com API
Access company information, job listings, and detailed job postings from Ashby-hosted job boards, with the ability to search opportunities by keyword or department. Retrieve application forms and all relevant hiring details to streamline your job search process.
welcometothejungle.com API
Search and discover job postings and company information from Welcome to the Jungle, including detailed job listings, company profiles with employee statistics and social links, and the ability to browse all available positions. Find the perfect role by searching jobs and companies, then access comprehensive details about positions and organizations in one place.
naukri.com API
Access data from naukri.com.
remoteok.com API
Access data from remoteok.com.
hubmub.com API
Search and discover job opportunities on HubMub by filtering results based on your preferred search terms, job type, category, industry, and location. Retrieve detailed information about specific job listings to help you find the right position that matches your career goals.
dailyremote.com API
Search and browse remote job listings from DailyRemote.com with complete job details including descriptions, salary ranges, company information, and hiring process steps. Access structured job data and company contact details to find and evaluate remote opportunities all in one place.
peopleperhour.com API
Browse thousands of freelance job postings on PeoplePerHour by category and keyword, then dive into detailed information about specific opportunities that match your skills. Search and sort through listings to quickly find your next project without leaving one platform.