What Active Jobs DB does and who it is for
Active Jobs DB sits in a specific niche within the job data market: it only indexes jobs sourced directly from employer career pages and ATS platforms, not from aggregator job boards. That distinction matters. When your users click through to apply, they land on the employer's own site rather than a third-party listing, which improves application completion rates and removes an intermediary. The API is a fit for job boards that want to position themselves as a clean feed of verified employer listings, for HR analytics platforms tracking labor market demand, and for recruiting tools that need a broad, frequently refreshed dataset.
With an estimated 1.5–1.7 million active US jobs and substantial coverage in the UK (90k–110k), Canada (70k–90k), India (60k–80k), and Germany/France (50k–70k each), the scope is genuinely broad. Coverage extends to 35+ countries in total.
Endpoint walkthrough
The API exposes several time-windowed endpoints and a search/backfill layer, each tuned for a different ingestion strategy.
Time-windowed ingestion endpoints
Get Jobs Hourly (GET /active-ats-1h) is the firehose — jobs discovered in the last hour, with a 2-hour publication delay. Because it is designed for continuous polling, the limit is fixed at 100 jobs per request and cannot be reduced. Call it every hour at a consistent time to avoid duplicates.
Get Jobs 24h (GET /active-ats-24h) surfaces jobs indexed in the last 24 hours. Calling this at the same time daily is the recommended deduplication strategy.
Get Jobs 7 days (GET /active-ats-7d) covers a rolling 7-day index window. This is the right endpoint if weekly batch processing fits your pipeline better than daily or hourly polling.
Get Jobs Backfill – 6M (GET /active-ats-6m) is the starting-point endpoint. It returns up to 500 jobs per request (vs. 100 for the others) so you can quickly populate your database before switching to the incremental endpoints. It covers all active jobs from the last six months.
Lifecycle management endpoints (Ultra & Mega plans only)
Get Expired Jobs (GET /active-ats-expired) returns an array of job IDs flagged as expired the previous day. The array contains 25,000+ IDs per request, updates once daily, and critically does not count against your Jobs credit quota. This lets you keep your local database clean without burning your monthly allocation.
Get Modified Jobs 24h (GET /modified-ats-24h) delivers all jobs whose details changed in the last 24 hours. Like the expired endpoint, it returns up to 500 jobs per request and does not count against Jobs credits.
Description format variants
Several endpoints are available in both text and HTML description flavors, so you can choose the format that matches your rendering layer without post-processing.
Filters worth understanding
The title_filter and location_filter share a Google-like query syntax supporting AND, OR, exact phrases ("Software Engineer"), and negation (-"Software Engineer"). The advanced_title_filter adds operator-based syntax (&, |, !, prefix wildcards :*) for complex role targeting, but cannot be combined with the basic title_filter in the same request.
The location_filter requires full location names — abbreviations are not supported. For US states, use the full name ("New York, United States"); for UK cities, include the constituent country ("Birmingham, England, United Kingdom").
The organization_filter is exact-match and case-sensitive, which is a meaningful constraint if you're trying to monitor a list of target companies — you need to know the exact string used in the database.
Combining multiple keywords within a single filter call is explicitly recommended by the provider as a way to reduce API calls and stay within credit limits.
Credit model and pricing
Active Jobs DB uses a dual-credit system: each request deducts 1 Request credit and also deducts credits equal to the number of jobs returned from your Jobs credit pool. The provider notes that Jobs credits are designed to run out before Request credits, so sizing your plan should start with how many job records you need per month.
| Plan | Price | Jobs / month | Requests / month | Rate limit |
|---|---|---|---|---|
| Basic | $0 | 250 | 25 | — |
| Pro | $45 | 5,000 | 2,500 | 2 req/s |
| Ultra (recommended) | $95 | 20,000 | 10,000 | 5 req/s |
| Mega | $175 | 50,000 | 25,000 | 10 req/s |
The Basic plan's 250-job and 25-request ceiling is effectively a trial tier — useful for validating the data shape and integration before committing. At 100 jobs per request, 25 requests yields at most 2,500 job records theoretically, but you're capped at 250 jobs total, so you'll exhaust Jobs credits after roughly 3 requests.
Pro at $45/month gives 5,000 jobs across 2,500 requests. That supports a modest job board with daily or weekly refresh cycles on a focused niche or geography. Ultra at $95/month is the provider's recommended tier: 20,000 jobs and access to the Expired Jobs and Modified Jobs endpoints, which are absent from Basic and Pro. If you are building a production job board that needs to keep listings current, those lifecycle endpoints have real operational value. Mega doubles the quota again for $175/month.
For requirements exceeding 50,000 jobs per month, the provider offers custom arrangements via direct contact.
Credit consumption is tracked in real time via response headers: x-ratelimit-jobs-remaining, x-ratelimit-requests-remaining, and a reset countdown in seconds (x-ratelimit-jobs-reset). This makes it straightforward to build adaptive request pacing into your pipeline.
Practical use cases
Niche job boards: Filter by title_filter and location_filter to pull only the roles and geographies relevant to your audience, then refresh daily. The direct-to-employer application flow is a genuine product differentiator versus aggregators.
Labor market analytics: The combination of country-level depth, AI-extracted job fields (a beta feature), and LinkedIn company mapping (also beta) gives analysts structured signal without heavy NLP preprocessing.
ATS monitoring: The organization_filter and source filter let you track hiring activity at specific companies or across specific ATS platforms — useful for sales intelligence or competitive research products.
Cold-start population: The 6-month backfill endpoint is specifically engineered for the cold-start problem. New deployments can ingest historical active listings at 500 per request before switching to the incremental hourly or daily feeds.
Limitations and considerations before integrating
Duplicate handling is your responsibility. The API guarantees uniqueness by URL, but employers frequently post the same role across multiple cities. Deduplication on title + organization or title + organization + location is recommended for a clean dataset.
Hourly freshness has a lag. Jobs appear in the API 1–2 hours after being posted on the employer's site. If near-real-time discovery is a hard requirement, factor that window into your SLA.
AI fields are beta. The LLM-extracted fields and LinkedIn company mapping are explicitly flagged as beta, so treat them as supplemental signals rather than authoritative data in production.
Description search on the 6M endpoint can time out. The provider explicitly warns against complex description_filter queries on the backfill endpoint. Keep description-level searches focused when querying large time windows.
Expired/Modified endpoints require Ultra or Mega. If you need to keep your job database synchronized — removing expired listings and updating changed ones — you must be on at least the $95/month Ultra plan. This is not available on Basic or Pro.
Getting started
The free Basic plan is the obvious starting point for evaluation. With 25 requests available, you can test all the filter combinations relevant to your use case and inspect the response structure for both text and HTML description variants. Once you've confirmed the data fits your model, the jump to Pro or Ultra depends on your monthly job volume target. For any production deployment that needs lifecycle synchronization, Ultra is effectively the minimum viable plan given the Expired and Modified endpoints it unlocks. Developers needing volumes above 50,000 jobs per month should contact the provider directly at [email protected].