--- id: smartrecruiters title: SmartRecruiters Extractor description: Public SmartRecruiters Posting API discovery with per-company identifiers. sidebar_position: 14 --- ## What it is Original API: [SmartRecruiters Posting API](https://developers.smartrecruiters.com/reference/v1listpostings) The extractor lives in `extractors/smartrecruiters/manifest.ts`. It calls the public JSON endpoints (no API key for public boards), paginates active **PUBLIC** postings per configured company, optionally matches pipeline search terms against title and location, then loads each posting’s detail document so `jobUrl` / `applicationLink` and HTML descriptions resolve to the same URLs candidates see on `jobs.smartrecruiters.com`. ## Why it exists Many large employers (including a significant share in Canada and the EU) publish on SmartRecruiters. This source complements Greenhouse, Lever, Ashby, and Workday by covering another major ATS with a predictable public API. ## How to use it 1. Find each employer’s **company identifier** — the path segment in their public board URL (for example `jobs.smartrecruiters.com/smartrecruiters/...` → `smartrecruiters`). 2. In **Settings**, set **SmartRecruiters companies** (`smartrecruitersCompanies`) to a JSON array or comma/newline-separated list of those identifiers, or set `SMARTRECRUITERS_COMPANIES` in the environment. 3. Optionally set **SmartRecruiters max jobs per company** (`smartrecruitersMaxJobsPerCompany`, default `100`, max `500`) to cap pagination after term filtering. 4. Set your pipeline **search geography** and **search terms** as usual; terms filter postings by title, location text, and company display name. 5. Enable **SmartRecruiters** in pipeline sources and run the pipeline. ## Common problems ### SmartRecruiters never appears in source toggles - No companies are configured (`smartrecruitersCompanies` / `SMARTRECRUITERS_COMPANIES` is empty). ### Zero jobs for a slug I know is correct - The identifier must match the **public Posting API** path, not necessarily the marketing site name. Confirm listings exist on `jobs.smartrecruiters.com//`. ### Rate limiting or intermittent HTTP errors - Reduce `smartrecruitersMaxJobsPerCompany` or the number of configured companies; each kept posting triggers a detail request after the list pass. ## Related pages - [Extractors Overview](/docs/next/extractors/overview) - [Add an Extractor](/docs/next/workflows/add-an-extractor) - [Settings](/docs/next/features/settings)