ATS platforms

Every ATS platform Jobo reads.

An applicant tracking system is the software a company posts its jobs in. Jobo reads 100+ of them through one API and returns every public posting as structured JSON, refreshed hourly.

How do the biggest ATS platforms differ?

Every platform below returns the same normalized schema through Jobo. The differences are in how their own APIs behave if you read them directly.

The most requested ATS platforms compared by API type, authentication, rate limit and integration difficulty.
PlatformAPI typeAuth requiredRate limitDifficulty
ADPRESTYesNo documented limit; pace requests ~200-300ms apart to avoid 403/429 blocksintermediate
AshbyRESTNoNo published limit; throttle to avoid HTTP 429beginner
BambooHRRESTNoUndocumented; throttle requests conservatively and back off on HTTP 429beginner
GreenhouseRESTNoNo official limits; 200-500ms between requests recommendedbeginner
iCIMSHTMLNo~500ms between requests; cap concurrent detail fetches at 3advanced
LeverRESTNoNo published limit; robots.txt sets a 1-second crawl-delaybeginner
Oracle CloudRESTNoNo published limit; ~300ms between requests, max ~3 concurrent recommendedintermediate
PersonioRESTNoNo official limit; pace ~200ms between requestsbeginner
SmartRecruitersRESTNoNo published limit; throttle to ~100ms between requests (5 concurrent detail fetches)intermediate
SuccessFactorsHybridYesNo published limit; ~200ms between requests, 3 concurrent detailsadvanced
TaleoHybridNoUndocumented; self-throttle ~200ms between requestsadvanced
UltiPro (UKG)HybridNoUndocumented; throttle to ~3 concurrent detail fetches, ~200ms apartintermediate
WorkableRESTNoNo official limits, but 200-300ms between requests recommendedintermediate
WorkdayRESTNoNo explicit limit (1-2 second delays recommended)intermediate

Which ATS platforms can Jobo pull jobs from?

All 107 of them, each with its own guide: what the platform is, how to read it, and what tends to go wrong. Every one returns the same normalized schema.

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

R

S

T

U

W

Z

Read every one of them with a single key

One endpoint, one schema, one rate limit. Add a platform to your integration by changing a query parameter, not by writing another scraper.