Teamtailor Jobs Scraper
Pricing
Pay per event
Teamtailor Jobs Scraper
Extract public Teamtailor jobs into structured feeds with titles, departments, locations, descriptions, apply URLs, and JobPosting metadata.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Extract public jobs from Teamtailor-hosted career pages into clean, structured datasets.
What does Teamtailor Jobs Scraper do?
Teamtailor Jobs Scraper turns public Teamtailor career boards into normalized job records.
It accepts Teamtailor career-site URLs, /jobs listing URLs, or direct job detail URLs.
The scraper discovers public job links from listing pages.
It can also open every job detail page.
Detail pages are enriched from schema.org JobPosting JSON-LD when available.
That means you get fields such as title, company, department, location, employment type, posted date, description, apply URL, and source URL.
The actor is HTTP-first.
It does not require login credentials.
It does not automate a browser for the normal workflow.
It is designed for recurring job feed collection and hiring-market monitoring.
Who is it for?
Recruiters can monitor competitors' public openings.
Job aggregators can pull Teamtailor-powered career pages into their own feeds.
Hiring-intelligence teams can track departments, regions, and job volume over time.
Sales teams can identify companies hiring for roles that indicate buying intent.
Data teams can normalize Teamtailor job postings before loading them into a warehouse.
Founders and operators can watch hiring activity across selected companies.
Agencies can build alerts for specific job titles and locations.
Why use this scraper?
Teamtailor powers many branded career sites.
Manual copying is slow and error-prone.
Different career sites expose similar data in slightly different HTML layouts.
This actor focuses on the Teamtailor pattern and returns one consistent schema.
You can schedule it on Apify.
You can export results as JSON, CSV, Excel, XML, RSS, or via API.
You can connect the dataset to Google Sheets, Make, Zapier, Clay, Airtable, BigQuery, or your own application.
What Teamtailor pages are supported?
Use a public Teamtailor career home page if it lists jobs.
Use a public /jobs listing URL such as https://career.teamtailor.com/jobs.
Use direct job detail URLs such as https://career.teamtailor.com/jobs/8010892-midmarket-sdr-uk.
Add multiple URLs in one run to combine career boards.
The actor only collects publicly visible pages.
It does not access private candidates, internal hiring pipelines, or recruiter accounts.
Data you can extract
| Field | Description |
|---|---|
title | Job title |
companyName | Hiring company or career-site name |
department | Department or team from the listing card |
location | Human-readable location |
city | City from structured job data |
region | Region from structured job data |
country | Country from structured job data |
remoteStatus | Remote/hybrid/on-site text when available |
employmentType | Employment type such as FULL_TIME |
datePosted | Posted date from JobPosting metadata |
validThrough | Closing date when supplied |
description | Plain-text job description |
descriptionHtml | HTML description from structured data |
applyUrl | Best available apply URL |
jobId | Teamtailor job identifier |
jobUrl | Canonical job page URL |
sourceUrl | Input/listing URL where the job was found |
scrapedAt | Timestamp when the record was saved |
How much does it cost to scrape Teamtailor jobs?
This actor uses Apify pay-per-event pricing.
A small start event is charged once per run.
A result event is charged for each saved job record.
The default input is intentionally small so first runs stay inexpensive.
Final live pricing is visible on the Apify actor page before you run it.
For recurring monitoring, set maxItems to the volume you actually need.
Quick start
-
Open the actor on Apify.
-
Add one or more Teamtailor career-site URLs.
-
Keep
Fetch job detailsenabled for full descriptions and JobPosting metadata. -
Set
Maximum jobsto your desired limit. -
Run the actor.
-
Export the dataset or connect it to your workflow.
Input settings
Career site or job URLs
Add Teamtailor URLs in the startUrls field.
You can mix listing pages and direct job pages.
Example:
{"startUrls": [{ "url": "https://career.teamtailor.com/jobs" }],"maxItems": 25,"includeDetails": true,"requestDelayMs": 150}
Maximum jobs
maxItems controls the total number of records saved across all input URLs.
Use a low value for tests.
Use a higher value for scheduled collection.
Fetch job details
includeDetails opens each job page.
This adds description, company, employment type, posted date, job ID, and structured location fields when available.
Turn it off when you only need fast listing-card output.
Delay between requests
requestDelayMs adds a polite pause between detail requests.
The default is conservative for normal use.
Increase it for very large career boards.
Output example
{"title": "MidMarket SDR - UK","companyName": "Teamtailor","department": "Sales","location": "London, Europe, GB","city": "London","region": "Europe","country": "GB","employmentType": "FULL_TIME","datePosted": "2026-07-02T15:46:44+02:00","jobId": "8010892","jobUrl": "https://career.teamtailor.com/jobs/8010892-midmarket-sdr-uk","sourceUrl": "https://career.teamtailor.com/jobs","scrapedAt": "2026-07-10T07:23:24.642Z"}
Tips for best results
Use the canonical Teamtailor /jobs page when possible.
Enable detail fetching if you need descriptions.
Add multiple companies as separate startUrls.
Use scheduling for daily or weekly hiring-intelligence snapshots.
Deduplicate downstream by jobUrl or jobId.
Store historical runs if you want to detect new, removed, or changed roles.
Integrations
Send new jobs to Google Sheets for manual review.
Load results into BigQuery or Snowflake for trend analysis.
Trigger Zapier or Make scenarios when matching jobs appear.
Feed Clay enrichment workflows with hiring signals.
Create Slack alerts for specific departments or locations.
Use Apify webhooks to notify your application when a scheduled run finishes.
API usage
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/teamtailor-jobs-scraper').call({startUrls: [{ url: 'https://career.teamtailor.com/jobs' }],maxItems: 25,includeDetails: true});console.log(run.defaultDatasetId);
Python
from apify_client import ApifyClientclient = ApifyClient('MY-APIFY-TOKEN')run = client.actor('automation-lab/teamtailor-jobs-scraper').call(run_input={'startUrls': [{'url': 'https://career.teamtailor.com/jobs'}],'maxItems': 25,'includeDetails': True,})print(run['defaultDatasetId'])
cURL
curl "https://api.apify.com/v2/acts/automation-lab~teamtailor-jobs-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"startUrls":[{"url":"https://career.teamtailor.com/jobs"}],"maxItems":25,"includeDetails":true}'
MCP usage
Use this actor from Claude Desktop, Claude Code, or any MCP-compatible client through Apify MCP.
MCP tool URL:
https://mcp.apify.com/?tools=automation-lab/teamtailor-jobs-scraper
Claude Code setup:
$claude mcp add apify-teamtailor-jobs --transport http https://mcp.apify.com/?tools=automation-lab/teamtailor-jobs-scraper
Claude Desktop JSON config:
{"mcpServers": {"apify-teamtailor-jobs": {"url": "https://mcp.apify.com/?tools=automation-lab/teamtailor-jobs-scraper"}}}
Example prompts:
-
"Scrape the Teamtailor jobs at this URL and summarize roles by department."
-
"Monitor this Teamtailor career page and tell me which jobs were added since last week."
-
"Extract Teamtailor job descriptions and identify sales roles in London."
Scheduling
Apify schedules let you run this actor automatically.
Daily schedules work well for job alerts.
Weekly schedules work well for hiring trend reports.
Use the same input each time.
Compare datasets by jobUrl to find newly added postings.
Handling multiple companies
Add every Teamtailor career board to startUrls.
The actor processes sources in order.
It stops when maxItems is reached.
Set a higher maxItems when combining many companies.
Use sourceUrl to group results by originating career board.
FAQ
Can I scrape any Teamtailor career site?
Yes, if the career site is public and exposes Teamtailor job pages without login.
Does this actor use a browser?
No. It uses HTTP and Cheerio for the baseline workflow, which keeps runs fast and inexpensive.
Can I schedule recurring Teamtailor job alerts?
Yes. Use Apify schedules and compare each run by jobUrl or jobId.
Troubleshooting
I got fewer jobs than expected
Check maxItems first.
Some career sites have only a small number of public jobs.
If you entered a company home page that does not contain job links, try its /jobs page.
Descriptions are missing
Make sure includeDetails is enabled.
Some Teamtailor pages may omit structured descriptions or use custom blocks.
The actor still returns listing-card fields when details are unavailable.
A URL fails
Confirm the page is public and Teamtailor-hosted.
Private, expired, or redirected jobs may not be available.
Legality and ethics
This actor collects public career-page data.
It does not bypass login walls.
It does not collect private candidate data.
You are responsible for using results in accordance with applicable laws, website terms, and privacy rules.
For personal data in job descriptions, apply your own retention and compliance policies.
Related scrapers
Explore related Automation Lab actors for broader hiring intelligence:
-
https://apify.com/automation-lab/google-search-scraper -
https://apify.com/automation-lab/linkedin-company-scraper -
https://apify.com/automation-lab/website-contact-finder -
https://apify.com/automation-lab/clutch-scraper
Support
If a public Teamtailor career page does not parse correctly, share the run and input URL through Apify support.
Include whether includeDetails was enabled.
Include the number of jobs visible in the browser.
That helps reproduce layout-specific issues quickly.