λats-sdk

Introduction

The open-source TypeScript SDK for Applicant Tracking Systems (ATS).

ATS SDK

ATS SDK is a lightweight, zero-lockin TypeScript client and normalizer for querying public career pages across major Applicant Tracking Systems.

Built for AI job agents, career platforms, and candidate aggregation pipelines.

Why ATS SDK?

Every ATS exposes completely different API endpoints, response shapes, pagination schemes, and nested custom fields. Standardizing career data across thousands of companies usually means writing fragile, one-off scrapers or paying for expensive third-party data brokers.

ATS SDK unifies these disparate platforms into a single, strongly-typed TypeScript interface:

  • 9 Native Adapters: Greenhouse, Ashby, Lever, Workday, SmartRecruiters, Workable, Recruitee, Breezy HR, and BambooHR.
  • Universal Schema: Clean, normalized job data (title, location, salary, workplace, departments, publishedAt, and raw).
  • AI Agent Tooling: Native function definitions ready for Vercel AI SDK, LangChain, or direct OpenAI tool calling.
  • Resilient & Friendly: Built-in exponential backoff, rate limiting, and customizable HTTP transport for proxies.

Quick Installation

npm install ats-sdk
# or
bun add ats-sdk

Basic Example

import { createAtsClient } from "ats-sdk";

const client = createAtsClient();

// Query Stripe's public job openings via Greenhouse
const jobs = await client.getJobs("greenhouse", "stripe");

console.log(`Found ${jobs.length} jobs at Stripe:`);
for (const job of jobs.slice(0, 3)) {
  console.log(`- ${job.title} (${job.location})`);
}

On this page