REST API · Updated daily
Job data that's
actually fresh.
Access thousands of active tech jobs via a clean REST API. Sourced daily from 1,100+ career pages. No scraping required.
2,000+
Active jobs
1,100+
Companies
Daily
Refresh rate
< 5min
Integration time
curl -X GET \
"https://jobscroller.net/api/v1/jobs?title=React&location=Remote&limit=20" \
-H "Authorization: Bearer YOUR_API_KEY"{
"total": 312,
"page": 1,
"jobs": [
{
"id": 4821,
"title": "Senior React Developer",
"company": "Acme Corp",
"has_remote": true,
"description": "<p>We're looking for a Senior React Developer...</p>",
"location": "Remote",
"salary_min": 120000,
"salary_max": 160000,
"salary_currency": "USD",
"tech_stack": ["React", "TypeScript", "Node.js"],
"url": "https://acme.com/careers/4821",
"posted_at": "2026-02-20T09:14:00Z",
"is_active": true
}
]
}Always fresh
Crawler runs daily across 1,100+ ATS platforms. Dead listings are auto-removed within 48 hours.
Direct sources only
Every job links straight to the company career page. No aggregators, no redirects, no ghost listings.
Structured & normalized
Every response is clean JSON: title, company, full description, salary range, detected tech stack, remote flag, and a verified direct URL.
Powerful filters
Filter by title, company, location, tech stack, and salary. Paginated, fast, and developer-friendly.
Up and running in minutes
Subscribe
Pick a plan below. You'll receive your API key by email instantly after checkout.
Make a request
Pass your key in the Authorization header. Every endpoint returns clean, paginated JSON.
Build
Filter by title, company, location, tech stack, and salary. No scraping, no maintenance.
Simple, transparent pricing
Start with a free 14-day trial. No credit card needed.
Starter
For side projects and small apps.
- 10,000 requests / month
- Full job data (title, company, location, salary, tech stack)
- Job descriptions
- Filters: title, company, location, tech, remote, salary
- Pagination
- JSON REST API
Pro
For growing products and recruitment platforms.
- 50,000 requests / month
- Full job data (title, company, location, salary, tech stack)
- Job descriptions
- Filters: title, company, location, tech, remote, salary
- Pagination
- JSON REST API
Enterprise
For large-scale platforms with high volume needs.
- Unlimited requests
- Full job data (title, company, location, salary, tech stack)
- Job descriptions
- Filters: title, company, location, tech, remote, salary
- Pagination
- JSON REST API
Need a custom volume deal? Contact us
How we compare
| Feature | JobScroller | Typical API |
|---|---|---|
| Job freshness | Daily updates | Weekly / monthly |
| Stale jobs | Auto-removed (48h) | Dead links persist |
| Data source | Direct career pages | Aggregators / scrapers |
| Job descriptions | Full raw content | Partial snippets |
| Setup time | < 5 minutes | Complex scraping logic |
| Salary data | Included | Rarely available |
Response schema
| Field | Type | Description |
|---|---|---|
| id | bigint | Unique job identifier |
| title | text | Job title |
| company | text | Company name |
| company_url | text | Company website URL (nullable) |
| location | text | City, Remote, or hybrid |
| url | text | Direct link to company career page |
| description | text | Full job description (HTML) |
| has_remote | boolean | True if the role is remote-eligible |
| tech_stack | array | Detected technologies (e.g. React, Python, AWS) |
| salary_min | integer | Annual salary floor (nullable) |
| salary_max | integer | Annual salary ceiling (nullable) |
| salary_currency | text | ISO currency code (USD, EUR…) |
| posted_at | timestamp | ISO 8601 date posted |
| is_active | boolean | Whether listing is still live |
Query parameters
titleFilter by job title
e.g. React
companyFilter by company
e.g. Stripe
locationFilter by location
e.g. Remote
techFilter by tech stack
e.g. Python
limitResults per page (max 100)
e.g. 20
pagePage number
e.g. 1
Base URL
https://jobscroller.net/api/v1/jobsAll requests require an Authorization: Bearer header.