Third-Party ATS Import
INTEGRATIONS · EXPERTINI ATS

Third-Party ATS Import

Move from Zoho Recruit, Greenhouse, Workable, Lever, iCIMS, JazzHR, Breezy, Manatal, Ceipal, or any other system — jobs, candidates, AND your live funnel, in one structured JSON upload.

3 min read · Updated July 2026 · Expertini Editorial

Switching applicant tracking systems usually stalls on one question: what happens to everything already in the old one? The Third-Party ATS Import app answers it with a deliberately simple contract. Download our sample JSON, reshape the export from your current system — Zoho Recruit, BambooHR, Greenhouse, Workable, Manatal, Ceipal, JazzHR, Breezy HR, Lever, iCIMS, or anything else that can export data — to match it, and upload. Jobs arrive as drafts you review before publishing; candidates join your talent pool with their details intact; and the applications array rebuilds your funnel, re-attaching each candidate to their job at the stage they were at.

The gap this closes is losing your pipeline history at the exact moment you are trying to improve it. A recruiter who abandons two years of sourced candidates starts the new system from zero. With the import, that accumulated talent pool becomes searchable from day one, feeds directly into talent sourcing workflows, and your open roles arrive with their applicants already in stages. The importer is a native part of Expertini ATS — one subscription, no migration consultants, no per-record fees.

Watch the 30-second overview — no sign-up needed

Which system are you moving from?

Type to search — picking a vendor opens the dedicated migration guide for it. Every path lands in the same importer, with the same honest batch limits and dedupe rules.

Dependency map — what imports, exactly

Jobstitle, description, location, type, category, salary, experience & education levels — arrive as DRAFTS, nothing goes live by accident
Candidatesname, email, phone, title, location, skills, notes — into the talent pool, deduplicated by email
Applicationscandidate_email + job_external_id + stage + applied_at — rebuilds your funnel; foreign stage names ("phone screen", "offered", "onsite"…) map automatically, unrecognised ones land in Applied
Batch limits500 jobs and 2,000 candidates per upload — split bigger exports; duplicates are skipped, so overlapping batches are safe
CVsdon't travel through JSON — imported candidates carry their profile text; CVs can be added to records any time

Interface blueprint

Structural schematic of the surface — panels, hierarchy, and interaction affordances. A contract, not a screenshot.
Your current ATS
CSV / JSON / API export
Settings → Data export, or ask support — the data is legally yours.
The sample JSON contract
jobs[]candidates[]applications[]
Field names must match the sample exactly; anything extra is ignored. Reshape with a spreadsheet, a small script, or any AI assistant: “convert to this format”.
Inside Expertini ATS
jobs → drafts candidates → talent pool applications → funnel, stages mapped
Deduplicated by email · nothing publishes without your click.
Fig. 1 — the migration pipeline: export from your current system, reshape to the sample JSON contract, import with dedupe and automatic stage mapping.

Interaction flow — states, validations, feedback

Every state below is enforced server-side; the interface reports it, it doesn't decide it.
Export from your current ATSCSV/JSON/API export — usually Settings → Data export, or ask support; the data is legally yours
Reshape to the sample JSONspreadsheet save-as-JSON, a small script, or paste both files into an AI assistant: "convert to this format"
Upload & validatefield names must match the sample; anything extra is ignored, errors are named
Dedupe + stage mappingcandidates matched by email; foreign stage names map onto your pipeline automatically
Working pipelinejobs as drafts, talent pool populated, funnel rebuilt — review, then publish
Over the batch cap → split the file; overlapping batches are safe because duplicates skipUnknown stage name → lands in Applied, never lostField name mismatch → named validation error; nothing partial importsJobs import as drafts — nothing is published without your clickCVs can't ride in JSON — attach them to imported records afterwards
Fig. 2 — interaction flow: navy = states, gold = server-enforced gates, green = confirmed outcomes; tags list the edge cases and their feedback.

01A format any system can produce

Rather than maintaining brittle one-off connectors for every vendor's export quirks, the app publishes one documented JSON shape with a downloadable sample. Every mainstream ATS can export jobs and candidates as CSV or JSON; reshaping that export to the sample structure is a straightforward transform in a spreadsheet or a short script.

Because the format is open and documented, it also works for systems the registry never anticipated — an in-house tool, a shared spreadsheet, or a legacy database. If you can get your data out, you can get it in.

02Drafts first, so nothing goes live by accident

Imported jobs land as drafts, not published listings. That gives you a review step: fix titles, attach the right pipeline stages, add screening questions, and publish on your own schedule. Candidates are added to the talent pool; if your upload includes the applications array, each one is also placed into their job's pipeline at the imported stage — and any placement is yours to adjust afterwards.

03The funnel moves too — stages mapped automatically

The applications array is what makes this a migration rather than a copy: each row links a candidate (by email) to a job (by your old system's job id) at a stage, with the application date preserved. Other systems name stages freely — "phone screen", "onsite", "offered", "shortlisted" — so the importer maps roughly forty common stage vocabularies onto your Expertini pipeline automatically, and anything it doesn't recognise lands safely in Applied instead of failing the row. Day one in the new system looks like the last day in the old one.

04From upload to a working pipeline

After the upload you get a clear result: what was created, what was skipped, and why — for jobs, candidates, and applications separately. Publish your reviewed drafts individually or push a batch out with bulk job posting, then invite your team and pick up hiring where the old system left off. Most migrations are a single afternoon, not a quarter-long project.

Frequently asked questions

Which systems can I migrate from?
Any system that can export its data. Zoho Recruit, BambooHR, Greenhouse, Workable, Manatal, Ceipal, JazzHR, Breezy HR, Lever, and iCIMS are common starting points, but the importer accepts one documented JSON format, so any export you can reshape to the sample will work.
Does my hiring funnel come across?
Yes — the applications array carries candidate email, job reference, stage, and applied date. Stage names from other systems map automatically onto your pipeline; unrecognised ones land in Applied rather than erroring.
Why do imported jobs arrive as drafts?
So nothing goes live without your review. You check each job, adjust stages and screening questions, and publish deliberately — avoiding accidental duplicate live listings during the cut-over.
What candidate data comes across?
Candidate details as provided in your export join your organisation's talent pool, where they are searchable and can be added to live pipelines. You control the fields by what you include in the JSON.
Does the import cost extra?
No. It is included in every plan — sign up and run it yourself, with no per-record charges or paid migration service.

At a glance

  • One documented JSON format with a downloadable sample
  • Works with exports from any ATS or spreadsheet
  • Jobs arrive as reviewable drafts, not live posts
  • Candidates join a searchable talent pool
  • Applications rebuild your funnel — stages auto-mapped
  • Clear per-row report; re-uploads never duplicate
  • No per-record fees or migration consultants

See third-party ats import on your own hiring.

Bring a real job description to a 30-minute demo — free trial included.

Book a demo
Expertini AI
Online now
Hi! I'm Expertini's AI Product Expert. Ask me anything about our solutions, get guidance on any of our Hiring Tools, or just tell me what you're trying to do — I'll point you in the right direction. For account-specific issues, email support@expertini.com.