← All twelve ATS APIs compared
Broad mid-market coverage with clean dates, and a pagination rule that will silently truncate your results if you trust the parameter you passed.
GET https://api.smartrecruiters.com/v1/companies/{company}/postings?limit=100&offset=0
No key, no login. The slug is the path segment in jobs.smartrecruiters.com/{company}.
curl -s 'https://api.smartrecruiters.com/v1/companies/acme/postings?limit=100&offset=0'
Measured across every live SmartRecruiters board in our registry — 86,464 postings from
4,334 boards, not a sample. yes means 99.5% or more; no
means the field does not exist on this endpoint.
| Field | SmartRecruiters |
|---|---|
| Posting date | yes |
| Description | no |
| Pay | no |
| Marked remote | 7.7% |
Title, company, location and an apply URL come back on every row.
Second-largest board count here after BambooHR, every posting dated, and employment type present on 95.5% of rows.
No descriptions on the listing endpoint at all, no pay, and department is present on only 41.8% of rows — the lowest of any platform that has the field.
limit caps at 100 whatever you pass.offset.totalFound, not from rows.Yes, for wide employer coverage where you only need title, location and a link.
No, for full-text search. You would need a second request per posting.
How SmartRecruiters compares with the other eleven on the same four fields is on the comparison page. If you would rather not write and maintain a client, this Actor reads SmartRecruiters and emits the same row shape as the other eleven, and ATS Database is a free lookup for finding which platform a given company is on.
SmartRecruiters boards are a path segment on jobs.smartrecruiters.com,
which makes them straightforward to harvest from URL indexes — 4,334 live boards,
second only to BambooHR here. The awkward part is not finding them but reading them: the 100-row
response cap means a large board is many round trips, and totalFound rather than
the row count is what tells you when to stop.