19 sources, 14 readers at a time. A registry of 145 named traps, 150 company aliases and 999 confirmed-dead boards means a known failure is never paid for twice.
A search API per company, posted to with filters. Hosts run from wd1 to wd503.
The UK filter id is read off a live filter list, never off a job, because a job's own country can be the US. A company id with an underscore needs a hyphen in the web address, or the board silently reads as empty.
One public job board per company, read as JSON in a single call.
32 company names returned nothing, so they are recorded and never tried again.
The public boards API per company, on the US and the EU servers.
33 dead boards recorded, and 890 guessed company names that exist on neither Ashby nor Greenhouse.
The postings API per company, in JSON mode.
Location and remote status come back per posting.
The postings API per company, plus a cross-board search that finds companies not yet on the list.
New companies found by search are added to the list for the next run.
A cross-board search, then each company board read directly.
27 boards are live but empty, so they are skipped.
The company's jobs.json feed.
The jobs sit under items, and the id that matters is inside identifier.value. Remote status needs a second call.
One JSON board per company.
A board whose job ids run perfectly in sequence is a demo board, and is thrown away.
The public guest search, 10 results a page, one location at a time.
Spaces must be sent as %20. Sending %2B once turned every search into Nottingham.
The official API, asked by employer id.
It ignores an employer name without saying so, and direct-employer adverts come back as a separate set.
The official API, across UK locations.
The biggest single source: 735 shortlisted roles in one run.
Company pages, read office by office.
An advert can list Harare first and London third, so the GB office is taken. An office called York with a US address is New York, and is dropped.
Company careers endpoints, one reader each.
Six more ATS families: BambooHR, HiBob, JazzHR, Eploy, PeopleHR and Stonefish.