ATS Unified APIs: What to Look For, Use Cases, and Options
September 24, 2025

Hiring workflows live across dozens of systems: ATS platforms, assessment tools, sourcing extensions, calendars, and job boards. Building one-off ATS integrations for each vendor is slow and brittle. Auth flows, webhooks, pagination, rate limits, and object shapes all differ, and your team ends up maintaining the same plumbing repeatedly.
An ATS unified API fixes that. Instead of writing one integration per provider, you connect once to a normalized API that abstracts the differences. Candidates, applications, jobs, interviews, and activities are available through a single surface, ready for analytics, product features, and AI agents.
What is an ATS unified API?
An ATS unified API is a translation layer between your app and multiple applicant tracking systems: Greenhouse, Lever, Workable, iCIMS, Ashby, Bullhorn, SmartRecruiters, and many more. With one schema and one auth flow, you read and write standard objects and still reach provider-specific fields when you need them.
- Direct integration: a bespoke build per vendor, with unique auth, pagination, rate limits, and webhooks to implement and maintain.
- Unified approach: normalizes
Candidate,Application,Job,Interview, andActivity/Note, with raw field access for the edge cases.
The result is faster launches, less integration debt, and consistent access patterns across platforms. And if you're building AI features, a pass-through unified API plus MCP (Model Context Protocol) lets an agent read and act on ATS data through permissioned tools, without custom integration logic per system.
What to look for in an ATS unified API
When you evaluate providers, look at how the data actually moves, not just at a logo grid.
- Architecture: live or stored. The most consequential difference between unified APIs is whether they reach the source system on each call or serve from a synced copy. A stored model gives fast repeated reads but returns data that's only as current as the last sync, and it persists your customers' candidate data in vendor infrastructure. A pass-through model fetches from the source on each call: current data and nothing cached at rest, at the cost of a live round-trip per request. For live recruiter views, stage changes, and AI agents acting on current state, the difference is correct data versus stale data.
- Schema quality, not just object count. A clean ATS model normalizes
Candidate,Application,Job,Interview, andActivity/Noteand embeds the related data where it belongs: screening questions and result links on the job, interviews and offers on the application, scorecards and attachments where you'd expect them. Watch for the opposite pattern: platforms that expose every record as a separate first-class object look comprehensive on a checklist but can mean extra calls to assemble what one well-designed object should return, unless the API supports expansion. - Normalized status, with the original preserved. Application status is where ATS systems differ most. A strong model maps each vendor's stages to a normalized disposition enum (e.g.
NEW → HIRED → REJECTED/DECLINED/WITHDRAWN) and returns the raw vendor label alongside it, so you get a consistent pipeline view without losing the source-of-truth value. - Custom fields and raw access. Read and write custom fields and custom objects through a metadata API, plus an escape hatch to reach vendor-specific endpoints the common model doesn't cover.
- Event delivery. Native webhooks when the ATS supports them; managed change detection, with polling, detection and retries handled for you, when it doesn't, so your app consumes one consistent event interface either way.
- Security and compliance. SOC 2 Type II, GDPR, CCPA/CPRA, HIPAA; the option to keep credentials in your own cloud KMS or secrets manager; IP allowlisting; externalized logs.
- Developer experience. SDKs in the major languages, embedded auth components, sandboxes, observability, and a genuine "build once per category" model.
- Pricing model. Usage-based pricing that scales with activity rather than per connection or per customer, with transparent overage rates.
- AI-readiness. A first-party MCP server, so ATS reads and actions are callable as permissioned LLM tools against current data, not a custom bridge you build and maintain.
Use cases for ATS unified APIs
- Source candidates: enrich and stage sourced prospects; create candidates and applications in the ATS and write updates back. (Greenhouse, Lever, Workable, and more.)
- Assess candidates: trigger assessments, write results back as scorecards or notes, and read stage changes to drive next steps.
- Promote jobs: read and write job postings across supported ATS endpoints; keep statuses in sync where the ATS supports it.
- Track applications: subscribe to stage-change and interview events; maintain live pipelines, SLAs, and breach notifications.
- Agentic recruiting: use MCP to let an agent schedule interviews, add notes, or move stages against current data, permissioned and auditable, without custom integration code.
How the major unified APIs compare
Not all "unified APIs" behave the same. Some are sync-first (built for BI and reporting); others are pass-through (built for live product flows and agents). The biggest differences aren't in the logo count; they're in architecture, event delivery, and where your customers' data lives.
| Feature | Unified.to | Merge.dev | Apideck | Kombo | Truto | Knit |
|---|---|---|---|---|---|---|
| Architecture | Pass-through; source fetched on each call; no business data at rest | Sync-and-store; reads served from Merge's copy | Pass-through: each request routed to the source; virtual webhooks where no native ones exist | Sync-and-store; reads served from Kombo's database | Pass-through with configurable polling | Pass-through reads; scheduled syncs push changed records to your webhook |
| ATS integrations | 157 | see vendor docs | see vendor docs | see vendor docs | see vendor docs | 40 in its docs (as of 8 October 2026) |
| Data model | Normalized Candidate/Application/Job/Interview/Activity; related data embedded (scorecards, attachments, interviews, offers); raw field access | Unified models; per-provider fields mapped | Unified models; custom field mapping on Scale and above | Unified models; custom fields; metadata endpoints | Unified models; clone/extend | Unified models; passthrough and raw data on every plan; saved field mappings from Scale Up |
| Event delivery | Native webhooks; virtual webhooks detect changes and deliver events at a 1-minute minimum on paid plans | Webhooks plus scheduled sync; events fire after each sync completes | Native webhooks; virtual webhooks typically every 24 hours, adjustable by plan (as of 8 October 2026) | Native where available; otherwise polling (3-hour default; faster intervals on higher tiers) | Unified webhooks on a few integrations (Ashby, Breezy); otherwise opt-in RapidBridge polling, 5-minute minimum (as of 8 October 2026) | Scheduled syncs push changed records: 24 hours on its entry plan, down to 5 minutes on higher plans; native events on 7 ATS apps |
| Customer data at rest | None | Stored (synced copy) | No business records stored; logs capture full request and response bodies by default | Stored (synced copy) | None by default; opt-in SuperQuery store | No records, per Knit; keeps hashes of synced records, and its FAQ says logs show raw request and response JSON |
| Security | SOC 2 Type II; GDPR, CCPA/CPRA, HIPAA, PIPEDA; BYOK (Pro+); IP allowlisting | SOC 2 Type II, ISO 27001, HIPAA, GDPR | SOC 2 Type II, GDPR | SOC 2 Type II, ISO 27001, HIPAA, GDPR | SOC 2 Type II, ISO 27001; trust centre lists GDPR and HIPAA (as of 8 October 2026) | SOC 2 Type 2 (per its FAQ), ISO 27001:2013 (per its DPA), GDPR |
| AI / MCP | First-party MCP server (US/EU/AU); ATS reads and writes as permissioned tools | Local merge-mcp package (one Linked Account per process); Agent Handler sold separately as a hosted MCP product | MIT-licensed, self-hostable MCP server (beta) | Documentation MCP server only; none for integration data (as of 8 October 2026) | Hosted MCP server per connected account; 514 of 840 integration pages list tools (as of 8 October 2026) | Hosted MCP Servers product: 106 per-app servers, including ATS; free plan for 5 servers (as of 8 October 2026) |
| Pricing | Usage-based; Grow $750+/mo, Pro $1,500+/mo, Scale $3,000+/mo (as of 8 October 2026); unlimited customers and connections | Per linked account (base plan + per-account) | Per consumer | Sales-led; per-customer model, no public pricing | Per-connector / tiered | Start Up $499/month; connected accounts priced by contract on every plan |
| Best fit | Live pipelines, AI agents, event-driven product features; teams that need current data and no customer data at rest | Historical sync, reporting, BI across many customers | Embedded integrations marketplace; accounting depth | HR/ATS products that want a vendor-hosted copy and accept reads as current as the last sync | Customizable unified endpoints | HR and recruiting products that want live reads plus scheduled change events |
| Competitor figures reflect public documentation as of June 2026, with the MCP, architecture and data-at-rest rows re-checked 8 October 2026. They change frequently: verify current counts, pricing and certifications directly with each vendor before relying on them. |
Why Unified.to is built for ATS
Most unified APIs started in payroll or CRM. Recruiting has more edge cases: custom stages, job-board variance, assessment add-ons, attachment handling, and noisy webhooks. Three architectural choices matter most.
Unification, not merging. A normalized model is only useful if it's well-designed. Some platforms expose every related record as its own first-class object, with screening questions, tags, interviews, offers and rejections all separate, which looks thorough but, unless the API supports expansion, can mean extra calls to reconstruct one application's context, plus the integration logic to stitch them back together. Unified.to embeds related data inside well-formed objects: screening questions and result links on the Job; interviews, offers, and rejections on the Application; scorecards and attachments where you'd reach for them. Fewer calls, less assembly, cleaner data.
Normalized status with the original preserved. Application disposition is the messiest part of any ATS integration: every system names its stages differently. Unified.to maps them to a normalized enum and returns the vendor's original label in original_status alongside it, so you get a consistent pipeline across every ATS without losing the source-of-truth value.
Live pass-through, including beyond the schema. Every call reaches the source system at request time; no candidate or application data is cached at rest. When you need fields outside the common model, request raw to get the original source payload alongside the normalized object, or use the Passthrough API to reach any unmodeled endpoint directly. Both run live through the same path, so reaching past the schema doesn't move you onto a staler one.
On top of that:
- Read and write across the full object graph: candidates, jobs, applications, documents, activities, interviews, and scorecards, bi-directionally, not read-only with a thin write surface.
- No customer data stored: every call fetches from the source. SOC 2 Type II; GDPR, CCPA/CPRA, HIPAA, PIPEDA; credentials in your own secrets manager, 11 supported, including AWS Secrets Manager, Azure Key Vault, Google Cloud Secret Manager and HashiCorp Vault (Pro and above); log streaming to your own Datadog; IP allowlisting.
- AI-native with MCP: a first-party MCP server (US/EU/AU) makes permissioned ATS tools callable by LLMs (Claude, GPT, Gemini) so an agent can update stages, leave notes, and schedule interviews against current data.
- Developer experience: 7 backend SDKs (TypeScript, Python, Go, Ruby, PHP, Java, C#), embedded auth and SSO components for React, Vue, Angular, and JS, and observability.
- Usage-based pricing: start with a 30-day free trial; cost scales with activity, not per connection or per customer.
Integrating with ATS systems shouldn't block your roadmap or your AI strategy. With Unified.to you integrate once and get ATS coverage that's current, secure, and agent-ready.
For a head-to-head with the HR specialists, see Kombo vs. Unified.to and Finch vs. Unified.to. For the pricing-model question, see Usage-Based vs. Per-Connection Pricing for Integrations.
If your roadmap includes sourcing, assessments, analytics, or agentic recruiting features, start your free 30-day trial or book a demo.
Written by Mallory Greene.
About the author: Mallory Greene is Head of Marketing at Unified.to. She writes about integration infrastructure, unified APIs, and MCP for technical teams. Based in Toronto.