Use Cases
-
Jul 1, 2026

How Interview Scheduling Companies Can Scale ATS Integrations 10X Faster

Interview scheduling companies play an integral role in helping their partner organizations hire the right talent by streamlining the candidate communication and end-to-end interview process. 

The first step towards smooth interviews is getting a pool of candidates to choose from. Here, most companies rely on ATS or Application Tracking Systems to pull in candidate and job data. 

While building and maintaining all the ATS integrations is a tedious and resource-intensive process, it can be made simpler and faster with unified ATS APIs. We will get to that, first let’s look at all the use cases you can enable with ATS integrations.

TABLE OF CONTENTS

•        ATS integration in interview scheduling workflow

•        ATS integration challenges

•        How interview scheduling companies can 10X their growth with unified ATS API

•        What else do you get with Knit Unified API?

•        FAQs

ATS integration in interview scheduling workflow

Let’s quickly look at how ATS APIs can streamline the interview scheduling workflow. 

Step I: Integration setup

Essentially, the first step is to get the ATS integration in place leveraging popular ATS APIs. As an interview scheduling company, you can choose the appropriate approach to ATS integration via in-house integration building, embedded iPaaS, unified API or workflow automation tools. 

Read: Build vs Buy: Best way to build product integrations

Step II: Data synchronization

Once the integration setup is complete, data synchronization regarding the job requisition, interview schedule, candidate information can be commenced.

This will ensure that whenever data from a new candidate is entered in the ATS, the interview scheduling company gets an automated alert to initiate the next steps to set up the interview and following processes.

The right ATS integration approach will ensure that the interview scheduling company receives new candidate alerts automatically, without pushing for updates.

Read:How Candidate Screening Tools Can Build 30+ ATS Integrations in Two Days

Step III: Calendar and interview slot coordination

ATS APIs can help interview scheduling companies with real-time calendar and interview slot coordination. Once the applicant profile screening is complete and the profile has been shortlisted in the ATS, the interview scheduling company can automatically capture this update directly from the ATS app and identify potential slots for the interview based on the calendar availability for the candidate and the interviewer. 

Step IV: Candidate communication 

Once the interview slot has been decided, the interview scheduling company can extract ATS API data to automate interview invitations and reminders and even personalize candidate communication as per the role, position and context. 

The same information about the communication will be automatically updated in the ATS to ensure that the hiring organization using the API has a clear picture of the candidate status. 

Step V: Real time candidate status update

As soon as the interview is complete, the ATS API enables the interview scheduling company to update candidate status in real time. 

For instance, Knit WRITE APIs enable you to update candidate status about whether or not the candidate appeared for the interview, status in the interview process (selected, rejected, moved to next round, add notes etc.). See docs

This information is then reflected in real time in the ATS to help the HR and hiring managers understand where they stand for that particular position and whether they need to source more applications. 

Step VI: Interview feedback and evaluation

In addition to the status update, the ATS integration also enables the interview scheduling company to provide a detailed feedback and evaluation of the interview which can be captured directly in the ATS. 

In case the hiring organization prefers, they can share it with the candidate or keep it in their ATS records for future reference. 

Step VII: HR analytics 

Finally, the ATS integration can help interview scheduling companies  capture key hiring metrics and facilitate HR analytics. 

For instance, the integration can help capture the metrics including Application-to-Interview Conversion Rate, Interview Scheduling Efficiency, Interview-to-Hire Ratio, Time-to-Fill (TTF), Time-to-Hire (TTH), Offer Acceptance Rate, etc. 

Data from these metrics can help identify the gaps in the hiring process and facilitate better outcomes. 

ATS integration challenges

While scaling ATS integrations is crucial for any interview scheduling companies to close more deals, building and maintaining ATS integrations is not easy. Here’s why most companies struggle with scaling their integration efforts:

1. Data compatibility issues 

First, different ATS applications use different data fields, models and nuances, which may or may not be compatible with other ATS or even with the data models being used by the interview scheduling company. 

This can lead to data compatibility issues leading to larger bandwidth requirements to understand and use different ATS APIs, with the danger of data corruption as well. 

2. Candidate data sensitivity during transfer

Second, since both sides of the data transfer contain sensitive candidate information, the ATS integration must have robust security measures for authorization and authentication as well as others like rate limiting etc. to prevent unauthorized access or DDoS attacks, among others. 

With policies like GDPR and most recently the Digital Personal Data Protection (DPDP) law (in India), any data misuse can lead to serious repercussions, especially because ATS and hiring processes use a lot of personal candidate data. 

3. Engineering and maintenance costs with increasing number of ATS being used

Third, as you scale and onboard more customers, you will be bound to further ATS integrations to their preferred ATS application. 

The engineering and maintenance costs associated with adding more ATS applications scale with each new platform you support — every additional ATS means another authentication flow, data model, and set of API quirks to build and maintain in-house. For a team supporting dozens of ATS platforms across customers, this overhead compounds quickly.

This can dilute your engineering team's bandwidth from focusing on the core product. Scalability with the growing number of ATS applications to be added can pose a resource and cost challenge.

4. Vendor (ATS) coordination and cooperation

In addition to the engineering costs, scaling ATS integrations also comes with additional coordination and cooperation with the ATS vendors. 

When you are building and managing ATS integrations in-house you have to take care of coordinating with every ATS vendor in case of any error or challenge in data transfer, security, etc. This can be highly time consuming and counter productive. 

5. Limited real time update capabilities

Next, if you use a polling infrastructure to power your ATS integration, you will need to take care of the heavy lifting of polling data from ATS applications, dealing with different API calls and rate limits. 

Invariably, this will prevent you from accessing data in real time as soon as there is any update in candidate information or a new candidate is onboarded to the system. This can lead to delays in interview scheduling and missed opportunities. 

How  interview scheduling companies can 10X their growth with unified ATS API

While there are certain operational challenges to using ATS integrations, unified APIs like Knit, can help address all such challenges and even achieve 10X growth. 

Centralized data management with one data model 

Knit periodically pulls data from all connected ATS platforms and processes the data coming from different platforms in different formats to convert them to one unified data model. 

The heavy lifting of pulling data from various ATS apps, dealing with different API calls, rate limits, formats etc are completely taken care of by Knit. 

Real-time data sync for higher productivity

Depending on the infrastructure used, your data sync frequencies can be set. A webhook driven architecture will facilitate real time data sync without requiring you to initiate polling. 

For instance, Knit, having a 100% event-driven webhook architecture, refreshes data in real time by periodically pulling data from all connected ATS platforms and processes the data coming from different platforms in different formats to convert them to our unified model. As a result, you won’t have to manage any polling infrastructure on your end or worry about missing any critical data update.

Faster time to market with quick deployment

Adding an ATS integration can take anywhere from a few weeks to several months. But, with a unified API, you can add multiple ATS integrations in as little as one day. 

This quick deployment ensures that you are able to leverage the benefits of ATS integration faster. 

Easy scalability to integrate with multiple ATS APIs in one go

Not only is deployment faster with unified API, it also supports accelerated and unlimited scalability. You can connect with various ATS applications in one go. 

For example, as an interview scheduling company, you can simply embed the Knit’s UI component in your frontend to get access to the  full catalog of 30+ ATS applications, regardless of the auth type, credentials, nuances for the application. 

All credential management, verification, token generations become the responsibility of Knit in this case.

Not only that, each time a new app is integrated to the Knit’s ATS API category, you get immediate access and sync capabilities with the new app without writing a single line of code. Get your Knit unified ATS API key now! (Start for free)

Better reporting and analytics to manage integrations seamlessly

Reporting and analytics with a unified API like Knit can help facilitate high customer satisfaction. 

For instance, Knit allows interview scheduling companies to monitor and manage the health of all ATS  integrations for each connected customer using a detailed Logs, Issues, Integrated Accounts and Syncs page. 

Companies can keep track of all API calls, data syncs and requests made by users as well as status of each webhook registered on a single dashboard

Enhanced security 

A unified API helps interview scheduling companies facilitate better security and data privacy. 

For instance, Knit fosters double encryption for data—when it is at rest as well as when it is in transit.

At the same time, most unified APIs comply with the key security protocols such as HIPAA, SOC2, GDPR etc and ensure constant monitoring with top intrusion detection systems. A unified API generally supports all forms of authentication like OAuth, API key or a username-password based authentication. 

Note: As a unified API, Knit goes a step further to promote end user security. Knit is the only unified API which considers your data sacrosanct and doesn’t store a copy of your data. The syncs happen over a 100% webhook-based architecture for enhanced data security. Furthermore, an additional layer of application security protects and prevents all PII from any security vulnerabilities. Learn more

Expand market reach and serve more customers

By providing instant ATS integration with multiple ATS applications, interview scheduling companies can leverage unified APIs to expand their market reach and acquire new customers.

They no longer have to worry about missed opportunities or make their prospects wait till they are able to build new ATS integrations. 

This allows interview scheduling companies to close deals faster and serve a higher number of customers, leading to increased revenue and greater profitability. 

What else do you get with Knit Unified API?

Interview scheduling companies using Knit as their unified API for ATS integration automatically retrieve new applications from all connected ATS platforms. 

Knit pulls the data and sends the relevant data to the interview scheduling tool, reducing the need for making API calls or manually starting data syncs. Owing to the webhooks architecture, Knit ensures high scalability and delivery, irrespective of the data load. 

You control when data syncs happen

While Knit supports real time data sync, it also allows users to control when syncs happen, which can be set by the CX team directly from the dashboard, without involving engineering resources. 

Furthermore, filters can be set on the information being retrieved from the source system to only consume the relevant data to save network cost and storage cost.

Get started with ATS APIs

Staying on top of ATS integrations can be overwhelming and time consuming due to the sheer number of the ATS APIs available in the market today. 

Knit helps you integrate with 30+ ATS and HR applications with a single unified API. Plus, we have built Knit with a developer friendly setup which requires minimal coding and maximum onboarding support. 

If you want to know more about Knit, talk to one of our experts or try our unified ATS API yourself, today. (Getting started is completely free)

FAQs

What is ATS integration?

ATS integration is the process of connecting an Applicant Tracking System with other software — such as interview scheduling tools, sourcing platforms, or HRIS systems — so candidate, job, and application data flows between them automatically. Knit provides a unified ATS API that connects to 30+ ATS platforms through one integration, so an interview scheduling product can pull candidate and interview-stage data from whichever ATS a customer uses, and push scheduling updates back, without building a separate connection per platform. Without integration, this data has to be entered or updated manually in each system, which is slow and error-prone at scale.

What does ATS stand for?

ATS stands for ApplicantTracking System — software that recruiting teams use to post jobs, collectapplications, move candidates through interview stages, and manage offers.Examples include Greenhouse, Lever, Workday, and BambooHR. For an interview schedulingcompany, the ATS is the system of record for candidate and interview data —it's where interview stages, interviewer panels, and scheduling statustypically live. Knit's unified ATS API connects to 30+ of these platformsthrough a single integration, normalizing each one's data model into aconsistent format so a scheduling product doesn't need separate logic per ATS.

How much does it cost to build an ATS integration?

Building and maintaining a direct integration with a single ATS typically involves implementing OAuth, mapping that ATS's specific data model, and handling its rate limits and webhook support (or lack of it) — work that scales linearly with each additional ATS a product needs to support. Knit's unified ATS API removes most of this per-platform work: one integration gives an interview scheduling product access to 30+ ATS platforms through a single data model and authentication flow, with Knit handling token refresh and platform-specific quirks. The ongoing maintenance burden — adapting to each ATS's API changes — also shifts from your team to Knit's integration layer.

What ATS platforms are most commonly used by interview scheduling tools?

Interview scheduling tools most often need to integrate with the ATS platforms their customers already use for hiring — commonly Greenhouse, Lever, Workday, BambooHR, JazzHR, and Jobvite, alongside enterprise systems like SAP SuccessFactors and Oracle Taleo. Because customer bases are rarely standardized on one ATS, scheduling products typically need broad coverage rather than a single integration. Knit's unified ATS API covers 30+ of these platforms — including Greenhouse, Lever, Workday, BambooHR, and Jobvite — through one set of endpoints, so a scheduling tool can support whichever ATS a given customer runs without building platform-specific code for each one.

How does ATS integration improve interview scheduling?

ATS integration lets aninterview scheduling tool automatically pull candidate details, jobrequisitions, and interview stage information directly from the ATS, instead ofrecruiters re-entering this data manually. Knit's unified ATS API delivers thisdata in real time via webhooks, so when a candidate moves to an interview stagein the ATS, the scheduling tool is notified immediately and can triggeravailability checks and calendar invites. Scheduling outcomes — confirmedinterview times, interviewer assignments, feedback — can then be written backto the ATS through Knit's write APIs, keeping the recruiter's view of thepipeline current.

Is candidate data secure when it's synced between an ATS and a scheduling tool?

Knit encrypts candidate data both at rest (AES-256) and in transit (TLS 1.3), with an additional layer of application-level encryption applied specifically to personally identifiable information. Knit is SOC 2, GDPR, and ISO 27001 compliant, and uses a pass-through architecture that avoids storing a persistent copy of customer data. For interview scheduling tools, this matters because syncing candidate names, contact details, and interview feedback between systems involves personal data subject to regulations like GDPR — so the integration layer connecting your scheduling tool to a customer's ATS needs its own verifiable security posture.

Can a scheduling tool get real-time updates when an interview stage changes in the ATS?

Yes — this is one of the main benefits of an event-driven ATS integration. Knit's unified ATS API runs on a webhook-based architecture, so when a candidate's stage changes in the ATS —moved to "Interview", rejected, or advanced to offer — your scheduling tool receives that event in near real time instead of polling the ATS on a schedule. For ATS platforms that don't natively support outbound webhooks, Knit provides virtual webhooks that replicate the same event-driven experience, so your scheduling product doesn't need different logic depending on which ATS a customer connects.

How long does it take to add ATS integration to an interview scheduling product?

With Knit's unified ATS API, an interview scheduling product can get a working integration connected to a given ATS in as little as a day for straightforward setups, since Knit handles authentication, data normalization, and webhook delivery for 30+ ATS platforms out of the box. The exact timeline depends on how deeply the integration needs to map into your scheduling logic — for example, two-way sync of interview feedback or custom field mapping adds development work on your side. Knit's documentation at developers.getknit.dev covers the unified data models and read/write endpoints needed to plan that scope.

Use Cases
-
Jul 1, 2026

How Candidate Screening Tools Can Build 30+ ATS Integrations in Two Days

If you want to unlock 30+ ATS integrations with a single API key, check out Knit API

With the rise of data-driven recruitment, it is imperative for each recruitment tool, including candidate sourcing and screening tools, to integrate with Applicant Tracking Systems(ATS) for enabling centralized data management for end users.

However, there are hundreds of ATS applications available in the market today. To integrate with each one of these applications with different ATS APIs is next to impossible.

That is why more and more recruitment tools are looking for a better (and faster) way to scale their ATS integrations. Unified ATS APIs are one such cost-effective solution that can cut down your integration building and maintenance time by 80%.

Before moving on to how companies can leverage unified ATS API to streamline candidate sourcing and screening, let's look at the workflow and how ATS API helps.

TABLE OF CONTENTS

•        Candidate sourcing and screening workflow

•        How ATS API helps streamline candidate sourcing andscreening

•        Addressing challenges of ATS API integration withUnified API

•        Other benefits of using a Unified ATS API

•        How to improve your screening workflow with Knitunified ATS API

•        FAQs

Candidate sourcing and screening workflow

Here’s a quick snapshot of the candidate sourcing and screening workflow: 

1) Job posting/ data entry from job boards

Posting job requirements/ details about open positions to create widespread outreach about the roles you are hiring for. 

2) Candidate sourcing from different platforms/ referrals

Collecting and fetching candidate profiles/ resumes from different platforms—job sites, social media, referrals—to create a pool of potential candidates for the open positions.

3) Resume parsing 

Taking out all relevant data—skills, relevant experience, expected salary, etc. —from a candidate’s resume and updating it based on the company’s requirement in a specific format.

4) Profile screening

Eliminating profiles which are not relevant for the role by mapping profiles to the job requirements.  

5) Background checks 

Conducting a preliminary check to ensure there are no immediate red flags. 

6) Assessment, testing, interviews

Setting up and administering assessments, setting up interviews to ensure role suitability and collating evaluation for final decision making. 

7) Selection 

Sharing feedback and evaluation, communicating decisions to the candidates and continuing the process in case the position doesn’t close. 

How ATS API helps streamline candidate sourcing and screening

Here are some of the top use cases of how ATS API can help streamline candidate sourcing and screening.

Centralized data management and communication

All candidate details from all job boards and portals can be automatically collected and stored at one centralized place for communication and processing and future leverage. 

Automated profile import

ATS APIs ensure real time, automated candidate profile import, reducing manual data entry errors and risk of duplication. 

Customize screening workflows 

ATS APIs can help automate screening workflows by automating resume parsing and screening as well as ensuring that once a step like background checks is complete, assessments and then interview set up are triggered automatically. 

Automated candidate updates within the ATS in real time

ATS APIs facilitate real time data sync and event-based triggers between different applications to ensure that all candidate information available with the company is always up to date and all application updates are captured ASAP.

Read:How to Automate Recruitment Workflows with ATS APIs and Hire Smarter

 

Candidate engagement data, insights and patterns using ATS data

ATS APIs help analyze and draw insights from ATS engagement data — like application rate, response to job postings, interview scheduling — to finetune future screening.

Integrations with assessment, interview scheduling and onboarding applications

ATS API can further integrate with other assessment, interview scheduling and onboarding applications enabling faster movement of candidates across different  recruitment stages. 

Personalized outreach based on historical ATS data

Undoubtedly, using ATS API integration can effectively streamline the candidate sourcing and screening process by automating several parts of the way. However, there are several roadblocks to integrating ATS APIs at scale, which is why many companies hold off on building this out themselves.

In the next section, we'll look at how a unified ATS API solves these common roadblocks for SaaS products looking to scale their ATS integration strategy.

Undoubtedly, using ATS API integration can effectively streamline the candidate sourcing and screening process by automating several parts of the way. However, there are several roadblocks to integrating ATS APIs at scale because of which companies refrain from leveraging the benefits that come along. Try our ROI calculator to see how much building integrations in-house can he.

In the next section we will discuss how to solve the common challenges for SaaS products trying to scale and accelerate their ATS integration strategy.

Addressing challenges of ATS API integration with Unified API

Let's discuss how the roadblocks can be removed with unified ATS API: just one API for all ATS integrations. Learn more about unified APIs here

Challenge 1: Loss of data during data transformation 

When data is being exchanged between different ATS applications and your system, it needs to be normalized and transformed. Since the same details from different applications can have different fields and nuances, chances are if not normalized well, you will end up losing critical data which may not be mapped to specific fields between systems. 

This will hamper centralized data storage, initiate duplication and require manual mapping not to mention screening workflow disruption. At the same time, normalizing each data field from each different API requires developers to understand the nuances of each API. This is a time and resource intensive process and can take months of developer time.

How unified ATS API solves this: One data model to prevent data loss

Unified APIs like Knit help companies normalize different ATS data by mapping different data schemas from different applications into a single, unified data model for all ATS APIs. Data normalization takes place in real time and is almost 10X faster, enabling companies to save tech bandwidth and skip the complex processes that might lead to data loss due to poor mapping.

Bonus: Knit also offers an custom data fields for data that is not included in the unified model, but you may need for your specific use case. It also allows you to request data directly from the source app via its Passthrough Request feature. Learn more

Challenge 2: Delayed recruitment due to inability of real-time sync and bulk transfers

Second, some ATS API integration has a polling infrastructure which requires recruiters to manually request candidate data from time to time. This lack of automated data updation in real time can lead to delayed sourcing and screening of applicants, delaying the entire recruitment process. This can negatively impact the efficiency that is expected from ATS integration. 

Furthermore, Most ATS platforms receive 1000s of applications in a matter of a few minutes. The data load for transfer can be exceptionally high at times, especially when a new role is posted or there is any update.

As your number of integrated platforms increases, managing such bulk data transfers efficiently as well as eliminating delays becomes a huge challenge for engineering teams with limited bandwidth

How unified ATS API solves this: Sync data in real-time irrespective of data load/ volume

Knit as a unified ATS API ensures that you don’t lose out on even one candidate application or be delayed in receiving them. To achieve this, Knit works on a  webhooks based system with event-based triggers. As soon as an event happens, data syncs automatically via webhooks. 

Read: How webhooks work and how to register one?

Knit manages all the heavy lifting of polling data from ATS apps, dealing with different API calls, rate limits, formats etc. It automatically retrieves new applications from all connected ATS platforms, eliminating the need to make API calls or manual data syncs for candidate sourcing and screening. 

At the same time, Knit comes with retry and resiliency guarantees to ensure that no application is missed irrespective of the data load. Thus, handling data at scale. 

This ensures that recruiters get access to all candidate data in real time to fill positions faster with automated alerts as and when new applications are retrieved for screening. 

Challenge 3: Compliance and candidate privacy concerns

Since the ATS and other connected platforms have access to sensitive data, protecting candidate data from attacks, ensuring constant monitoring and right permission/ access is crucial yet challenging to put in practice.

How unified ATS API solves this: Secure candidate data effectively

Knit unified ATS API enables companies to effectively secure the sensitive candidate data they have access to in multiple ways. 

  • First, all data is doubly encrypted, both at rest and in transit. At the same time, all PII and user credentials are encrypted with an additional layer of application security. 
  • Second, having an events-driven webhooks architecture, Knit is the only unified ATS API which does not store any copy of the customer data in its server. Thus, reducing changes of data misuse further. 
  • Third, Knit is GDPR, SOC II and ISO27001 compliant to make sure all industry security standards are met. So, there’s one less thing for you to worry about.

Challenge 4: Long deployment duration and resource intensive maintenance

Finally, ATS API integration can be a long drawn process. It can take 2 weeks to 3 months and thousands of dollars to build integration with  just a single ATS provider. 

With different end points, data models, nuances, documentation etc. ATS API integration can be a long deployment project, diverting away engineering resources from core functions.

It’s not uncommon for companies to lose valuable deals due to this delay in setting up customer requested ATS integrations. 

Furthermore, the maintenance, documentation, monitoring as well as error handling further drains engineering bandwidth and resources. This can be a major deterrent for smaller companies that need to scale their integration stack to remain competitive.  

How unified ATS API solves this: Instant scalability

A unified ATS API like Knit allows you to connect with 30+ ATS platforms in one go helping you expand your integration stack overnight. 

All you have to do is embed Knit’s UI component into your frontend once. All heavy lifting of auth, endpoints, credential management, verification, token generations, etc. is then taken care of by Knit. 

Other benefits of using a Unified ATS API

Fortunately, companies can easily address the challenges mentioned above and streamline their candidate sourcing and screening process with a unified ATS API. Here are some of the top benefits you get with a unified ATS API:

Effective monitoring and logging for all APIs

Once you have scaled your integrations, it can be difficult to monitor the health of each integration and stay on top of user data and security threats. Unified API like Knit provides a detailed Logs and Issues dashboard i.e. a one page overview of all your integrations, webhooks and API calls. With smart filtering options for Logs and Issues,  Knit helps you get a quick glimpse of the API's status, extract historical data and take necessary action as needed.

API logs and issues

Extensive range of Read and Write APIs

Along with Read APIs, Knit also provides a range of Write APIs for ATS integrations so that you can not only fetch data from the apps, you can also update the changes — updating candidate’s stage, rejecting an application etc. - directly into the ATS application's system. See docs

Save countless developer hours and cost

For an average SaaS company, each new integration can take anywhere from six weeks to three months to build and deploy, with ongoing maintenance typically requiring a minimum of 10 developer hours per week per integration. Multiply that across 30+ ATS platforms - or 200, if your customer base needs it - and the in-house build-and-maintain workload adds up quickly, both in direct engineering time and in opportunity cost.

A unified ATS API like Knit absorbs most of this cost by maintaining the connections to its full catalog of ATS platforms centrally - you integrate once and get access to all of them, with Knit handling ongoing maintenance as each ATS updates its own API.

In short, an API aggregator is non negotiable if you want to scale your ATS integration stack without compromising valuable in-house engineering bandwidth.

How to improve your screening workflow with Knit unified ATS API

Get Job details from different job boards

Fetch job IDs from your users Applicant Tracking Systems (ATS) using Knit’s job data models along with other necessary job information such as departments, offices, hiring managers etc.

Get applicant details

Use the job ID to fetch all and individual applicant details associated with the job posting. This would give you information about the candidate such as contact details, experience, links, location, experience, current stage etc. These data fields will help you screen the candidates in one easy step.

Complete screening activities

Next is where you take care of screening activities on your end after getting required candidate and job details. Based on your use case, you parse CVs, conduct background checks and/or administer assessment procedures.

Push back results into the ATS

Once you have your results, you can progmmatically push data back directly within the ATS system of your users using Knit’s write APIs to ensure a centralized, seamless user experience. For example, based on screening results, you can —

  • Update candidate stage using <update stage> API See docs
  • Match scores for CV parsing or add a quick tag to your applicant See docs
  • Reject an application See docs and much more

Thus, Knit ensures that your entire screening process is smooth and requires minimum intervention.

Get started with Unified ATS API

If you are looking to quickly connect with 30+ ATS applications — including Greenhouse, Lever, Jobvite and more — get your Knit API keys today.

You may talk to our one of our experts to help you build a customized solution for your ATS API use case. 

The best part? You can also make a specific ATS integration request. We would be happy to prioritize your request. 

Related reading: How to Automate Recruitment Workflows with ATS APIs and Hire Smarter · How Interview Scheduling Companies Can Scale ATS Integrations 10X Faster · ATS Integration Guide

FAQs

What is an ATS API?

An ATS API is the interface that an Applicant Tracking System exposes so other software can read and write recruiting data — things like job postings, candidate profiles, resumes, and application status. Knit provides a unified ATS API that sits on top of 30+ individual ATS APIs, so a candidate screening tool can pull job and applicant data through one consistent endpoint instead of learning each platform's API separately. Most ATS APIs use REST endpoints with OAuth-based authentication, and data models vary significantly between providers — a Greenhouse candidate object, for example, doesn't look like a Workday one, which is exactly the normalization problem a unified API is built to solve.

What are ATS integrations?

ATS integrations are connections that let an Applicant Tracking System share candidate, job, and application data with other tools — sourcing platforms, assessment providers, interview schedulers, HRIS systems, and screening software. For a candidate screening tool, this typically means pulling new applicant profiles and job requisitions from the ATS, and pushing screening results (stage updates, tags, rejections) back. Knit's unified ATS API handles this two-way sync for 30+ ATS platforms through a single integration, including authentication, data normalization, and real-time updates via webhooks, so screening tools don't have to build and maintain a separate connection for every ATS their customers use.

What is the difference between an ATS and a CRM?

An ATS (Applicant Tracking System) manages the hiring pipeline for open roles — job postings, applications, resume screening, interview stages, and offers. A CRM (Candidate Relationship Management or, in sales contexts, Customer Relationship Management) is built for ongoing relationship management, such as nurturing a talent pool of passive candidates before a role even opens, or managing sales leads. In recruiting, some platforms blend both: an ATS handles active requisitions while a recruiting CRM manages the broader talent pipeline. For a candidate screening tool, the ATS is usually the primary data source, and Knit's ATS API connects to 30+ of these platforms to retrieve that data in one normalized format.

What ATS platforms are most commonly used?

Widely used ATS platforms span from enterprise systems like Workday, Oracle Taleo, SAP SuccessFactors, and iCIMS to recruiting-focused tools like Greenhouse, Lever, JazzHR, and Workable, plus regional platforms like BambooHR, Zoho Recruit, and JobAdder. Which ATS a company uses often depends on its size, industry, and region — there's no single dominant platform across all markets. This fragmentation is the core challenge for candidate screening tools that need to support multiple customers, each potentially on a different ATS. Knit's unified ATS API currently covers 30+ of these platforms — including Greenhouse, Lever, Workday, BambooHR, and Jobvite — through one integration.

How does an ATS API improve candidate screening accuracy?

Knit's ATS API improves screening accuracy by replacing manual data entry with automated, real-time sync — candidate profiles, resumes, and job requirements flow directly from the ATS into the screening tool in a consistent format, removing the copy-paste errors and missed updates that come with manual handoffs. Because Knit normalizes data from every connected ATS into one schema, a screening tool's matching logic works against the same fields regardless of which ATS a customer uses, rather than handling 30+ different data structures. Screening results — stage updates, tags, scores — can then be written straight back into the ATS via Knit's write APIs, keeping recruiters' view of candidates current.

Is candidate data secure when synced through an ATS API?

Knit encrypts candidate data both at rest (AES-256) and in transit (TLS 1.3), with an additional layer of application-level encryption for PII specifically. Knit is SOC 2, GDPR, and ISO 27001 compliant, and operates on a pass-through architecture — it doesn't store a persistent copy of customer data on its servers, syncing instead via a webhook-based model. For candidate screening tools, this matters because applicant data (resumes, contact details, background check results) is sensitive personal data under regulations like GDPR, so the security posture of any integration layer between your tool and your customers' ATS platforms is a real due-diligence question.

Can a screening tool connect to multiple ATS platforms with one integration?

Yes — this is the core use case for a unified ATS API. Instead of building and maintaining 30 separate integrations, one per ATS your customers use, a candidate screening tool can embed Knit's unified API once and get access to 30+ ATS platforms — including Greenhouse, Lever, Workday, BambooHR, and Jobvite — through a single set of endpoints and one data model. Knit handles the authentication flow, credential storage, and data normalization differences for each platform, and new ATS platforms added to Knit's catalog become available to your tool automatically, without additional engineering work on your side.

Does Knit support real-time candidate updates from the ATS?

Yes. Knit runs on a 100% event-driven, webhook-based architecture, so when a new candidate applies or an application status changes in a connected ATS, your screening tool receives that update in near real time without polling. This matters for screening workflows because delays in picking up new applicants directly translate to slower time-to-screen. For ATS platforms that don't natively support outbound webhooks, Knit provides virtual webhooks — it handles the underlying polling and delivers the same event-driven experience, so your integration code doesn't need to know which ATS platforms support webhooks natively and which don't.

How do I get started with Knit's ATS API?

You can sign up for a Knit account and get an API key for free to start testing against Knit's unified ATS API, which covers 30+ ATS platforms through one set of endpoints. Knit's documentation at developers.getknit.dev covers authentication, the unified data models for jobs, candidates, and applications, and both read and write endpoints — so you can fetch candidate and job data and push screening results back into the ATS. If you need a specific ATS that isn't yet in Knit's catalog, you can request it, and the Knit team can also walk through your specific screening workflow on a call.

Use Cases
-
Jun 13, 2026

How Can Marketing Automation Tools Build More CRM Integrations in 80% Less Time

Marketing automation tools are like superchargers for marketers, propelling their campaigns to new heights. Yet, there's a secret ingredient that can take this power to the next level: the right audience data.

What better than an organization's CRM to power it?

The good news is that many marketing automation tools are embracing CRM API integrations to drive greater adoption and results. However, with the increasing number of CRM systems in play, building and managing CRM integrations is becoming a huge challenge.

Fortunately, the rise of unified CRM APIs is bridging this gap, making CRM integration seamless for marketing automation tools. Before looking at the specific ways marketing automation tools can put CRM data to work, here's a quick look at what CRM API integration actually means.

In this article

  • What is CRM API integration?
  • 10 ways marketing automation tools can maximize results with CRM API integration
  • Real-world struggles of CRM integration in marketing automation
  • How a unified CRM API ensures maximum integration ROI
  • FAQs

What is CRM API integration?

A CRM API is a set of endpoints that a Customer Relationship Management platform exposes so external applications can read and write its data — contacts, deals, companies, activities, and custom fields — programmatically, instead of through the CRM's own interface.

CRM API integration is the process of connecting an external application, such as a marketing automation tool, to one or more CRM systems through these APIs so that data and triggers can flow between them automatically. For a marketing automation platform, that usually means pulling contact and deal data from the CRM to power segmentation and personalization, and pushing engagement data — email opens, campaign responses, lead scores — back into the CRM so sales has an up-to-date view of each lead.

Because every CRM structures this data differently, building and maintaining direct integrations with multiple CRMs is a significant engineering investment. A unified CRM API like Knit addresses this by normalizing these differences into a single data model and a single integration covering Knit's full catalog of CRM applications — the approach this post explores in more detail below.

10 ways marketing automation tools can maximize results with CRM API integration

Here's a quick snapshot of how CRM APIs can bring out the best of marketing automation tools, making the most of the audience data for customers.

1. Customer segmentation and content personalization

Personalized messaging consistently outperforms generic, one-size-fits-all campaigns, and CRM integration with marketing automation tools gives users the segmentation data needed to build that personalization at scale.

Users can segment customers based on their likelihood of conversion and personalize content for each campaign. Slicing and dicing customer data — including demographics, preferences, and interactions — can further help in customizing content with higher chances of consumption and engagement. Customer segmentation powered by CRM API data can help create content that customers resonate with.

2. Enhanced lead nurturing for higher conversion

CRM integration provides the marketing automation tool with every tiny detail of every lead to adjust and customize communication and campaigns that facilitate better nurturing. At the same time, real-time updates from the CRM can help with timely marketing follow-ups for better chances of closure.

3. Churn prediction and customer retention

As customer data from the CRM and marketing automation tools is synced in real time, early signs of churn — like reduced engagement or changed consumer behavior — can be captured.

Real-time alerts can also be automatically updated in the CRM for sales action. At the same time, marketing automation tools can leverage CRM data to predict which customers are more likely to churn and create specific campaigns to facilitate retention.

4. Upsell and cross-sell campaigns

Users can leverage customer preferences from CRM data to design campaigns with specific recommendations, and even identify opportunities for upselling and cross-selling.

For instance, customers with high engagement might be interested in upgrading their relationships, and marketing automation tools can use this information together with CRM details on historical trends to propose the best options for upselling.

Similarly, when details of customer transactions are captured in the CRM, they can be used to identify opportunities for complementary selling with dedicated campaigns — leading to a clear increase in revenue.

5. Automated campaign workflow to reduce operational overheads

In most marketing campaigns, as the status of a lead changes, a new set of communication and campaigns takes over. With CRM API integration, marketing automation tools can automate the campaign workflow in real time as soon as there's a status change in the CRM — ensuring greater engagement with the lead right when their status changes.

6. Event-triggered campaigns for faster TAT

Marketing communication after events is an important part of the sales process. With CRM integration in marketing automation tools, automated post-event communication or campaigns can be triggered based on a lead's status for attendance and participation in the event.

This facilitates a faster turnaround time for engaging customers right after the event, without delays from manual follow-ups.

7. Lead source automation

CRM integration can help automatically map the source of a lead from different marketing activities — webinars, social media posts, newsletters, and more — in your CRM, helping you understand where your target audience engagement is highest.

At the same time, it can facilitate tagging leads to the right teams or individuals for follow-ups and closures. With automated lead source tracking, users can track the ROI of different marketing activities.

8. Tailored social media campaigns and multi-channel marketing

With CRM API integration, users can access customer preference insights to define their social media campaigns and audience. They can also customize scheduling based on a customer's geographic location from the CRM, to maximize efficiency.

9. Data enrichment for enhancing lead profiles

With bi-directional sync, CRM API integration with marketing automation tools can enhance lead profiles. As more lead data comes in across both platforms, users get a richer, more comprehensive view of their customers — updated in real time across the CRM and the marketing tool.

10. Customer reporting and analytics for decision-making

Data insights from a CRM integrated with marketing automation tools can help teams build reports that analyze and track customer behavior.

This helps teams understand consumer trends, identify top-performing marketing channels, improve customer segmentation, and refine the marketing strategy for stronger engagement overall.

Put together, these ten capabilities support marketing automation across the full customer lifecycle — from a first touch captured in the CRM, through segmentation, nurturing, and lifecycle campaigns, to churn prevention and retention. The more of this data flows automatically between the CRM and the marketing automation tool, the less manual work is needed to keep campaigns aligned with where each customer actually is in their journey.

Real-world struggles of CRM integration in marketing automation

While the benefits of CRM API integration with marketing automation tools are many, there are also roadblocks along the way. Since each CRM API is different, and your customers might be using different CRM systems, building and maintaining a plethora of CRM integrations can be challenging due to:

Data transformation inconsistency and campaign blunders

When data is exchanged between two applications, it needs to be transformed so it's normalized, with data fields compatible across both. Since each CRM API has its own data models, syntax, and nuances, inconsistency during data transfer is a big challenge.

If data isn't correctly normalized or transformed, it can get corrupted or lost, leading to gaps in the integration. Inconsistency in data transformation and sync can also lead to sending incorrect campaigns and triggers to customers, compromising their experience.

Delays in campaigns

While inconsistent data transformation is one challenge, a related concern is delays or limited real-time sync capabilities.

If data sync between the CRM and the marketing automation tool isn't happening in real time across all CRMs being used, communication with end customers can be delayed — leading to loss of interest and lower engagement.

Customer data privacy and security concerns

A CRM is a hub of sensitive customer data, often governed by GDPR and other compliance regulations. Integration and data transfer are always vulnerable to security threats like man-in-the-middle attacks and DDoS, which can compromise privacy and create monetary and reputational risk.

Scalability

With the increasing number of CRM applications, scalability becomes a major integration challenge. Building a direct integration with a single CRM's API is itself a meaningful engineering investment — handling that CRM's authentication, data model, rate limits, and edge cases. The challenge is that this effort doesn't scale linearly: supporting a second or third CRM means repeating much of that work against a completely different API, which either means compromising on the CRM integrations you can offer or pulling engineering bandwidth away from your core product.

Moreover, as the number of integrated CRM systems grows, the volume of API calls and data exchange grows with it — leading to delays in data sync and real-time updates as load increases. Scalability inevitably becomes a challenge.

Integration management

Managing and maintaining integrations is a challenge in itself. When end customers are using integrations, issues that require immediate action are likely to come up.

At the same time, maintaining detailed logs and manually tracking API calls and syncs is tedious — and any lag here can affect the entire integration system.

Vendor management

Finally, when integrating with different CRM APIs, managing the CRM vendors themselves is a challenge. Understanding API updates, managing different endpoints, ensuring zero downtime, handling errors, and coordinating with each vendor's response team is highly operational and time-consuming.

How a unified CRM API ensures maximum integration ROI

Don't let the challenges above stop you from realizing the benefits described earlier in this post. A unified CRM API like Knit's can help you access those benefits without the operational overhead.

If you want to understand the technical details of how a unified API works, this will help.

Integrate in minutes with multiple CRM APIs

A unified CRM API makes it possible to integrate with marketing automation tools within minutes rather than the weeks or months that direct integrations typically take.

At the same time, it enables connecting with multiple CRM applications in one go. With Knit, marketing automation tools simply embed Knit's UI component in their frontend to get access to Knit's full catalog of CRM applications.

Build CRM-to-marketing-automation workflows without code

Beyond the unified API itself, Knit's Integrations Agent lets you build CRM-to-marketing-automation workflows by describing them in plain English — no integration code required. It supports two kinds of workflows: data sync (keeping records aligned between a CRM and a marketing automation tool) and orchestration (multi-step automations triggered by an event).

In a marketing context, this could look like:

  • "When a lead's stage changes to 'Customer' in [CRM], add them to the onboarding email sequence in [marketing automation tool]."
  • "If a deal is marked 'Closed Lost' in [CRM], remove the contact from active nurture campaigns and tag them for a win-back sequence in 90 days."
  • "Notify our marketing team on Slack whenever a high-value lead's engagement score crosses a threshold in [CRM]."

These workflows run on the same normalized CRM data model described throughout this post, so they work the same way across Knit's full catalog of CRM applications — for marketing teams who'd rather configure an automation than wait on an integration backlog.

Consistent data transfer guaranteed with normalized data models

A unified CRM API can address data transformation and normalization challenges easily. With Knit, different data models, nuances, and schemas across CRM applications are mapped into a single, unified data model — enabling data normalization in real time.

At the same time, Knit lets you map custom data fields to access non-standard data.

Real-time campaigns and data exchange

The right unified CRM API can help you sync data in real time, without your team having to build and maintain polling logic for every CRM.

Knit syncs data via event-based webhooks rather than scheduled polling — when a record changes in a CRM, Knit detects the update and pushes it to the marketing automation tool in real time, already normalized into a single data model. For CRM platforms that don't natively support webhooks, Knit provides virtual webhooks that replicate this real-time behavior, so the marketing automation tool doesn't need to know which CRMs support webhooks natively and which don't — or build any polling, rate-limit handling, or normalization logic itself.

This ensures that as soon as a customer's details are updated in the CRM, the associated campaigns or triggers are automatically set in motion.

Never miss a data update

There can be multiple CRM updates within a few minutes, and as data load increases, a unified CRM API helps ensure guaranteed data sync in real time. With Knit, built-in retry mechanisms add resilience so marketing automation tools don't miss CRM updates even at scale — since every lead matters.

You can also configure sync frequency to suit your needs.

Scale as you go

With a unified CRM API, you only need to integrate once. Once you embed the UI component, every time a new CRM application is added to Knit's catalog, you can access it automatically — with sync capabilities — without spending any engineering capacity from your team.

This lets you scale in the most resource-light and efficient way, without diverting engineering productivity from your core product. From a data sync perspective too, a unified CRM API ensures guaranteed scalability, regardless of data load.

Security at scale

One of the biggest concerns around security and vulnerability to cyberattacks can be addressed with a unified CRM API. Here's how Knit approaches it:

  • Knit encrypts data with AES-256 at rest and TLS 1.3 in transit, with an additional layer of application-level encryption for PII and credentials.
  • Knit is the only unified API in the market that doesn't store a copy of your end users' data — it operates as a pass-through proxy, processing data on its servers and sending it directly to your application via webhooks. Protecting end-user data this way also helps you build customer confidence during sales conversations.
  • Knit supports OAuth, API key, and username/password-based authentication, so whatever authorization protocol a given CRM uses, Knit can integrate with it.
  • Knit is also SOC2, GDPR, and ISO27001 certified, with continuously monitored infrastructure and 24/7 support.

Catch potential errors early on

Finally, integration management — making sure all your CRM APIs are healthy — is well taken care of by a unified CRM API.

  • A unified CRM API like Knit provides access to a detailed Logs, Issues, Integrated Accounts, and Syncs page for all integrations, so you can monitor and track them along with possible root causes and fixes. This lets your CX team resolve customer issues immediately without involving the tech team.
  • It also lets you track every API call and data sync, as well as the status of registered webhooks, for real-time visibility into errors — helping you stay on top of your data and catch issues before they affect customers.

Constant monitoring and on-demand customer support

Finally, when you're using a unified API, you don't have to deal with multiple vendors, endpoints, and so on — the heavy lifting is handled by the unified CRM API provider.

With Knit, you get access to 24/7 support to securely manage your integrations, along with detailed documentation, guides, and product walkthroughs for your developers and end users.

FAQs

What is CRM API integration?

CRM API integration is the process of connecting an external application — such as a marketing automation tool — to one or more CRM systems through their APIs, so that records like contacts, deals, and activities can flow between the two systems automatically. Knit provides a unified CRM API that normalizes this connection across its full catalog of CRM platforms, so a marketing automation tool integrates once instead of building a separate connection for each CRM. In practice, this means pulling CRM data into the marketing tool for segmentation and personalization, and pushing engagement data back into the CRM so sales has an up-to-date view of each lead.

What is a CRM API?

A CRM API is a set of endpoints that a Customer Relationship Management platform exposes so other applications can read and write its data — contacts, companies, deals, activities, and custom fields — without going through the CRM's own interface. Knit's unified CRM API sits on top of these individual CRM APIs and normalizes their differences into a single data model and a single integration. Most CRM APIs support core objects like contacts and deals, use OAuth, API key, or username/password authentication, and increasingly offer webhooks for real-time updates — though support varies significantly by provider.

What's an example of CRM API integration in marketing automation?

A common example is lead-stage syncing: when a lead's status changes in the CRM — say from "Qualified" to "Customer" — a CRM API integration can automatically move that contact into a different marketing automation segment, stop one email sequence, and start another, such as an onboarding campaign. With Knit's unified CRM API, this kind of integration is built once against a single normalized data model and works the same way across every CRM in Knit's catalog, rather than being rebuilt for each CRM a marketing automation platform's customers might use. Knit's Integrations Agent can also build this kind of workflow directly from a plain-English description, without integration code.

Does Knit support integrating with multiple CRM platforms through one API?

Yes — Knit's unified CRM API connects to its full catalog of CRM platforms through a single integration, normalizing each provider's data model (contacts, companies, deals, activities) into one consistent format. Instead of building and maintaining separate integrations for each CRM your customers use — each with its own authentication, data structure, and rate limits — you integrate once against Knit's API and gain access to every supported CRM, with new platforms added over time. Custom fields are preserved for CRM-specific data that doesn't fit the standard model. This is particularly useful for marketing automation, sales engagement, and martech platforms whose customers each use a different CRM.

How does a unified CRM API keep marketing automation tools in sync with CRM data in real time?

Knit keeps CRM and marketing automation data in sync through event-based webhooks rather than scheduled polling — when a record changes in the CRM, Knit detects the update and pushes it to the marketing automation tool in real time, already normalized into a single data model. For CRM platforms that don't natively support webhooks, Knit provides virtual webhooks that replicate this real-time behavior, so the marketing automation tool doesn't need to build or maintain any polling logic itself. This is what allows a status change in the CRM — say, a lead becoming a customer — to trigger a campaign change in the marketing tool within moments rather than on the next sync cycle.

Is Knit free to get started with for CRM integrations?

Yes — getting started with Knit's unified CRM API is free. You can sign up, get API keys, and start testing integrations with CRM platforms in Knit's catalog without any upfront cost. This lets a marketing automation team or product team validate that Knit's data model and sync behavior fit their use case before committing to a paid plan for production usage at scale. For teams evaluating whether to build direct CRM integrations or use a unified API, this makes it straightforward to prototype a CRM-to-marketing-automation workflow — including ones built through Knit's Integrations Agent — before any commercial discussion.

How secure is customer data when using a unified CRM API like Knit?

Knit is the only unified API in the market that doesn't store a copy of your end users' CRM data — it operates as a pass-through proxy, processing data on its servers and sending it directly to your application via webhooks. All data Knit processes is encrypted with AES-256 at rest and TLS 1.3 in transit, with an additional layer of application-level encryption for PII and credentials. Knit is also SOC2, GDPR, and ISO27001 certified, with continuously monitored infrastructure and 24/7 support. For marketing automation platforms handling customer contact and engagement data, this means that data isn't sitting in a second database you also have to secure.

Can marketing teams build CRM workflow automations without writing integration code?

Yes — Knit's Integrations Agent lets you build CRM-to-marketing-automation workflows by describing them in plain English; it connects the relevant tools, configures the workflow, and makes it live without requiring integration code. It supports both data-sync workflows (for example, keeping contact records aligned between a CRM and a marketing automation tool) and orchestration workflows (for example, when a lead's stage changes to "Customer" in the CRM, automatically add them to an onboarding sequence and notify the marketing team on Slack). The Agent runs on the same normalized CRM data model as Knit's Unified API, so it works consistently across every CRM in Knit's catalog.

Get started with a unified CRM API

If you're looking to integrate multiple CRM APIs with your product, get your Knit API keys and see the unified API in action — getting started with Knit is completely free.

You can also talk to one of our experts to see how Knit can be customized to solve your specific integration challenges.

Developers
-
Aug 25, 2026

API Pagination Best Practices: Cursor, Offset & Keyset Explained (2026)

If you are looking to unlock 40+ HRIS and ATS integrations with a single API key, check out Knit API. If not, keep reading

Note: This is our master guide on API Pagination where we solve common developer queries in detail with common examples and code snippets. Feel free to visit the smaller guides linked later in this article on topics such as page size, error handling, pagination stability, caching strategies and more.

In the modern application development and data integration world, APIs (Application Programming Interfaces) serve as the backbone for connecting various systems and enabling seamless data exchange. 

However, when working with APIs that return large datasets, efficient data retrieval becomes crucial for optimal performance and a smooth user experience. This is where API pagination comes into play.

In this article, we will discuss the best practices for implementing API pagination, ensuring that developers can handle large datasets effectively and deliver data in a manageable and efficient manner. (We have linked bite sized how-to guides on all API pagination FAQs you can think of in this article. Keep reading!)

But before we jump into the best practices, let’s go over what is API pagination and the standard pagination techniques used in the present day.

What is API Pagination

API pagination is the technique of splitting a large API response into smaller, sequential chunks - pages - so a client can request and process data incrementally instead of in one oversized response. Each page returns a bounded set of records plus metadata a client uses to request the next one.

Each page contains a limited number of records or entries. The API consumer or client can then request subsequent pages to retrieve additional data until the entire dataset has been retrieved.
Pagination typically involves the use of parameters, such as offset and limit or cursor-based tokens, to control the size and position of the data subset to be retrieved. 

These parameters determine the starting point and the number of records to include on each page.

Advantages of API Pagination

By implementing API pagination, developers as well as consumers can have the following advantages - 

1. Improved Performance

Retrieving and processing smaller chunks of data reduces the response time and improves the overall efficiency of API calls. It minimizes the load on servers, network bandwidth, and client-side applications.

2. Reduced Resource Usage 

Since pagination retrieves data in smaller subsets, it reduces the amount of memory, processing power, and bandwidth required on both the server and the client side. This efficient resource utilization can lead to cost savings and improved scalability.

3. Enhanced User Experience

Paginated APIs provide a better user experience by delivering data in manageable portions. Users can navigate through the data incrementally, accessing specific pages or requesting more data as needed. This approach enables smoother interactions, faster rendering of results, and easier navigation through large datasets.

4. Efficient Data Transfer

With pagination, only the necessary data is transferred over the network, reducing the amount of data transferred and improving network efficiency.

5. Scalability and Flexibility

Pagination allows APIs to handle large datasets without overwhelming system resources. It provides a scalable solution for working with ever-growing data volumes and enables efficient data retrieval across different use cases and devices.

6. Error Handling

With pagination, error handling becomes more manageable. If an error occurs during data retrieval, only the affected page needs to be reloaded or processed, rather than reloading the entire dataset. This helps isolate and address errors more effectively, ensuring smoother error recovery and system stability.

Common examples of paginated APIs 

Some of the most common, practical examples of API pagination are: 

  • Platforms like Twitter, Facebook, and Instagram often employ paginated APIs to retrieve posts, comments, or user profiles. 
  • Online marketplaces such as Amazon, eBay, and Etsy utilize paginated APIs to retrieve product listings, search results, or user reviews.
  • Banking or payment service providers often provide paginated APIs for retrieving transaction history, account statements, or customer data.
  • Job search platforms like Indeed or LinkedIn Jobs offer paginated APIs for retrieving job listings based on various criteria such as location, industry, or keywords.

API pagination techniques

There are several common API pagination techniques that developers employ to implement efficient data retrieval. Here are a few useful ones you must know:

  1. Offset and limit pagination - Offset/limit pagination fetches records using two parameters: offset (how many records to skip) and limit (how many to return) - for example, GET /records?offset=40&limit=20 returns records 41–60. It's the simplest method to implement because the database does the work with a single OFFSET/LIMIT clause, and a client can jump directly to any page by calculating its offset. The trade-off is the one described in the stability section above: because position is calculated fresh on every request, a record inserted or deleted earlier in the set shifts every subsequent page, and at high offsets the database still has to scan and discard all the skipped rows, which gets slower as the dataset grows.
  2. Cursor-based pagination - Cursor-based pagination replaces the numeric offset with an opaque token the server generates and the client passes back unchanged - for example, GET /records?cursor=eyJpZCI6MTIzfQ&limit=20. The server decodes the cursor to know exactly where the last page ended and fetches forward from there, so it never has to recalculate position from the start of the table. This is what makes it stable under concurrent writes and fast at any depth into a large dataset, at the cost of one real limitation: because the cursor only encodes "next" (and sometimes "previous"), a client can't jump straight to page 40 the way it can with offset/limit — pages have to be walked in sequence.
  3. Page-based pagination - Page-based pagination is offset/limit with a friendlier interface: the client passes a page number and a pageSize instead of raw offset math - GET /records?page=3&pageSize=20 — and the server converts that internally to the equivalent offset. It's the easiest method for a UI to expose directly (page number inputs, "jump to page" controls) and the easiest for API consumers to reason about. Underneath, though, it's still calculating position by count, so it inherits the same stability and performance limits as offset/limit at scale - the friendlier interface doesn't remove the underlying trade-off, it just hides it from the client.
  4. Time-based pagination - Time-based pagination uses a timestamp as the cursor instead of an ID or count - a request like GET /events?since=2026-08-20T00:00:00Z&limit=50 returns records after that point in time, and the response's last record's timestamp becomes the since value for the next request. It's the natural fit for chronological data: activity feeds, logs, webhook event streams, anything a consumer is polling incrementally. The limitation is equally natural: it only works cleanly when the sort order is time itself, and it needs a tie-breaking rule (a secondary sort key) for records that share the exact same timestamp, or two records created in the same millisecond can be skipped or duplicated across a page boundary.
  5. Keyset pagination - sometimes called seek pagination - moves the cursor using an indexed column's actual value rather than a position count. A request includes the last record's sort key (an ID or timestamp), and the query fetches the next batch with a WHERE key > last_seen_key condition instead of OFFSET. Because it never recalculates position from the start of the table, it stays fast at scale and doesn't produce duplicate or skipped rows when data changes mid-pagination - the same failure mode described in Block G below, which offset-based pagination is prone to.

Read: Common API Pagination Techniques to learn more about each technique

Method How It Works Best For Main Trade-off
Offset/limit Client specifies a starting index and count Small, static datasets Slow and unstable on large or frequently-changing data
Cursor-based Server returns an opaque pointer to the last record seen Large or real-time datasets Can't jump to an arbitrary page
Page-based Client specifies a page number and size Simple UIs, predictable datasets Same instability risk as offset under the hood
Keyset Client passes the last seen record's sort key High-throughput APIs needing consistency Requires a stable, indexed sort column
Time-based Client passes a timestamp cursor Event streams, logs, activity feeds Not suited to non-chronological data

Choose offset or page-based pagination for simplicity on small datasets; move to cursor or keyset pagination once dataset size or write frequency makes position-based paging unstable.

Best practices for API pagination

When implementing API pagination in Python, there are several best practices to follow. For example,  

1. Use a common naming convention for pagination parameters

Adopt a consistent naming convention for pagination parameters, such as "offset" and "limit" or "page" and "size." This makes it easier for API consumers to understand and use your pagination system.

2. Always include pagination metadata in API responses

Provide metadata in the API responses to convey additional information about the pagination. 

This can include the total number of records, the current page, the number of pages, and links to the next and previous pages. This metadata helps API consumers navigate through the paginated data more effectively.

For example, here’s how the response of a paginated API should look like -

Copy to clipboard
        
{
 "data": [
   {
     "id": 1,
     "title": "Post 1",
     "content": "Lorem ipsum dolor sit amet.",
     "category": "Technology"
   },
   {
     "id": 2,
     "title": "Post 2",
     "content": "Praesent fermentum orci in ipsum.",
     "category": "Sports"
   },
   {
     "id": 3,
     "title": "Post 3",
     "content": "Vestibulum ante ipsum primis in faucibus.",
     "category": "Fashion"
   }
 ],
 "pagination": {
   "total_records": 100,
   "current_page": 1,
   "total_pages": 10,
   "next_page": 2,
   "prev_page": null
 }
}
        
    

3. Determine an appropriate page size

Select an optimal page size that balances the amount of data returned per page. A common starting point is 20–50 records per page for user-facing APIs, and up to a few hundred for internal batch or sync jobs - with a hard server-side cap (100–1,000, depending on payload size) so a client can't request an unbounded page and degrade performance for other tenants

A smaller page size reduces the response payload and improves performance, while a larger page size reduces the number of requests required.

Determining an appropriate page size for a paginated API involves considering various factors, such as the nature of the data, performance considerations, and user experience. 

Here are some guidelines to help you determine the optimal page size.

Read: How to determine the appropriate page size for a paginated API 

4. Implement sorting and filtering options

Provide sorting and filtering parameters to allow API consumers to specify the order and subset of data they require. This enhances flexibility and enables users to retrieve targeted results efficiently. Here's an example of how you can implement sorting and filtering options in a paginated API using Python:

Copy to clipboard
        
# Dummy data
products = [
    {"id": 1, "name": "Product A", "price": 10.0, "category": "Electronics"},
    {"id": 2, "name": "Product B", "price": 20.0, "category": "Clothing"},
    {"id": 3, "name": "Product C", "price": 15.0, "category": "Electronics"},
    {"id": 4, "name": "Product D", "price": 5.0, "category": "Clothing"},
    # Add more products as needed
]


@app.route('/products', methods=['GET'])
def get_products():
    # Pagination parameters
    page = int(request.args.get('page', 1))
    per_page = int(request.args.get('per_page', 10))


    # Sorting options
    sort_by = request.args.get('sort_by', 'id')
    sort_order = request.args.get('sort_order', 'asc')


    # Filtering options
    category = request.args.get('category')
    min_price = float(request.args.get('min_price', 0))
    max_price = float(request.args.get('max_price', float('inf')))


    # Apply filters
    filtered_products = filter(lambda p: p['price'] >= min_price and p['price'] <= max_price, products)
    if category:
        filtered_products = filter(lambda p: p['category'] == category, filtered_products)


    # Apply sorting
    sorted_products = sorted(filtered_products, key=lambda p: p[sort_by], reverse=sort_order.lower() == 'desc')


    # Paginate the results
    start_index = (page - 1) * per_page
    end_index = start_index + per_page
    paginated_products = sorted_products[start_index:end_index]


    return jsonify(paginated_products)

        
    

5. Preserve pagination stability

Ensure that the pagination remains stable and consistent between requests. Newly added or deleted records should not affect the order or positioning of existing records during pagination. This ensures that users can navigate through the data without encountering unexpected changes. If a client is paginating with offset/limit and a record is deleted from an earlier page while they're still fetching, every subsequent page shifts by one position - the client either skips a record it never saw or receives a duplicate. Cursor and keyset pagination avoid this because the next page is anchored to a specific record's position in the sort order, not a numeric offset that shifts when the underlying data changes.

Read: 5 ways to preserve API pagination stability

6. Handle edge cases and error conditions

Account for edge cases such as reaching the end of the dataset, handling invalid or out-of-range page requests, and gracefully handling errors. 

Provide informative error messages and proper HTTP status codes to guide API consumers in handling pagination-related issues.

Read: 7 ways to handle common errors and invalid requests in API pagination

7. Consider caching strategies

Implement caching mechanisms to store paginated data or metadata that does not frequently change. For a page-level cache, a practical pattern is caching each page's response for 30–60 seconds keyed on the full parameter set (page, size, filters, sort) - long enough to absorb repeated requests from pagination UI re-renders, short enough that data staleness stays negligible for most use cases. Time-sensitive or per-user data should bypass caching or use a much shorter TTL.

Caching can help improve performance by reducing the load on the server and reducing the response time for subsequent requests.

Here are some caching strategies you can consider: 

1. Page level caching

Cache the entire paginated response for each page. This means caching the data along with the pagination metadata. This strategy is suitable when the data is relatively static and doesn't change frequently.

2. Result set caching

Cache the result set of a specific query or combination of query parameters. This is useful when the same query parameters are frequently used, and the result set remains relatively stable for a certain period. You can cache the result set and serve it directly for subsequent requests with the same parameters.

3. Time-based caching

Set an expiration time for the cache based on the expected freshness of the data. For example, cache the paginated response for a certain duration, such as 5 minutes or 1 hour. Subsequent requests within the cache duration can be served directly from the cache without hitting the server.

4. Conditional caching

Use conditional caching mechanisms like HTTP ETag or Last-Modified headers. The server can respond with a 304 Not Modified status if the client's cached version is still valid. This reduces bandwidth consumption and improves response time when the data has not changed.

5. Reverse proxy caching

Implement a reverse proxy server like Nginx or Varnish in front of your API server to handle caching. 

Reverse proxies can cache the API responses and serve them directly without forwarding the request to the backend API server. 

This offloads the caching responsibility from the application server and improves performance.

Frequently Asked Questions

How to handle pagination in APIs?

To handle pagination in APIs: check the response for a next cursor, next page URL, or has_more flag; follow that pointer in your next request rather than constructing the URL manually; loop until no next pointer is returned; and implement retry logic with exponential backoff for rate limit responses (HTTP 429). For large datasets, store intermediate results as each page arrives rather than accumulating all pages in memory before processing. Always respect the page size limits the API enforces - attempting to set limit beyond the maximum usually returns an error or silently caps the value.

What are the best practices for pagination?

Key API pagination best practices: use cursor-based pagination for large or frequently-updated datasets rather than offset; use consistent, standard parameter names (limit, after, before, page, per_page) so callers don't need to learn a new interface per endpoint; always include pagination metadata in responses (has_more, next_cursor, total_count where feasible); set a sensible default page size and document the maximum; signal the last page clearly with an empty next cursor or has_more: false; sort results on a stable, indexed field to ensure consistent ordering across pages; and document the pagination model at the API reference level.

Does API pagination start at 0 or 1?

It depends on the API. Page-based pagination most commonly starts at 1 (page=1 is the first page). Offset-based pagination starts at 0 by convention - offset=0 means skip zero records and return from the beginning. Cursor-based pagination has no page numbers at all  you start with no cursor and follow the next cursor returned in each response. Always check the specific API documentation, as inconsistencies exist: some APIs use page=0 as the first page, which can cause off-by-one errors if assumed to start at 1.

Is API pagination outdated?

No! API pagination is still essential and widely used. For user interfaces, infinite scroll has replaced traditional page numbers in many consumer apps, but the underlying API still uses pagination. For developer APIs, pagination is the standard way to handle large datasets safely, and cursor-based pagination is actively preferred over older offset approaches. What has changed is the preferred style: cursor-based and keyset pagination are now recommended over offset for performance and consistency reasons.

What is the ideal page size for API pagination?

There is no universal ideal page size - it depends on the payload size per record, the client's use case, and server capacity. Common defaults are 20–100 records per page for general APIs; data-heavy payloads warrant smaller pages. A default of 100 with a maximum of 1,000 is a reasonable starting point for most REST APIs. Let callers set their own limit up to the maximum rather than fixing page size, since a batch sync job benefits from larger pages while a UI displaying a list benefits from smaller ones.

How should pagination metadata be included in API responses?

Return pagination metadata in a consistent envelope alongside your data array. At minimum include: a next cursor or next page URL (null or absent when on the last page), a has_more boolean, and optionally a total_count. Use a standard structure - e.g. { data: [...], pagination: { next_cursor: '...', has_more: true } } - so clients can reliably parse it. Avoid returning pagination state only in HTTP Link headers, as many clients don't parse headers.

How do you handle the last page in API pagination?

Signal the last page clearly so clients know when to stop. For cursor-based pagination, return next_cursor: null or omit the field entirely on the last page. For page-based pagination, return has_more: false or compare current_page to total_pages. Clients should treat a missing or null next pointer as the termination signal - avoid relying on an empty data array as the only signal, since some APIs return a final page with fewer records than the limit, which is not necessarily empty.

What are common API pagination mistakes to avoid?

Common mistakes: using offset pagination on large, frequently-updated datasets - records can be skipped or duplicated as underlying data shifts between page requests; not sorting on a stable indexed field - inconsistent ordering breaks cursor-based pagination; omitting total_count when clients genuinely need it for progress tracking; setting fixed page sizes with no limit parameter; not documenting the pagination model, leaving callers to guess whether pages start at 0 or 1; and forgetting to handle the last page signal, causing infinite loops in client sync code when next_cursor is null.

What are the two main types of pagination?

The two foundational approaches are offset-based (using a numeric position or page number) and cursor-based (using a pointer to the last record seen). Page-based, keyset, and time-based pagination are variations built on these two underlying mechanics.

What are common problems with pagination?

The most frequent issues are inconsistent results when data changes between page requests (duplicate or skipped records), poor performance at high offsets on large datasets, and inconsistent parameter naming across an API's endpoints. Cursor or keyset pagination avoids the first two; a documented naming convention avoids the third.

Simplify API pagination 

In conclusion, implementing effective API pagination is essential for providing efficient and user-friendly access to large datasets. But it isn’t easy, especially when you are dealing with a large number of API integrations.

Using a unified API solution like Knit ensures that your API pagination requirements is handled without you requiring to do anything anything other than embedding Knit’s UI component on your end. 

Once you have integrated with Knit for a specific software category such as HRIS, ATS or CRM, it automatically connects you with all the APIs within that category and ensures that you are ready to sync data with your desired app. 

In this process, Knit also fully takes care of API authorization, authentication, pagination, rate limiting and day-to-day maintenance of the integrations so that you can focus on what’s truly important to you i.e. building your core product.

By incorporating these best practices into the design and implementation of paginated APIs, Knit creates highly performant, scalable, and user-friendly interfaces for accessing large datasets. This further helps you to empower your end users to efficiently navigate and retrieve the data they need, ultimately enhancing the overall API experience.

Sign up for free trial today or talk to our sales team

Developers
-
Aug 25, 2026

Best Integration Platform for AI Agents in 2026

The best AI agent integration platform depends on what the agent needs to touch. For agents that call general-purpose SaaS and developer tools - Slack, GitHub, Gmail there are a lot of, well-documented options. For agents that need to read or write enterprise systems of record - HRIS, ATS, accounting, CRM - Knit's MCP Hub is built specifically for that data, with a zero-storage architecture that doesn't cache what the agent retrieves.

TL;DR Comparison

Platform Tool / Connector Coverage Enterprise Systems (HRIS, ATS, Accounting) MCP Support Data Storage Model Free Tier
Knit 100+ MCP servers, 14+ categories Core catalog Managed MCP Hub Zero-storage proxy Yes — Launchpad
Nango 900+ APIs, 6,000+ tool calls Partial Yes Self-hosted option; managed cloud syncs and stores data Yes — self-hosted
Composio 1,000+ toolkits Limited Yes Pass-through by default, configurable logging Yes
Arcade ~60–80 toolkits Limited MCP-native Per-tool credential scoping Yes
Paragon 79 integrations Limited Pre-built actions via MCP Managed, stores synced data No
Workato Embedded 1,200+ connectors Via broader iPaaS catalog Yes Managed, stores synced data No

Coverage and feature figures are drawn from each vendor's own published comparison content as of August 2026. "Enterprise systems" reflects depth of HRIS, ATS, and accounting connectors specifically — not total connector count.

What Is an AI Agent Integration Platform?

An AI agent integration platform is infrastructure that lets an AI agent call real tools in external applications - fetch a record, send a message, update a field - without the team building the agent handling OAuth flows, token refresh, rate limiting, and API translation themselves. The agent issues a tool call; the platform authenticates against the target application, executes the request, and returns a normalized result the agent can reason over.

MCP vs. direct tool-calling

Model Context Protocol (MCP) standardizes how an agent discovers and calls tools: a model queries an MCP server for its available tools and invokes them without custom integration code per tool. Most current platforms support MCP alongside direct SDK-based tool-calling, so the real distinction between vendors isn't MCP-or-nothing - it's whether MCP is a first-class access pattern with managed infrastructure behind it, or something layered on top of an existing sync engine.

The category most skip

Every popular "best AI agent integration platform" list benchmarks connectivity to consumer and developer SaaS - Slack, GitHub, Gmail, Notion, Linear. These are real, high-volume use cases, and platforms like Composio are built well for them.

But consider a recruiting copilot that needs to check a candidate's interview stage in Greenhouse, or an HR chatbot answering "when does my PTO reset" by reading a Workday record, or a finance agent pulling an overdue invoice from NetSuite before drafting a collections email. None of that runs through Slack or GitHub. It requires normalized, tool-callable access to enterprise systems of record - HRIS, ATS, accounting, CRM - a category that most platforms competing for "best AI agent integration platform" don't cover in any depth. Workato Embedded reaches this territory through its broader iPaaS catalog; Knit is built around it as the primary use case.

Does an AI Agent Integration Platform Store the Data It Retrieves?

This is the question most answer with a hedge. A common pattern in vendor documentation: "the platform is pass-through by default" - followed by a qualifier like "unless you enable detailed logging" or "unless configured otherwise." That's a setting a customer could get wrong under deadline pressure, not an architectural guarantee.

Here's what a tool call actually does on Knit's MCP Hub, step by step:

  1. The agent calls a tool - say, get_employee — with a customer ID and employee ID.
  2. Knit looks up that customer's encrypted OAuth credentials in its credential vault.
  3. Knit authenticates with the source system (Workday, BambooHR, whichever the customer uses) and executes the request live.
  4. The response is sent
  5. The result is returned directly to the agent. Nothing from that response is written to a database.

The only thing Knit's infrastructure persists is the credential from step 2 - an auth token, not a business record. There's no data-retention toggle to misconfigure, because the code path that would write a cached copy of the employee record doesn't exist in the request flow at all.

To be fair to the rest of the field: this isn't a Knit-exclusive property. Nango's open-source, self-hostable deployment lets a team own its own data plane entirely, which solves the same underlying concern through infrastructure ownership rather than a stateless proxy - a different, also legitimate answer. What's less common is a fully managed platform, one you don't have to run yourself, where the no-storage guarantee is structural rather than a setting in an admin panel.

Key Features to Evaluate

Enterprise system coverage.

Does the catalog include HRIS, ATS, accounting, and payroll systems, or mostly consumer and developer SaaS?

MCP support.

Are MCP servers managed by the vendor's infrastructure, or do you provision and scale your own?

Data handling model.

Is "pass-through" an architectural property of the request flow, or a configuration option that could be changed?

Auth and token management.

When a customer's OAuth token expires mid-agent-session, who handles the refresh - the platform, transparently, or does your application code have to catch and retry the failed call?

Tool-call latency.

Does the vendor publish real numbers? Nango, for example, publishes a specific claim - under 100ms of tool-call overhead - while most competitors describe latency only in general terms. A platform that's willing to publish a number is giving you something to hold it to.

Compliance certifications.

SOC 2, GDPR, HIPAA - named specifically, including whether a Business Associate Agreement is actually available, not just implied by a badge on a marketing page.

Evaluation Criterion What to Ask the Vendor Why It Matters for Agents
Enterprise system coverage Does the catalog include HRIS, ATS, accounting, and payroll — or mostly consumer/dev SaaS? Determines whether the platform can support HR, recruiting, or finance agent use cases at all
MCP support Are MCP servers managed by the vendor, or do you provision and scale your own? Managed infrastructure removes an operational burden as agent usage scales
Data handling model Is "pass-through" architectural, or a setting that could be misconfigured? Agents call tools repeatedly and unpredictably — each cached call is a retention risk
Auth & token management Who handles OAuth refresh when a token expires mid-session — platform or your code? A dropped session mid-agent-run degrades the user experience directly
Tool-call latency Does the vendor publish a real number, or only qualitative claims? Agent responsiveness compounds across multi-step tool-calling chains
Compliance certifications SOC 2, GDPR, HIPAA — named specifically, with or without a BAA Determines fit for regulated industries and enterprise procurement

Use this as a scorecard when running a vendor proof of concept — ask each vendor to answer these six questions directly rather than relying on marketing copy.

The Best AI Agent Integration Platforms in 2026

Knit - best for agents that need enterprise system data

Knit's MCP Hub provides 150+ managed MCP servers across 14+ integration categories - HRIS, ATS, CRM, accounting, ticketing, calendar, and more - with pre-built tools like get_employee, list_open_positions, get_invoices_by_date_range, and search_tickets_by_assignee. Knit handles OAuth, token refresh, rate-limit backoff, and uptime monitoring at the infrastructure layer, so an AI agent authenticates once with Knit and gets managed access across every downstream application and every connected customer tenant, without the building team operating its own MCP server fleet.

The architecture is zero-storage, as detailed above: tool call results are proxied live and never cached. For applications outside Knit's standard catalog, the AI Integrations Agent can build a connector from an OpenAPI spec, a Postman collection, or a documentation URL, and wire multi-step workflows - for example, an agent-triggered offboarding flow that revokes SSO, deactivates email, and removes Slack access in sequence - into the same managed infrastructure.

Free at the Launchpad tier (5 MCP servers, no credit card required); unlimited servers from the Individual tier ($29/month) onward. SOC 2 Type II and ISO 27001 certified; no HIPAA BAA currently offered.

Nango - best for code-first teams needing broad general-purpose coverage

Nango covers 900+ APIs with 6,000+ pre-built tool calls, an open-source core, and a self-hostable deployment option — a real point of differentiation for teams that want to own their infrastructure outright. Compliance coverage is broad: SOC 2, GDPR, and HIPAA with a BAA available on paid tiers. Nango publishes a specific tool-call latency figure (under 100ms), which is more transparency than most competitors offer.

Limitation: the free self-hosted tier excludes functions, syncs, webhooks, MCP support, RBAC, and SAML — those require the paid managed tier. Enterprise HRIS/ATS-style coverage exists in the catalog but isn't the platform's primary design center; it leans toward general-purpose developer and SaaS tools.

Composio - best for developer-first teams building general SaaS agent tooling

Composio offers 1,000+ toolkits with a strong SDK and CLI experience, positioned as a complete developer-centric solution spanning auth, execution, and observability in one package.

Honest limitation: coverage skews toward developer and consumer SaaS tools — GitHub, Slack, Notion — rather than enterprise systems of record. Teams evaluating Composio for HR, recruiting, or finance agent use cases should verify specific connector depth directly rather than assume parity with its general SaaS coverage.

Arcade - best for teams wanting an MCP-native runtime

Arcade is built specifically around the MCP standard from the ground up, with credentials scoped per tool rather than per platform — a tighter security model for agents that only need narrow, specific permissions.

Honest limitation: the catalog is smaller — roughly 60–80 toolkits by third-party comparison counts — than the broader platforms in this list, and it's positioned narrowly around MCP-native use cases rather than broad enterprise system coverage.

Paragon - best for self serve

Paragon is purpose-built for the case where a SaaS product embeds agent actions directly into its own customer-facing UI, with a self-serve OAuth flow (rather than a sales-gated one) and pre-built actions exposed via MCP.

Honest limitation: the catalog is intentionally smaller (79 integrations) — a deliberate depth-over-breadth trade-off for the embedded case, but narrower than platforms optimized for raw coverage across many system types.

Workato Embedded - best for large enterprises already on Workato

Workato Embedded offers the broadest raw connector count in this comparison — 1,200+ — with strong compliance breadth (SOC 2, ISO, HIPAA), and reaches enterprise systems of record through its parent iPaaS catalog rather than a purpose-built agent layer.

Honest limitation: cloud-only deployment and enterprise-scale pricing make it a harder fit for smaller teams, and multiple independent comparisons note it lacks the action-level authorization controls that more recent MCP-native platforms build in from the start.

How to Choose

Does your agent need to act on enterprise systems of record — HRIS, ATS, accounting, CRM?

If yes, start with Knit; this is the specific gap general-purpose agent platforms don't cover well, and it's the primary design center for Knit's MCP Hub. If your agent mostly needs Slack, GitHub, or similar developer tools, Composio, Arcade, or Nango are better starting points, each with deeper coverage in that territory.

Do you need an architectural guarantee that agent-retrieved data isn't cached, not just a configuration toggle you'd have to remember to set correctly?

Knit's zero-storage proxy and Nango's self-hosted option both solve this, through different means — a managed stateless architecture versus infrastructure you run and own directly. Either is a stronger answer than a "pass-through by default" setting.

Is MCP-native support the primary requirement, or is broad tool-calling coverage more important?

Arcade is the narrowest, most MCP-native option, built for teams standardizing entirely on the protocol. Knit, Nango, Composio, and Workato all support MCP as one access pattern among several, with broader catalogs behind it.

FAQ

What is the best integration platform for AI agents?

It depends on what the agent needs to reach. For enterprise systems of record — HRIS, ATS, accounting, CRM — Knit's MCP Hub is purpose-built, with 100+ managed MCP servers and a zero-storage architecture that never caches tool call results. For general-purpose SaaS and developer tools like Slack and GitHub, Composio, Arcade, and Nango are strong, well-established options.

What is an AI agent integration platform?

It's infrastructure that lets an AI agent call tools in external applications — reading or writing data — without the team building the agent handling OAuth, token refresh, and API translation directly. Knit's MCP Hub is one example, offering managed access across 14+ integration categories through pre-built tools an agent can call directly.

Do AI agent integration platforms support MCP servers?

Most current platforms do, including Knit, Nango, Composio, and Arcade. Knit manages the MCP server infrastructure directly on its own systems, so there's no server for the customer to provision, scale, or monitor.

Does an AI agent integration platform store the data it retrieves?

It depends on the platform's architecture, not just its stated policy. Knit's MCP Hub proxies tool calls live and never caches business records — only encrypted auth credentials are stored, and only for authentication. Other platforms describe themselves as pass-through "by default," which in practice can depend on a configuration setting rather than the underlying architecture.

What's the difference between a unified API and an AI agent integration platform?

A unified API normalizes multiple applications behind one schema that developers call directly in code. An AI agent integration platform exposes that same kind of normalized access as tools an agent can call on its own, often via MCP. Knit provides both from the same underlying infrastructure, so the same normalized HRIS or ATS data reachable through Knit's REST API is also reachable as an agent tool call.

Which platform supports enterprise systems like HRIS and ATS for AI agents?

Knit's MCP Hub is built specifically around enterprise systems of record, covering HRIS, ATS, CRM, and accounting platforms with pre-built tools like get_employee and list_open_positions that return normalized data regardless of which underlying system a customer uses.

Is there a free AI agent integration platform?

Knit offers a free Launchpad tier with 5 MCP servers and no credit card required. Nango and Composio also offer free tiers, though Nango's free self-hosted tier excludes MCP support, and unlocking it requires a paid plan.

Knit's MCP Hub provides 100+ managed Model Context Protocol servers across 14+ integration categories, with a zero-storage architecture built for AI agents that need live access to HRIS, ATS, CRM, and accounting systems

Developers
-
Aug 20, 2026

How to Get a GitHub Personal Access Token

To get a GitHub personal access token, sign in to GitHub, go to Settings → Developer settings → Personal access tokens, choose Fine-grained tokens (or Tokens (classic)), click Generate new token, set an expiration and the permissions or scopes you need, then click Generate token. Copy the token immediately - GitHub shows it only once - and use it in the Authorization: Bearer header of your API requests, or as the password when Git prompts you for credentials over HTTPS

That's the short version. The rest of this page covers which token type to pick, exactly which scopes to grant, a working code sample, and the errors you'll hit if a permission is missing.

Prerequisites

  • A GitHub account with a verified email address (GitHub blocks token creation until your email is verified).
  • Decide your resource owner up front: a fine-grained token is scoped to either your personal account or a single organization you belong to, not both.
  • If the token needs to touch an organization's private repos, check whether that org restricts personal access tokens — an org admin may need to approve fine-grained tokens or allow classic PAT access before your token works.

Step-by-step: creating a fine-grained personal access token

GitHub recommends fine-grained tokens over classic tokens for new integrations, because you can scope them to specific repos and specific permissions instead of broad account-wide scopes (GitHub Docs, Managing your personal access tokens).

  1. In the top-right corner of any GitHub page, click your profile photo, then Settings.
  2. In the left sidebar, click Developer settings.
  3. Under Personal access tokens, click Fine-grained tokens, then Generate new token.
  4. Give it a Token name, and set an Expiration - up to 366 days, or no expiration if your org permits it. For anything long-running, pick the longest allowed expiration and put a renewal reminder on your calendar.
  5. Under Resource owner, pick your account or the organization whose data you need.
  6. Under Repository access, choose Only select repositories and pick the repos this token actually needs. "All repositories" works, but it defeats the point of a fine-grained token.
  7. Under Permissions, grant only what the endpoints you're calling require - for example, Contents: Read-only to read files, or Issues: Read and write to create and comment on issues. Each REST endpoint's doc page lists the exact permission it needs.
  8. Click Generate token and copy it somewhere safe. If your org requires approval for fine-grained tokens, the token stays in pending state — and read-only on public data - until an admin approves it.

Some endpoints (Packages, the Checks API, public repos you don't own) still don't support fine-grained tokens (limitations). For those, use Tokens (classic) instead: Developer settings → Personal access tokens → Tokens (classic) → Generate new token (classic), name it, set an expiration, check the scopes you need (repo covers most repository read/write cases), and generate. Knit's own GitHub setup guide uses this classic flow with repo, read:org, read:user, and user:email (Knit Docs — GitHub).

Fine-grained token Classic token
Scope Specific repos + specific permissions Broad scopes (e.g. repo) across everything you can access
GitHub's guidance Recommended for new integrations Still required for a handful of unsupported endpoints
Org approval May require org admin approval before it becomes active May require the org to allow classic PAT access
Max lifetime 366 days, or no expiration if org policy allows Can be set to never expire
Best for Most new integrations — smallest blast radius if leaked Packages, the Checks API, public repos you don't own, GitHub CLI

Where the credential goes

GitHub's REST API expects the token in a standard bearer header:

Authorization: Bearer YOUR-TOKEN

GitHub also still accepts the older Authorization: token YOUR-TOKEN form, but Bearer is what current docs and examples use (GitHub Docs, Authenticating to the REST API).

A few things to keep in mind:

  • Lifetime: fine-grained tokens expire on the date you set (max 366 days, or no expiration if your org allows it). Classic tokens can be set to never expire, but GitHub auto-revokes any token — classic or fine-grained — that goes unused for a year.
  • Refresh: personal access tokens don't refresh themselves. When one expires, you generate a new one and update wherever it's stored — there's no refresh-token flow like OAuth.
  • Scopes/permissions: grant the minimum. A fine-grained token with contents: read can't accidentally delete a repo; a classic token with repo can do almost anything to every repo you can access. Store the token in an environment variable or secrets manager — never commit it.

Minimal working example

This calls GET /user, which returns the profile of the token's owner — a good smoke test for any new token.

curl:

curl -H "Authorization: Bearer $GITHUB_TOKEN" \
     -H "Accept: application/vnd.github+json" \
     -H "X-GitHub-Api-Version: 2026-03-10" \
     https://api.github.com/user

Node.js:

	const res = await fetch("https://api.github.com/user", {
  headers: {
    Authorization: `Bearer ${process.env.GITHUB_TOKEN}`,
    Accept: "application/vnd.github+json",
    "X-GitHub-Api-Version": "2026-03-10",
  },
});

const data = await res.json();
console.log(data.login);

Both send the X-GitHub-Api-Version header, which GitHub recommends pinning so a future API version change doesn't silently alter your response shape (GitHub Docs, Authenticating to the REST API).

Using a personal access token with Git (HTTPS)

  1. Run the git command
  2. username prompt
  3. paste token as password
  4. Cache it

Common errors and fixes

Why am I getting "Bad credentials" with a 401?

The token is missing, malformed, expired, or was revoked. Double-check the header reads Authorization: Bearer <token> with no extra quotes or whitespace, and confirm the token still exists under Settings → Developer settings — GitHub auto-deletes personal access tokens that sit unused for a year (GitHub Docs, Managing your personal access tokens).

Why do I get "Resource not accessible by personal access token"?

Your token doesn't have the scope or permission that endpoint needs. For fine-grained tokens, check the response's X-Accepted-GitHub-Permissions header — it lists exactly what's required — then add that permission to the token. For classic tokens, you likely need a broader scope like repo instead of public_repo (GitHub Docs, Troubleshooting the REST API).

Why am I hitting a 403/429 rate limit so quickly?

Unauthenticated requests are capped at 60/hour; authenticated requests get 5,000/hour. If x-ratelimit-remaining is 0, wait until the time in x-ratelimit-reset (UTC epoch seconds) before retrying — retrying immediately just burns more of your secondary rate limit (GitHub Docs, Rate limits for the REST API).

Why does Git keep asking for my password, or reject it?

The token is missing, malformed, expired, or was revoked. Double-check the header reads Authorization: Bearer &lt;token&gt;with no extra quotes or whitespace, and confirm the token still exists under Settings → Developer settings - GitHub auto-deletes personal access tokens that sit unused for a year

The faster way

Generating and rotating PATs is fine for a single script. It gets messier once you're supporting GitHub alongside Jira, Zendesk, or a dozen other ticketing tools — each with its own auth quirks, scopes, and expiry rules. Knit's unified ticketing API handles GitHub's OAuth and PAT flows, normalizes the endpoints across connectors, and refreshes credentials so you don't have to build that machinery yourself. See the GitHub API overview for what's available, or book a demo to see it against your own GitHub org. You can also sign up free and connect a sandbox GitHub account in a few minutes.

FAQ

Where do I find my GitHub personal access token after creating it?

GitHub shows the token value exactly once, right after you click "Generate token" — copy it then, because it's never displayed again. Lost it? Generate a new one. Existing tokens (without values) live under Settings → Developer settings → Personal access tokens, where you can check scopes, expiration, and delete unused ones.

What's the difference between a fine-grained and a classic personal access token?

Fine-grained tokens scope to specific repos and specific permissions; classic tokens use broad scopes like repo that apply everywhere you have access. Knit's GitHub setup currently uses classic scopes (repo, read:org, read:user, user:email) because a few endpoints — Packages, the Checks API, public repos you don't own — still aren't supported by fine-grained tokens.

Can I use a personal access token to access an organization's repositories?

Yes, if the org allows it and you already have access to those repos — a token can't grant access you don't have. Org admins can restrict or require approval for both token types, so a 403 against org repos usually means a policy setting, not a bad token.

How long does a GitHub personal access token last before I need a new one?

Fine-grained tokens expire on whatever date you set, up to 366 days out, or never if your org's policy allows it. Classic tokens can be set to never expire, but GitHub auto-deletes any token — classic or fine-grained — that sits unused for a year.

Is the GitHub API free to use with a personal access token?

Yes — token creation and REST API calls are free, subject to GitHub's rate limits (5,000 authenticated requests/hour for most accounts). If you're hitting that limit across multiple orgs, a GitHub App is worth a look — installation tokens get up to 15,000/hour on Enterprise Cloud.

Last verified and updated: 2026-06-13

Sources:

Product
-
Jun 11, 2026

Understanding Merge.dev Pricing: What It Actually Costs at Scale (2026 Guide)

Merge.dev — now marketed simply as Merge — is a unified API platform that lets B2B SaaS products connect to 250+ third-party tools through a single endpoint. Its catalog covers HRIS, ATS, CRM, accounting, ticketing, file storage, and knowledge base categories. In 2025 Merge added a second product, Merge Agent Handler, which gives AI agents secure access to these same tools so they can read data and take actions across your customers' SaaS stacks. This guide covers how Merge's pricing model works, what each plan actually includes, and how it compares to alternatives including Knit.

The most important thing to understand about Merge pricing before anything else: Merge charges per linked account, where one linked account equals one customer's connection to one integration. A customer using your product with Salesforce and Workday connected counts as two linked accounts. At 10 customers, that's manageable. At 100 customers using two integrations each, you're looking at $13,000 per month on the self-serve Launch plan. This guide shows you exactly where the costs go and when it makes sense to look at alternatives.

The short version: Merge bills a flat $65/month per linked account above its 10-account base. That cost climbs in a straight line as you add customers — $1,950/month at 30 accounts, $3,250+/month at 50. Knit's account-based pricing scales on a declining curve instead, and adds a zero-storage architecture and dedicated support earlier in the plan ladder.

How Merge.dev Pricing Works

Merge.dev Pricing Plans

Plan Price Linked Accounts Included Support Key Features
Launch (self-serve) First 3 linked accounts free, then $650/month Up to 10 production linked accounts; $65/month per additional account Email Core unified API access, basic sync, standard integrations
Professional (contract) Custom — typically $30,000–$55,000/year platform fee plus ~$65/connected account Negotiated Email + chat Custom fields, field-level scopes, custom sync frequencies, sandboxes, go-live support
Enterprise (contract) Custom — Vendr transaction data shows $100,000–$250,000+ annually depending on scope Negotiated with volume discounts Email + chat, dedicated account manager, shared Slack channel (first 90 days), support SLA Security audits, SSO, audit trails, unlimited sandboxes, white-glove support

Billing note: Merge's Launch plan is free for your first 3 production linked accounts. Once you scale beyond 3 (up to 10 total), the $650/month base plan applies, with $65/month for each additional linked account beyond 10. Merge charges based on the net-average daily count of active linked accounts during the prior month, billed on the first of each month. You are not charged for accounts connected and then disconnected within the billing period.

What Merge.dev Actually Costs at Your Customer Count

Merge charges a flat $65 per linked account per month above the 10-account base. Knit's pricing also scales with connected accounts, but on a significantly gentler curve — and Knit additionally offers API calls-based pricing for teams that prefer usage-based billing over account-based tiers. The table below shows the cost difference at comparable account counts:

Linked Accounts Merge.dev Launch Cost/Month Knit Cost/Month Monthly Saving with Knit
10 $650 (base) $499 (Start Up) $151
20 $650 + (10 × $65) = $1,300 ~$800 (Start Up) ~$500
30 $650 + (20 × $65) = $1,950 ~$1,000 (Start Up) ~$950
50+ $650 + (40 × $65) = $3,250+ Start Up continues to scale by account volume, or Scale Up from $1,500/month if you need custom field mapping, white-labeled auth, or configurable sync Significant; contact getknit.dev/pricing for an exact quote
100+ Enterprise contract ($6,500+/month on Launch) Enterprise — custom Custom

Note: Knit's Start Up plan price scales with connected account volume regardless of feature needs. Scale Up is a separate feature upgrade — custom field mapping, white-labeled authentication, configurable sync frequencies, and priority connector requests — that starts at $1,500/month and isn't strictly tied to account count.

Knit's Start Up plan cost decreases on a per-account basis as volume increases — about $50/account at 10 accounts, dropping to roughly $33/account at 30 — while Merge's rate stays fixed at $65/account throughout the self-serve Launch plan. For teams building integrations that will reach 20–50+ connected customers, the savings add up fast. If your needs grow beyond Start Up's scope, Knit's Scale Up plan starts at $1,500/month — still well below Merge's Professional contract pricing. Knit also offers API calls-based pricing as an alternative to account-based tiers for teams with variable usage patterns.

What Is Included in Each Merge.dev Plan

Several features that integration teams often assume are standard require Professional or Enterprise plans on Merge:

Feature Launch Professional Enterprise
Core unified API access (read)YesYesYes
Write / create / update operationsLimitedYesYes
Custom fields and field mappingNoYesYes
Field-level scopes (limit data access per customer)NoYesYes
Custom sync frequenciesNoYes (configurable)Yes (configurable)
Sandbox environmentsNoYesUnlimited
Go-live support / implementation helpNoYesYes
SSO / SAMLNoNoYes
Audit trails and logsNoNoYes
SLA guaranteesNoNoYes
Dedicated account managerNoNoYes

For most production integrations serving enterprise buyers, custom field mapping, configurable sync frequencies, and sandbox environments aren't optional extras — they're table stakes. On Merge, all three sit behind the Professional plan, so teams typically hit this upgrade well before account-based billing becomes the bigger cost factor.

Merge Agent Handler: Merge's AI-Focused Product

In 2025, Merge launched Merge Agent Handler alongside their existing unified API. Where the unified API normalizes data reads and writes across SaaS categories, Agent Handler is designed for AI agent use cases — giving LLMs and AI agents the ability to access tools, read structured data, and take actions across your customers' connected SaaS applications.

Merge now positions itself as "the infrastructure layer for production AI" — a shift from the pure unified API positioning it held until 2024. If you are building AI agents into your product and need those agents to access customer data across multiple SaaS tools, Merge Agent Handler is worth evaluating separately from the standard unified API pricing. Agent Handler pricing is contract-based and not publicly listed.

Knit's Answer: MCP Servers and the AI Integrations Agent

Knit's closest equivalent to Merge Agent Handler is its managed MCP hub: 150+ pre-built MCP servers spanning HRIS, ATS, CRM, accounting, and ticketing, deployed serverlessly so agents get tool access without your team standing up or patching infrastructure. Knit handles authentication (OAuth, SAML, service accounts, token refresh), supports hot-swapping tools at runtime so agents see new capabilities without a restart, and uses semantic tool search to surface only the relevant tools for a given task — which keeps token costs down and improves accuracy. Like the rest of Knit's platform, the MCP servers run on a zero-storage architecture, so agent calls pass through to the source system rather than hitting a cached copy.

Behind the catalog sits Knit's AI Integrations Agent — the technology that reads and interprets a SaaS provider's API documentation, then builds and maintains a tailored connector automatically, including endpoints that fall outside a standard unified schema. This is also what lets Knit extend into the custom, enterprise-specific workflows and orchestrations that off-the-shelf unified models often can't reach: Knit can typically add a missing app to its catalog in about 2 days, versus the 2–6 weeks common for unified API vendors, as long as the provider's API documentation is available.

Merge Agent Handler Knit MCP Servers + Integrations Agent
What it does Gives AI agents access to tools, structured data, and actions across connected SaaS apps 150+ managed MCP servers give agents tool access out of the box; the Integrations Agent builds custom connectors by reading a provider's API docs
Data handling Same caching model as Merge's unified API — data is stored on Merge's servers Zero-storage — agent calls pass through to the source system in real time
Non-standard endpoints / custom workflows Handled through custom contract work Integrations Agent can build a tailored connector, typically within ~2 days given API docs
Pricing Contract-based, not publicly listed MCP servers available via mcphub.getknit.dev; Integrations Agent scoping through the Knit team

Merge.dev: Where It Excels and Where It Falls Short

Merge.dev strengths

  • Broadest integration catalog in the unified API category — 250+ integrations across HRIS, ATS, CRM, accounting, ticketing, file storage, and more
  • Normalized data models that abstract away provider-specific quirks — your product code stays stable when Salesforce or Workday changes their API
  • Established enterprise track record — used by Drata, Ramp, and AngelList among others; $75M+ in funding and strong G2/Gartner reviews
  • Merge Webhooks provide near-real-time sync for providers that support them; other providers use configurable polling intervals
  • Strong documentation and developer experience for initial integration

Merge.dev limitations worth knowing

  • Cost scales with linked accounts — at 100 customers using 2 integrations each, you're paying $13,000/month on the self-serve plan, and that's before custom fields or configurable sync are even available
  • Data storage model: Merge caches a copy of your customers' data on its servers. For customers in regulated industries or with strict data residency requirements, this adds a compliance conversation to every enterprise sales cycle
  • Batch sync for providers without webhook support — delta sync frequencies depend on your plan; daily sync is the default on lower tiers
  • Write operation coverage is narrower than reads — not all integrations support full CRUD operations via the unified API
  • Customer support below Professional tier is email-only — no dedicated account manager until Enterprise

Knit: Where It Has the Edge as an Alternative

Knit strengths

Zero-storage architecture

Knit never caches or retains customer data on its servers — data passes through in real time. This removes a recurring item from security reviews and data residency conversations that Merge's data-caching model often raises with enterprise buyers.

Managed sync, not provider-dependent webhooks

Knit handles sync scheduling, retries, and failure recovery centrally across its catalog, so reliability doesn't hinge on whether an individual provider supports webhooks well. On Merge, sync quality varies by provider — webhooks where supported, daily batch polling where they aren't.

Genuinely configurable sync frequencies

On Scale Up and above, Knit lets you set sync frequency per integration to match your actual use case, rather than choosing from a fixed set of preset intervals.

Dedicated support earlier in the pricing ladder

Knit includes dedicated Slack support starting at Scale Up ($1,500/month). On Merge, a shared Slack channel doesn't appear until Enterprise, where annual contracts typically start around $100,000.

165+ integrations with a fast path to new connectors

Knit's catalog spans HRIS, payroll, ATS, CRM, accounting, ticketing, and e-signature, including Salesforce, Workday, NetSuite, and SAP SuccessFactors. If a connector you need isn't yet supported, Scale Up includes the ability to request new integrations, so catalog gaps can often be addressed without waiting on a public roadmap.

Merge.dev vs. Knit: Full Pricing Comparison

Merge.dev Launch Merge.dev Professional Knit Start Up Knit Enterprise
Price First 3 linked accounts free, then $650/month (10 linked accounts) ~$30–55K/year platform fee + ~$65/connected account $499/month (10 accounts), scaling to ~$1,000/month at 30 Custom
Free trial 3 production linked accounts free N/A 30-day full-feature trial N/A
Pricing model Per linked account — scales with customer count Per connected account + platform fee Start Up: tiered by connected accounts, from $499/month for 10 (~$800 for 20, ~$1,000 for 30). Scale Up: feature-based upgrade from $1,500/month, independent of account count. API calls-based pricing also available. Custom
Data storage Merge caches customer data on its servers Merge caches customer data on its servers Zero storage — data passes through in real time, nothing retained Zero storage
Sync model Webhooks where supported; polling otherwise Webhooks + configurable polling Fixed 24-hour sync on Start Up; configurable/real-time sync on Scale Up and above Webhook-first, configurable
Write operations Limited on Launch Full CRUD on most integrations Full CRUD on supported integrations Full CRUD
Custom field mapping No Yes No on Start Up — included from Scale Up Yes
Support Email Email + chat Email on Start Up; dedicated Slack support from Scale Up onwards Dedicated account manager + Slack support
Best for Small teams evaluating Merge with few customers Mid-market teams needing full features Growing SaaS teams starting with core integrations on a budget Enterprise with compliance requirements

When Merge.dev is the right choice

  • You need broad category coverage from day one — Merge's 250+ integrations means you can ship integrations with any tool your customers use without waiting for a provider to add it
  • Your customers are large enterprises with strict compliance and audit requirements — Merge's Enterprise plan includes SSO, audit trails, and security audits that are non-negotiable for some buyers
  • You have relatively few high-value customers — at 10–20 linked accounts, Merge's $650/month (after 3 free) is competitive and the feature depth is hard to match
  • Your integration roadmap includes file storage or knowledge base tools — these are categories in Merge's catalog that currently fall outside Knit's core focus areas (HRIS, payroll, ATS, CRM, accounting, ticketing, and e-signature)

When Knit is the better choice

  • Your integration count is growing and per-account cost is starting to show up in your unit economics — Knit's Start Up plan cost decreases as volume increases (from ~$50/account at 10 to ~$33/account at 30), compared to Merge's fixed $65/account throughout. Knit also offers API calls-based pricing as an alternative if usage-based billing better fits your model.
  • Your customers are sensitive about third-party data storage — Knit operates on a zero-storage model where customer data passes through in real time and is never retained on Knit's servers, removing the data residency objection from your enterprise sales cycle
  • You're comfortable starting lean and upgrading as you grow — Knit's Start Up plan ($499/month) covers core integrations with a fixed 24-hour sync and Knit's branding on the auth flow; if you later need custom field mapping, white-labeled auth, or configurable sync, Scale Up starts at $1,500/month as a flat feature fee — independent of account count, unlike Merge's per-account pricing, which keeps climbing as you add customers
  • You need predictable unit economics as you scale — Merge's per-linked-account model means integration costs grow as a direct function of customer growth, which compresses margins

Ready to see Knit's pricing and zero-storage architecture for yourself?

Try Knit free for 30 days — no credit card required →

Other Merge.dev Alternatives Worth Evaluating

Alternative Pricing Model Best For Key Difference vs. Merge
Knit Start Up from $499/month (10 accounts), scaling to ~$1,000/month at 30; Scale Up from $1,500/month adds custom field mapping and white-labeled auth. API calls-based pricing also available. 30-day free trial. SaaS teams where integration count scales with customers Zero-storage architecture, declining per-account cost at scale, API calls-based pricing option, transparent upgrade path
Nango (open source) Usage-based / self-hosted option available Teams that want open-source flexibility or to self-host Open source core; can run on your own infrastructure
Apideck Per-linked-account (similar to Merge) Teams needing API management + unified API in one Broader API management features beyond unified API
Unified.to Starting from $750/month API calls based Cost-sensitive teams or those needing simple CRM/HRIS integrations Narrower catalog but lower cost at scale
Truto Usage-based from $0/month (open source) Teams comfortable with self-hosted or usage-based pricing Open source option;

Frequently Asked Questions

How much does Merge.dev cost?

Merge.dev's self-serve Launch plan includes your first 3 production linked accounts free, then costs $650/month for up to 10, with each additional linked account billed at $65/month. Knit's Start Up plan starts at $499/month for 10 connected accounts, scaling to approximately $800/month at 20 accounts and $1,000/month at 30 accounts — a significantly gentler curve than Merge's fixed $65/account rate. If you need custom field mapping, white-labeled authentication, or configurable sync, Knit's Scale Up plan starts at $1,500/month. Knit also offers API calls-based pricing as an alternative billing model. Merge's Professional and Enterprise plans are contract-based; Vendr transaction data shows annual contracts typically ranging from $30,000 for Professional to $250,000+ for large Enterprise deployments, depending on linked accounts, integration categories, and feature requirements.

What is a linked account in Merge.dev?

A linked account is Merge's billing unit — it represents one customer's authenticated connection to one integration. If your product connects 50 customers to Salesforce and 30 of those same customers also connect to Workday, that is 80 linked accounts. Merge charges a fixed $65/month per linked account above the 10-account base (after the first 3, which are free). Knit's Start Up plan also prices by connected account but on a declining-rate curve: ~$50/account at 10, ~$40/account at 20, ~$33/account at 30. Knit additionally offers API calls-based pricing for teams that prefer usage-based billing, and a Scale Up plan from $1,500/month for teams that need custom field mapping, white-labeled authentication, or configurable sync regardless of account count. If you're evaluating Merge, model your expected linked account count 12–18 months out before committing — the monthly figure changes significantly as customers add integrations.

What does Merge.dev do?

Merge.dev is a unified API platform that lets B2B SaaS products integrate with 250+ third-party tools — HRIS, ATS, CRM, accounting, ticketing, file storage — through a single API endpoint instead of building each integration separately. Knit provides a similar unified API capability with a zero-storage architecture and tiered pricing that scales more gradually than Merge's fixed per-account rate. Merge has recently expanded into AI infrastructure with Merge Agent Handler, which gives AI agents access to and the ability to act across these same integrated tools.

How much is Merge.dev enterprise pricing?

Merge's Enterprise contracts are custom-priced and not publicly listed. Based on Vendr transaction data from actual buyer contracts, annual deals typically range from around $100,000 for smaller Enterprise deployments (under 50 linked accounts, 1–2 integration categories) to $250,000+ for large-scale enterprise deployments. Knit's Enterprise plan is also custom-priced and includes zero-storage architecture, dedicated support, custom SLAs, and role-based access controls. For teams that need more than Knit's Start Up plan but aren't yet at Enterprise scale, Knit's Scale Up plan (from $1,500/month) covers custom field mapping, white-labeled authentication, and configurable sync. For either platform, the main cost drivers are linked account volume, number of integration categories, and required support tier.

Is Merge.dev worth it?

Merge.dev is worth it if you need broad integration coverage across multiple SaaS categories and have a relatively small number of high-value customers. Where Knit and alternatives become more cost-effective is at scale: if your customer base is growing and each new customer adds linked accounts, Merge's per-account cost adds up quickly. Teams with 50+ customers using 2–3 integrations each should model the total cost before committing to Merge's pricing structure. The decision usually comes down to integration breadth needed versus total cost at your expected customer count.

Does Merge.dev store my customers' data?

Yes — Merge caches a copy of your customers' data on its servers to serve your API requests. This is central to how Merge's architecture works: it syncs from source systems on a schedule and stores the normalized copy for fast reads. Knit operates differently with a zero-storage model where data flows through in real time and is never retained on Knit's servers. For teams selling to enterprises with strict data residency requirements or GDPR obligations, the data storage difference is often a deciding factor.

What are the best alternatives to Merge.dev?

The most commonly evaluated alternatives to Merge.dev are Knit (Start Up plan from $499/month for 10 accounts scaling to ~$1,000/month at 30, with a Scale Up plan from $1,500/month for custom field mapping and white-labeled auth; zero-storage architecture, API calls-based pricing also available, 30-day free trial), Nango (open-source option with self-hosting available), Apideck (broader API management features), Unified.to (flat-rate from $250/month, narrower catalog), and Truto (open-source core, usage-based pricing). Knit's free 30-day trial covers the full Unified API feature set and is a practical way to compare without committing.

Is there a free version of Merge.dev?

Merge.dev's Launch plan includes 3 free production linked accounts — enough for small-scale prototyping but not for a production deployment with real customers. Knit offers a 30-day free trial covering the Start Up plan's feature set (starting at $499/month for 10 connected accounts after the trial), giving you time to build and test a real integration before committing. For teams evaluating unified API options, Knit's 30-day full-feature trial is a more useful comparison baseline than Merge's 3-linked-account limit.

Is Merge.dev an iPaaS?

No — Merge.dev is a unified API, not a general-purpose iPaaS like Zapier or Workato. Knit sits in the same category: rather than letting you build arbitrary workflows between any two apps, both platforms normalize a fixed set of categories — HRIS, ATS, CRM, accounting, ticketing — into a single API your product calls directly. The distinction matters when you're scoping a project. An iPaaS is built for internal automation between tools your team already uses internally. A unified API like Merge or Knit is built to power customer-facing integrations inside the product you sell — your customers connect their HR or CRM systems through your app, not through a separate automation tool. If your goal is to ship "Connect your Workday account" inside your product, you're in unified API territory, not iPaaS.

Product
-
Mar 29, 2026

Top 5 Nango Alternatives

5 Best Nango Alternatives for Streamlined API Integration

Are you in the market for Nango alternatives that can power your API integration solutions? In this article, we’ll explore five top platforms—Knit, Merge.dev, Apideck, Paragon, and Tray Embedded—and dive into their standout features, pros, and cons. Discover why Knit has become the go-to option for B2B SaaS integrations, helping companies simplify and secure their customer-facing data flows.

TL;DR


Nango is an open-source embedded integration platform that helps B2B SaaS companies quickly connect various applications via a single interface. Its streamlined setup and developer-friendly approach can accelerate time-to-market for customer-facing integrations. However, coverage is somewhat limited compared to broader unified API platforms—particularly those offering deeper category focus and event-driven architectures.

Nango also relies heavily on open source communities for adding new connectors which makes connector scaling less predictable fo complex or niche use cases.

Pros (Why Choose Nango):

  • Straightforward Setup: Shortens integration development cycles with a simplified approach.
  • Developer-Centric: Offers documentation and workflows that cater to engineering teams.
  • Embedded Integration Model: Helps you provide native integrations directly within your product.

Cons (Challenges & Limitations):

  • Limited Coverage Beyond Core Apps: May not support the full depth of specialized or industry-specific APIs.
  • Standardized Data Models: With Nango you have to create your own standard data models which requires some learning curve and isn't as straightforward as prebuilt unified APIs like Knit or Merge
  • Opaque Pricing: While Nango has a free to build and low initial pricing there is very limited support provided initially and if you need support you may have to take their enterprise plans

Now let’s look at a few Nango alternatives you can consider for scaling your B2B SaaS integrations, each with its own unique blend of coverage, security, and customization capabilities.

1. Knit

Knit - How it compares as a nango alternative

Overview
Knit is a unified API platform specifically tailored for B2B SaaS integrations. By consolidating multiple applications—ranging from CRM to HRIS, Recruitment, Communication, and Accounting—via a single API, Knit helps businesses reduce the complexity of API integration solutions while improving efficiency. See how Knit compares directly to Nango →

Key Features

  • Bi-Directional Sync: Offers both reading and writing capabilities for continuous data flow.
  • Secure - Event-Driven Architecture: Real-time, webhook-based updates ensure no end-user data is stored, boosting privacy and compliance.
  • Developer-Friendly: Streamlined setup and comprehensive documentation shorten development cycles.

Pros

  • Simplified Integration Process: Minimizes the need for multiple APIs, saving development time and maintenance costs.
  • Enhanced Security: Event-driven design eliminates data-storage risks, reinforcing privacy measures.
  • New integrations Support : Knit enables you to build your own APIs in minutes or builds new integrations in a couple of days to ensure you can scale with confidence

2. Merge.dev

Overview
Merge.dev delivers unified APIs for crucial categories like HR, payroll, accounting, CRM, and ticketing systems—making it a direct contender among top Nango alternatives.

Key Features

  • Extensive Pre-Built Integrations: Quickly connect to a wide range of platforms.
  • Unified Data Model: Ensures consistent and simplified data handling across multiple services.

Pros

  • Time-Saving: Unified APIs cut down deployment time for new integrations.
  • Simplified Maintenance: Standardized data models make updates easier to manage.

Cons

  • Limited Customization: The one-size-fits-all data model may not accommodate every specialized requirement.
  • Data Constraints: Large-scale data needs may exceed the platform’s current capacity.
  • Pricing : Merge's platform fee  might be steep for mid sized businesses

3. Apideck

Overview
Apideck offers a suite of API integration solutions that give developers access to multiple services through a single integration layer. It’s well-suited for categories like HRIS and ATS.

Key Features

  • Unified API Layer: Simplifies data exchange and management.
  • Integration Marketplace: Quickly browse available integrations for faster adoption.

Pros

  • Broad Coverage: A diverse range of APIs ensures flexibility in integration options.
  • User-Friendly: Caters to both developers and non-developers, reducing the learning curve.

Cons

  • Limited Depth in Categories: May lack the robust granularity needed for certain specialized use cases.

4. Paragon

Overview
Paragon is an embedded integration platform geared toward building and managing customer-facing integrations for SaaS businesses. It stands out with its visual workflow builder, enabling lower-code solutions.

Key Features

  • Low-Code Workflow Builder: Drag-and-drop functionality speeds up integration creation.
  • Pre-Built Connectors: Quickly access popular services without extensive coding.

Pros

  • Accessibility: Allows team members of varying technical backgrounds to design workflows.
  • Scalability: Flexible infrastructure accommodates growing businesses.

Cons

  • May Not Support Complex Integrations: Highly specialized needs might require additional coding outside the low-code environment.

5. Tray Embedded

Overview
Tray Embedded is another formidable competitor in the B2B SaaS integrations space. It leverages a visual workflow builder to enable embedded, native integrations that clients can use directly within their SaaS platforms.

Key Features

  • Visual Workflow Editor: Allows for intuitive, drag-and-drop integration design.
  • Extensive Connector Library: Facilitates quick setup across numerous third-party services.

Pros

  • Flexibility: The visual editor and extensive connectors make it easy to tailor integrations to unique business requirements.
  • Speed: Pre-built connectors and templates significantly reduce setup time.

Cons

  • Complexity for Advanced Use Cases: Handling highly custom scenarios may require development beyond the platform’s built-in capabilities.

Conclusion: Why Knit Is a Leading Nango Alternative

When searching for Nango alternatives that offer a streamlined, secure, and B2B SaaS-focused integration experience, Knit stands out. Its unified API approach and event-driven architecture protect end-user data while accelerating the development process. For businesses seeking API integration solutions that minimize complexity, boost security, and enhance scalability, Knit is a compelling choice.

Interested in trying Knit? - Contact us for a personalized demo and see how Knit can simplify your B2B SaaS integrations
Product
-
Mar 29, 2026

Finch API Vs Knit API - What Unified HR API is Right for You?

Whether you are a SaaS founder/ BD/ CX/ tech person, you know how crucial data safety is to close important deals. If your customer senses even the slightest risk to their internal data, it could be the end of all potential or existing collaboration with you. 

But ensuring complete data safety — especially when you need to integrate with multiple 3rd party applications to ensure smooth functionality of your product — can be really challenging. 

While a unified API makes it easier to build integrations faster, not all unified APIs work the same way. 

In this article, we will explore different data sync strategies adopted by different unified APIs with the examples of  Finch API and Knit — their mechanisms, differences and what you should go for if you are looking for a unified API solution.

Let’s dive deeper.

But before that, let us first revisit the primary components of a unified API and how exactly they make building integration easier.

How does a unified API work?

As we have mentioned in our detailed guide on Unified APIs,  

“A unified API aggregates several APIs within a specific category of software into a single API and normalizes data exchange. Unified APIs add an additional abstraction layer to ensure that all data models are normalized into a common data model of the unified API which has several direct benefits to your bottom line”.

The mechanism of a unified API can be broken down into 4 primary elements — 

  • Authentication and authorization
  • Connectors (1:Many)
  • Data syncs 
  • Ongoing integration management

1.Authentication and authorization

Every unified API — whether its Finch API, Merge API or Knit API — follows certain protocols (such as OAuth) to guide your end users authenticate and authorize access to the 3rd party apps they already use to your SaaS application.

2. Connectors 

Not all apps within a single category of software applications have the same data models. As a result, SaaS developers often spend a great deal of time and effort into understanding and building upon each specific data model. 

A unified API standardizes all these different data models into a single common data model (also called a 1:many connector) so SaaS developers only need to understand the nuances of one connector provided by the unified API and integrate with multiple third party applications in half the time. 

3. Data Sync

The primary aim of all integration is to ensure smooth and consistent data flow — from the source (3rd party app) to your app and back — at all moments. 

We will discuss different data sync models adopted by Finch API and Knit API in the next section.

4. Ongoing integration Management 

Every SaaS company knows that maintaining existing integrations takes more time and engineering bandwidth than the monumental task of building integrations itself. Which is why most SaaS companies today are looking for unified API solutions with an integration management dashboards — a central place with the health of all live integrations, any issues thereon and possible resolution with RCA. This enables the customer success teams to fix any integration issues then and there without the aid of engineering team.

finch API alterative
how a unified API works

How data sync happens in Unified APIs?

For any unified API, data sync is a two-fold process —

  • Data sync between the source (3rd party app) and the unified API provider
  • Data sync between the unified API and your app

Between the third party app and unified API

First of all, to make any data exchange happen, the unified API needs to read data from the source app (in this case the 3rd party app your customer already uses).

However, this initial data syncing also involves two specific steps — initial data sync and subsequent delta syncs.

Initial data sync between source app and unified API

Initial data sync is what happens when your customer authenticates and authorizes the unified API platform (let’s say Finch API in this case) to access their data from the third party app while onboarding Finch. 

Now, upon getting the initial access, for ease of use, Finch API copies and stores this data in their server. Most unified APIs out there use this process of copying and storing customer data from the source app into their own databases to be able to run the integrations smoothly.

While this is the common practice for even the top unified APIs out there, this practice poses multiple challenges to customer data safety (we’ll discuss this later in this article). Before that, let’s have a look at delta syncs.

What are delta syncs?

Delta syncs, as the name suggests, includes every data sync that happens post initial sync as a result of changes in customer data in the source app.

For example, if a customer of Finch API is using a payroll app, every time a payroll data changes — such as changes in salary, new investment, additional deductions etc — delta syncs inform Finch API of the specific change in the source app.

There are two ways to handle delta syncs — webhooks and polling.

In both the cases, Finch API serves via its stored copy of data (explained below)

In the case of webhooks, the source app sends all delta event information directly to Finch API as and when it happens. As a result of that “change notification” via the webhook, Finch changes its copy of stored data to reflect the new information it received.

Now, if the third party app does not support webhooks, Finch API needs to set regular intervals during which it polls the entire data of the source application to create a fresh copy. Thus, making sure any changes made to the data since the last polling is reflected in its database. Polling frequency can be every 24 hours or less.

This data storage model could pose several challenges for your sales and CS team where customers are worried about how the data is being handled (which in some cases is stored in a server outside of customer geography). Convincing them otherwise is not so easy. Moreover, this friction could result in additional paperwork delaying the time to close a deal.

Data syncs between unified API and your app 

The next step in data sync strategy is to use the user data sourced from the third party app to run your business logic. The two most popular approaches for syncing data between unified API and SaaS app are — pull vs push.

What is Pull architecture?

pull data flow architecture

Pull model is a request-driven architecture: where the client sends the data request and then the server sends the data. If your unified API is using a pull-based approach, you need to make API calls to the data providers using a polling infrastructure. For a limited number of data, a classic pull approach still works. But maintaining polling infra and/making regular API calls for large amounts of data is almost impossible. 

What is Push architecture?

push data architecture: Finch API

On the contrary, the push model works primarily via webhooks — where you subscribe to certain events by registering a webhook i.e. a destination URL where data is to be sent. If and when the event takes place, it informs you with relevant payload. In the case of push architecture, no polling infrastructure is to be maintained at your end. 

How does Finch API send you data?

There are 3 ways Finch API can interact with your SaaS application.

  • First, for each connected user, you are required to maintain a polling infrastructure at your end and periodically poll the Finch copy of the customer data. This approach only works when you have a limited number of connected users.
  • You can write your own sync functions for more frequency data syncs or for specific data syncing needs at your end. This ad-hoc sync is easier than regular polling, but this method still requires you to maintain polling infrastructure at your end for each connected customer.
  • Finch API also uses webhooks to send data to your SaaS app. Based on your preference, it can either send you notification via webhooks to start polling at your end, or it can send you appropriate payload whenever an event happens.

How does Knit API send data?

Knit is the only unified API that does NOT store any customer data at our end. 

Yes, you read that right. 

In our previous HR tech venture, we faced customer dissatisfaction over data storage model (discussed above) firsthand. So, when we set out to build Knit Unified API, we knew that we must find a way so SaaS businesses will no longer need to convince their customers of security. The unified API architecture will speak for itself. We built a 100% events-driven webhook architecture. We deliver both the initial and delta syncs to your application via webhooks and events only.

The benefits of a completely event-driven webhook architecture for you is threefold —

  • It saves you hours of engineering resources that you otherwise would spend in building, maintaining and executing on polling infrastructure.
  • It ensures on-time data regardless of the payload. So, you can scale as you wish.
  • It supports real time use cases which a polling-based architecture doesn’t support.

Finch API vs Knit API

For a full feature-by-feature comparison, see our Knit vs Finch comparison page →

Let’s look at the other components of the unified API (discussed above) and what Knit API and Finch API offers.

1. Authorization & authentication

Knit’s auth component offers a Javascript SDK which is highly flexible and has a wider range of use cases than Reach/iFrame used by the Finch API for front-end. This in turn offers you more customization capability on the auth component that your customers interact with while using Knit API.

2. Ongoing integration Management

The Knit API integration dashboard doesn’t only provide RCA and resolution, we go the extra mile and proactively identify and fix any integration issues before your customers raises a request. 

Knit provides deep RCA and resolution including ability to identify which records were synced, ability to rerun syncs etc. It also proactively identifies and fixes any integration issues itself. 

In comparison, the Finch API customer dashboard doesn’t offer as much deeper analysis, requiring more work at your end.

Final thoughts

Wrapping up, Knit API is the only unified API that does not store customer data at our end, and offers a scalable, secure, event-driven push data sync architecture for smaller as well as larger data loads.

By now, if you are convinced that Knit API is worth giving a try, please click here to get your API keys. Or if you want to learn more, see our docs
Insights
-
Aug 20, 2026

What is API Integration? The 2026 Complete Guide

Modern software stacks run on API integrations. The average enterprise now operates hundreds of SaaS applications - HR, payroll, CRM, support, finance, recruiting - and making those applications share data reliably is one of the most persistent engineering challenges product teams face. When an integration breaks, sales teams lose pipeline visibility, payroll runs on stale headcount data, and support tickets go unrouted. When integrations work well, they're invisible - and that's exactly the point. This guide covers what API integration is, how it works, the different types, real-world examples, tools, costs, and how the unified API model is replacing point-to-point custom builds at scale.

What is API integration?

API integration is the process of connecting two or more software applications through their APIs (Application Programming Interfaces) so they can exchange data automatically. Rather than requiring users to manually copy data between systems, API integration creates a persistent connection that keeps both systems in sync according to defined rules - without human intervention.

Since the applications you use cannot achieve their full potential in silos, API integration ensures that they can establish a secure, reliable and scalable connection which prevents an unauthorized exchange of data, but enables them to talk to each other.

Difference between API and integration

An API is the interface a software product exposes — it defines what data is available, how to request it, and what format it returns. API integration is the practical implementation: the code and architecture that uses that interface to connect two systems and keep them in sync. An API can exist without integration (a company publishes an API that nobody calls). Integration can exist without APIs (legacy EDI or file-based transfers). When you build a Workday-to-ADP payroll sync, you're building an API integration using both products' APIs.

Importance of APIs in integration

Before we delve deeper into the benefits of API integration, how it works, etc. let’s quickly look at how APIs play an important role in the integration ecosystem for businesses. APIs enable businesses to reorganize and establish such a relationship which allows them to interact as per business needs. This allows companies to achieve a high level of integration at lower development costs. They essentially act as a connecting thread, which is critical for integration.

If you follow this API integration process, you can create API integrations in-house to support application connectivity and data exchange.

How API integration works

An API integration works by sending HTTP requests from one system to another's API endpoint, receiving a response, transforming the data if needed, and writing it to the destination. In practice, most integrations run in one of two modes: polling (regularly checking the source for changes) or event-driven (the source system sends a notification — a webhook — the moment something changes).

Here's a concrete example:

Salesforce (CRM) ↔ HubSpot (marketing automation)

A sales team uses Salesforce to manage leads and HubSpot to run email campaigns. Without integration, a rep who advances a lead to"Qualified" in Salesforce can't reach them with the right campaign until someone manually exports a CSV — typically once a week.

With API integration:

•        A webhook in Salesforce fires when a lead's stage changes to "Qualified"

•        The integration layer receives the event and calls HubSpot's Contacts API to update the contact's lifecycle stage

•        HubSpot's campaign automation picks up the change and enrolls the lead in the correct nurture sequence within minutes

•        Campaign engagement data (email opens, link clicks)flows back to Salesforce automatically, so the sales rep sees it before calling

The integration runs continuously, requires no manual steps after setup, and eliminates the lag and errors that come with weekly manual syncs.

Type Of API Integration

There are two dimensions to API integration types: the protocol the APIs use, and the synchronisation pattern the integration follows.

Protocol types

Protocol Best for Data format Common in
REST Most modern SaaS APIs JSON CRM, HRIS, ATS, marketing tools
GraphQL Flexible, query-specific data retrieval JSON GitHub, Shopify, some HR tools
SOAP Enterprise and legacy systems XML Banking, ERP, government systems
gRPC High-performance internal services Protocol Buffers Microservices, real-time pipelines

REST accounts for the large majority of new SaaS API integrations. SOAP still appears in older enterprise systems — SAP, Oracle, and some banking APIs. GraphQL is used by platforms like GitHub and Shopify where clients need to specify exactly which fields to return. gRPC is primarily used for internal microservice communication rather than third-party product integrations.

Synchronisation patterns

•        Real-time (event-driven / webhooks): Data moves immediately when something changes. A new hire added to Workday fires a webhook; the downstream system creates the employee record within seconds. Lowest latency, most reliable for critical workflows.

•        Batch / scheduled sync: Data is pulled at regular intervals — hourly, nightly. Simpler to implement, acceptable for reporting and non-time-sensitive workflows.

•        Bidirectional: Changes in either system propagate to the other. Required for CRM ↔ support ticketing, where both teams update shared records.

•        Unidirectional: Data flows one way only. Typical for HRIS → payroll, where HR is the source of truth and payroll only reads from it.

How to build an API integration

The core process is consistent regardless of tools:

1.     Define the data flow: What data moves, in which direction, and how often? Which system is the source of truth for each field?

2.     Review API documentation: Understand authentication (OAuth 2.0, API key, JWT), rate limits, pagination, and webhook availability before writing code.

3.     Map data fields: Field names rarely match across systems. "employee_id" in one HRIS is "staff_code" in another. Document mappings before coding.

4.     Build and test authentication: OAuth flows require careful handling — token expiry, refresh logic, and scope management are the most common sources of silent integration failures.

5.     Handle errors explicitly: Rate limit errors(429), auth failures (401), and temporary unavailability (503) each need specific retry logic. Don't let failures fail silently.

6.     Test with realistic volumes: An integration that works for 100 records may break at 100,000. Test pagination, batch limits, and timeout behaviour before production.

7.     Monitor continuously: API schemas change without notice. Set alerts on error rate spikes, latency changes, and data volume drops.

Pre-launch checklist:

•        Auth flow tested including token refresh

•        Rate limit handling implemented (429 responses +exponential backoff)

•        Field mappings documented and validated with sample data

•        Error logging live before go-live

•        Pagination tested with full dataset

•        Webhook signature verification implemented

•        Rollback plan documented

API integration management

API integration is not simply about building and deployment, but involves constant maintenance and management. API integrations require comprehensive support at different levels.

First, you need to decide on a synchronisation model. Event-driven webhook integrations respond immediately to changes. Polling introduces latency and wastes API quota on unchanged data. Where the source system supports webhooks, use them.

Second, in terms of API integration management, you need to align on the data storage needs and how you seek to address them to store the volumes of data that are exchanged across applications.

Third, API integration management needs to ensure that any updates or upgrades to individual APIs are reflected in their integrations without disrupting the flow of work. Maintenance involves finding and updating changes in API schemas before anyone notices.

Finally, APIs can and do fail, which requires immediate error handling support and communication. Thus, API integration management is as important and engineering bandwidth as building and deployment and can impact the success of the overall integration experience and effectiveness.

How much does an API integration cost?

The cost of an API integration essentially depends on the compensation for your engineering team that will be involved in building the API integration, the time they will take and whether or not the full access to the API for the application in question is available freely or comes at a price.

In case the API is freely available, the estimated cost of an API integration can be considered as the following. Generally, three resources from the engineering team are involved in building an API integration. A Developer at a compensation of 125K USD, a Product Manager at 100K USD and a QA Engineer at a salary of 80K USD. Each one of these apportions a segment of their time towards building an API integration.

Secondly, an API integration can take anywhere between 2 weeks to 3 months to build, averaging out at about four weeks for any API integration. In such a scenario, an API integration cost stands at 10K USD on an average, which can go higher if the time taken is more or if you need to hire an engineering team just for building integrations with higher compensation. Similarly, this will increase if the APIs come at a premium cost. You can multiply the average cost of one integration with the number of integrations your company uses to get the overall API integration cost for your business.

The hidden cost is maintenance. Integration maintenance typically runs 15–20% of the original build cost annually — and that's assuming the underlying APIs don't change significantly. A portfolio of 30 integrations, each built at $10K, carries a $45,000–$60,000 annual maintenance overhead even before new build work is considered.

How to learn API integration?

If you are just getting started in your API integration journey, there are specific lessons that you must learn to ensure that you are able to achieve the quality of integration you seek. Follow these practices to start your API integration learning:

  • Understand you API integration requirements
  • Learn about different API, data formats, security protocols and authentication methods
  • Review API documentation
  • Get the API key and request API endpoint
  • Learn a programming language to code the API integration
  • Learn how to create data sets and data models and normalization
  • Get support from community of developers working on API integration

Benefits of API integration

While there are several ways businesses today are leading integrations between different applications they use, API integration has become one of the most popular ways, owing to the several benefits it brings for developers and business impact alike. Some of the top benefits of API integration include:

Reduced human effort

To begin with, API integrations significantly reduce the human effort and time your team might spend in connecting data between different applications. In the absence of API integration, your team members would have to manually update information across applications, leading to unnecessary efforts and wastage of time. Fortunately, with API integration, information between two applications, for instance, CRM and marketing software, can be directly updated, allowing your team members to focus on their functional competencies and expertise, instead of updating data and information. The interoperability brought along with API integration ensures that data is automatically exchanged, in real- time, leading to added efficiency.

Increased accuracy

A related benefit from the first one is the concern with manual errors. If one team member is expected to update several applications, there are chances of human error. Especially as and when the data becomes voluminous and has to be shared between multiple applications, it can lead to inaccuracies and inadequacies. However, with API integration, data exchange becomes accurate and free from human error, ensuring that all data exchanged is in usable condition and compatible to all applications involved.

Build complementary capabilities

API integrations help businesses leverage capabilities from other applications, while allowing them to focus on their core expertise. Conventionally, businesses focused on building everything in their application from scratch. However, with API integrations, they can rely on the complementary functions of other applications, while focusing on only building strengths. It relieves considerable engineering bandwidth and effort which can be used to develop core application features and functionalities.

Leverage applications better

When data is exchanged between applications, the usability of different features and benefits from different applications increase. As they have additional data from other applications, their potential to drive business benefits increase significantly. For instance, if you are using a marketing automation platform to run campaigns for your product. Now, if you get user data on how they are interacting with the product, how engaged they are and what their other expectations are, you can create a customized upselling pitch for them.

Thus, with API integration, data exchange not only makes business more smooth and efficient, but also helps you explore new business cases for the different applications that you have adopted, and at times, even identify new ways of creating revenue.  

Greater security

APIs have a strong security posture which protects them from threats, flaws and vulnerabilities. API integrations add a security layer with access controls which ensures that only specific employees have access to specific or sensitive data from other applications. API integration security is built upon measures of HTTP and supports Transport Layer Security (TLS) encryption or built-in protocols, Web Services Security. API integration can also help prevent security fraud that might occur during data exchange between two applications or if one application malfunctions.

With the help of token, encryption signatures, throttling and API gateways, API integration can help businesses securely exchange information and data between applications.

API integration tools & platforms

The right tooling depends on what you're building:integrations for your own team's workflows, or integrations you're delivering to your customers as part of your product. The distinction matters because the platforms designed for each are fundamentally different.

ApproachBest forScalabilityCost modelCustom / in-house buildOne-off critical integrations with specific requirementsDoesn't scale — each integration is its own codebaseHigh upfront dev time + ongoing maintenanceiPaaS (Workato, Zapier, MuleSoft)Internal workflow automation across your own toolsGood for internal; limited for customer-facing at scaleSubscription + per-task or per-connection feesEmbedded iPaaS (Paragon, Tray)SaaS product teams embedding integration UI for customersYou still build each integration; vendor handles connectorsPer-connection or per-MAUUnified API (Knit, Merge, Finch)Scaling customer-facing integrations across a categoryHigh — one integration covers all tools in the categoryPer-linked-account

When to use iPaaS: Your goal is internal automation —connecting the tools your team uses. Zapier, Workato, and MuleSoft are fast to configure, cover thousands of connectors, and can be managed by non-engineering teams.

When to use Unified API: You're a SaaS product and need to integrate with all the HRIS, ATS, CRM, or payroll tools your customers use. Instead of building 30 separate integrations, you build once against the unified API and get coverage across the whole category. Knit provides this for HRIS, ATS, CRM, payroll, and ticketing — with an event-driven architecture and a pass-through model that doesn't store customer data.

API integration and customer exp

In addition to the above mentioned benefits of API integrations, it is interesting to note that API integration has a positive impact on customer experience as well. There are multiple ways in which API integration can help businesses serve customers better, leading to greater stickiness, retention and positive branding. Here are a few ways in which API integration impacts customer experience:

Customized customer experience

By integrating data about customers from different sources, companies can customize the experience they provide. For instance, conversations with the sales team can be captured and shared for marketing campaigns which can exclusively focus on customer pain points rather than simply sharing all product USPs. At the same time, marketing campaigns can be directed towards customer purchase patterns to ensure customers see what they are interested in.

Reduced inter departmental hand-offs

API integration ensures that customer data once collected can be shared between different departments of a company and the customer doesn’t have to interact with the business multiple times. This also ensures that there is no error in multiple data exchanges with the customers, leading to an accurate and streamlined manner of interaction. Thus, with API integration, customer interactions become more efficient and with reduced errors.

More customer penetration

API integrations can help businesses penetrate into new markets and address customer demands better. Since they ensure that businesses don’t have to build new functionalities from scratch, they can enhance customer experience by focusing on their core capabilities and providing additional functionalities with API integration. Thus, API integration helps businesses meet the growing demands of customers to prevent churn or dissatisfaction with lack of functionalities.

Reduced context switching

API integration ensures that customers can access or exchange information between different applications easily without switching between applications. This significantly reduces the friction for customers and the time spent in toggling between different applications. Thus, a smooth customer experience that most expect ensues.

API integration examples

Now that you understand why API integrations are important, it is vital to see some of the top use cases for examples of API integration. Here, we have covered some areas in which API integrations are most commonly used:

HR & Payroll

Workday ↔ ADP: When a new employee is created in Workday, their compensation, department, and start date push to ADP automatically. Pay changes, terminations, and leave adjustments flow in real time — eliminating the weekly CSV uploads and the payroll errors they produce.

Recruiting & Onboarding

Greenhouse ↔ BambooHR: When a candidate is marked"Hired" in Greenhouse, an employee record is automatically created in BambooHR. The recruiter doesn't re-enter data. The new hire's Day 1 system access can trigger immediately off the same event.

Sales & Marketing

Salesforce ↔ HubSpot: Lead status changes in Salesforce update the HubSpot contact lifecycle, triggering the right nurture sequence automatically. Campaign engagement data — emails opened, links clicked — flows back to Salesforce so sales reps have context before calling.

Finance

QuickBooks ↔ Stripe: Every payment processed in Stripe creates corresponding invoice in QuickBooks. Refunds and failed charges sync automatically. Month-end reconciliation that previously took hours now takes minutes.

Customer Support

Zendesk ↔ Salesforce: Support tickets in Zendesk are linked to CRM account records in Salesforce. When a ticket opens, the support agent sees the account's full history — open deals, renewal date, previous tickets —without leaving their ticketing tool.

E-commerce

Shopify ↔ Warehouse Management System: Order data flows from Shopify to the WMS in real time. Inventory updates flow back to Shopify to prevent overselling. Returns trigger inventory adjustments automatically on both sides.

AI Agents (2026)

AI agent ↔ HRIS via MCP: A growing pattern in 2026 is AI agents that call HRIS and CRM APIs — often through MCP (Model Context Protocol)servers — to retrieve context before executing tasks. An HR assistant agent might pull an employee's leave balance, compensation history, and department from Workday before drafting a response to a benefits query. No human in the loop; the integration provides the live data the agent needs.

API integration challenges

While API integrations have several benefits that can significantly help businesses and engineering teams, there are a few challenges along the way, which organizations need to address in the very beginning.

API access is tiered and inconsistent

To begin with, not all applications provide all functionalities in their application for free to all users. While some might have an additional charge for API access, others might only provide APIs to customers above a certain pricing tier. Thus, managing 1:1 partnerships with different applications to access their APIs can be difficult and unsustainable as the number of applications you use increases.

APIs can fail

When you are using API integrations, each component of your business is dependent on multiple applications. It is normal for APIs to fail or stop working once in a while. Factors such as uptime/ downtime, errors, latency, etc. can all lead to API failure. While individually, API failure may not have a big impact. However, when you have multiple applications connected, it can break the flow of work and disrupt business continuity. Especially, if you are offering API integrations along with your product to the client, API failure can lead to business disruption for them, resulting in a poor customer experience.

Some API integrations require deep tech

While most API integrations focus on facilitating data connectivity and exchange between applications, there might be a requirement from integrations to analyze the data from one application and filter it out for different fields/ understanding for the next application. However, simple or conventional API integration cannot achieve this, and this will require some external developer bandwidth to achieve the deep tech functionalities.

APIs can lack compatibility

Each application or integration has its own data models, nuances and protocols, which are unique and mostly different from one another. Even within the same segment or category, like CRM, applications can have different syntax or schemas for the same data field. For instance, the lead name in one application can be Customer_id while for another it can be cust_id. This might require developers to learn data logic for each application, requiring unnecessary bandwidth.

Maintenance burden compounds at scale

Every custom integration is a maintenance obligation. APIs are updated, endpoints deprecated, and authentication schemes changed — often without advance notice. A team running 10 custom integrations might absorb one API change per month. A team running 50 is managing a full-time maintenance function. This is the primary reason product teams at scale move to integration platforms rather than maintaining in-house connections.

API integration development is costly

Developing API integrations in house can be quite expensive and resource intensive. First of all, finding the right developers to build API integrations for your use can be very difficult. Second, even if you are able to find someone, the process can take anywhere between a few weeks to a few months. That’s when the developer understands the logic of the application and API integration can take place. This high time consumption also comes at a cost for the time the developer spends on API integration. Since the salary of a developer can be anywhere between $80K to $125K, API integration development can cost 1000s of dollars for companies.

API integration management and upgradation is time consuming

The story doesn’t end once an API integration is in place. APIs need to be maintained and continuously upgraded whenever an application updates itself. At the same time, as mentioned, APIs can fail. In such a situation, your non-technical teams will find it difficult to maintain the APIs, putting the reliance again on your developers, who might be required to fix any bugs. Thus, someone with technical knowledge of integration maintenance has to look over updates and other issues.

Rise of Unified API

As the number of applications a business uses increases, as well as the APIs become more complex, with each one having its own set of peculiarities, there has been a rise of what we today call unified APIs. A unified API primarily normalizes data nuances and protocols from different APIs into one normalized data model from a similar category of applications, which organizations can use to integrate with applications that fall therein. It adds an additional abstraction layer on top of other APIs and data models.

One of the best use cases for unified API is when you are offering different integrations to your customers from a single segment. For instance, if you are providing your customers with the option to choose the CRM of their choice and integrate with your system, a unified API will help ensure that different CRM platforms like Salesforce, Zoho, Airtable, can all be connected via a single API and your developers don’t have to spend hours in finding and configuring APIs for each CRM. Some of the top unified API examples include:

  • CRM API which helps you connect different CRM software like Zoho, Airtable, Salesforce
  • HRIS/ HRMS API which enables you to connect different HR software used for hiring, application tracking, employee attendance, payroll, etc.
  • Accounting API which focuses on integrating differentiating accounting and payment related software for seamless budgeting, payouts, etc.
  • Calendar API which enables you to connect different calendars that you might be using like iCal, Outlook calendar to ensure that you don’t miss any meetings or important dates

Let’s quickly look at some of the key benefits that a unified API will bring along to manage API integrations for businesses:

  • Enables data normalization to ensure that data is translated into a stand ard format which can be easily ingested
  • Reduces API integration costs, developer time and overall resource consumption for deployment and maintenance
  • Covers a wide range of data protocols, formats, models and nuances with coverage across all types of API including REST, SOAP, GraphQL, etc.
  • Promotes a single access point for all data, mostly built in REST, which is one of the easier architectures
  • Facilitates consistency in pagination and filtering

Therefore, unified API is essentially a revolution in API integration, helping developers take out all the pain for integrating applications with API, where they only focus on reaping the benefits and developing core product functionalities.

API integration questions

Before we move on to the last section, it is important to check whether or not you are now able to answer the key API integration questions that might come in your mind. Some of the frequently asked API integration questions include:

What is API integration?

API integration is the process of connecting two or more software applications through their APIs so they can exchange data automatically. When a customer updates their status in your CRM, API integration can propagate that change to your support system and billing platform without any manual intervention. The connection runs continuously, handles authentication, data transformation, and error recovery, and operates according to defined rules.

What are the types of API integration?

API integrations vary by protocol and synchronisation pattern. By protocol: REST (most common in modern SaaS), SOAP (enterprise and legacy systems), GraphQL (flexible query APIs), and gRPC (high-performance internal services). By sync pattern: real-time event-driven (webhooks), batch/scheduled polling, bidirectional sync, and unidirectional sync. Most product integrations use REST over webhooks for real-time, bidirectional data exchange.

What is the difference between an API and API integration?

An API is the interface a software product exposes — it defines what data is available, how to request it, and what format it returns. API integration is the practical implementation: the code and architecture that uses that interface to connect two systems and keep them in sync. An API can exist without integration; integration requires a connection method (usually APIs in modern SaaS).

What are the best tools for API integration?

The right tool depends on what you're building. For internal workflow automation, iPaaS platforms like Zapier, Workato, or MuleSoft are fastest. For product teams building customer-facing integrations across a category of tools (HRIS, ATS, CRM), unified API platforms like Knit, Merge, or Finch cover the whole category from a single integration point. Custom builds make sense for one-off integrations with highly specific requirements.

How much does an API integration cost?

A simple integration typically costs $8,000–$15,000 in engineering time. A complex enterprise integration (bidirectional sync, legacy systems, custom data models) can reach $40,000–$80,000 or more. Ongoing maintenance adds 15–20% annually. Teams building more than 10–15 integrations usually find integration platforms more cost-effective than custom builds at scale.

What is a unified API and how is it different from stand ard API integration?

Stand ard API integration is a point-to-point connection between two specific systems — you build one integration for Workday, a separate one for BambooHR, another for Personio. A unified API sits above those: it normalises the data models across all tools in a category and exposes a single API your code talks to. Build once, get coverage across the whole category. The unified API vendor maintains each underlying connector, so you're not affected when Workday updates its API.

How do AI agents use API integration in 2026?

AI agents increasingly use API integrations — often through MCP (Model Context Protocol) servers — to retrieve live context before executing tasks. An HR assistant agent answering a question about an employee'sleave balance needs a live call to the HRIS; a sales agent drafting a follow-up email needs current CRM data. The integration layer handles authentication and data retrieval; the agent handles reasoning and output. The event-driven, real-time nature of webhook-based integrations is particularly well-suited to agent workflows where stale data produces wrong answers.

Wrapping up: TL:DR

As we draw this discussion to a close, it is important to note that the SaaS market and use of applications will see an exponential growth in the coming years. The SaaS market is expected to hit $716.52 billion by 2028. Furthermore, the overall spend per company on SaaS products is up by 50%. As companies will use more applications, the need for API integrations will continue to increase. Thus, it is important to keep in mind:

  • We are now in an API first economy where applications have a central focus on building consumable, reusable and secure APIs
  • API integration will play an important role in the coming years, as APIs become more pronounced, sophisticated and voluminous
  • API integrations reduce the manual effort for data exchange, enable companies to better use their applications and build complementary capabilities
  • However, creating and maintaining API integrations in-house can be very expensive, time consuming as APIs might fail, may not be compatible and might require deep tech expertise
  • Therefore, the world is seeing a rise in unified APIs, which add an additional abstraction layer on data models to help connect APIs of one segment together. It normalizes the data that gets exchanged between the applications and helps developers with reduced costs, consistent pagination, etc.

Thus, companies must focus on exploring the potential of APIs, especially for the top segment of products they routinely use, to make connectivity and exchange of data smooth and seamless between applications, leading to better productivity, data driven decision making and business success.  

Insights
-
Aug 20, 2026

9 Best Unified API Platforms in 2026: Compared for B2B SaaS Teams

In 2026, the "build vs. buy" debate for SaaS integrations is effectively settled. With the average enterprise now managing over 350+ SaaS applications, engineering teams no longer have the bandwidth to build and maintain dozens of 1:1 connectors.

When evaluating your SaaS integration strategy, the decision to move to a unified model is driven by the State of SaaS Integration trends we see this year: a shift toward real-time data, AI-native infrastructure, and stricter "zero-storage" security requirements.

In this guide, we break down the best unified API platforms in 2026, categorized by their architectural strengths and ideal use cases.

What is a Unified API? (And Why You Need One Now)

A Unified API is an abstraction layer that aggregates multiple APIs from a single category into one standardized interface. Instead of writing custom code for Salesforce, HubSpot, and Pipedrive, your developers write code for one "Unified CRM API."

While we previously covered the 14 Best SaaS Integration Platforms, 2026 has seen a massive surge specifically toward Unified APIs for CRM, HRIS, and Accounting because they offer a higher ROI by reducing maintenance by up to 80%.

Top Unified API Platforms for 2026

1. Knit (Best for Security-First & AI Agents)

Knit has emerged as the go-to for teams that refuse to compromise on security and speed. While "First Gen" unified APIs often store a copy of your customer’s data, Knit’s zero-storage architecture ensures data only flows through - it is never stored at rest.

  • Key Strength: 100% events-driven webhook architecture. You get data in real-time without building resource-heavy API polling and throttling logic.
  • Highlight: Knit is the primary choice for developers building Integrations for AI Agents, offering a specialized SDK for function calling across apps like Workday or ADP.
  • Ideal for: Security-conscious enterprises and AI-native startups.
The strongest evidence for this comes from a real customer example: Multiplier, an EOR amd payroll platform, needed a Workday integration that went beyond the basics and says Merge's team told them the connector was "tricky" and might ship "next quarter." Knit provided a Workday sandbox the same week and shipped a custom API within days. Two years later with Knit, Multiplier reports a 3x faster time-to-first-sync for new enterprise clients

2. Merge

Merge remains a heavyweight, known for its massive library of integrations across HRIS, CRM, ATS, and more. If your goal is to "check the box" on 50+ integrations as fast as possible, Merge is a good choice

  • Key Strength: Excellent observability and a dashboard that allows non-technical support teams to troubleshoot API authentication issues.
  • The Trade-off: Merge relies on a storage-first, polling-based architecture. For teams requiring a more secure alternative to Merge, Knit’s pass-through model is often preferred.
  • Ideal for: Companies needing to go "wide" across many categories quickly.

3. Nango

Nango caters to the "code-first" crowd. Unlike pre built unified APIs, Nango gives developers tools to build those and offers control through a code-based environment.

  • Key Strength: Custom Unified APIs. If a standard model doesn’t fit, Nango lets you modify the schema in code.
  • Ideal for: Engineering teams that need the flexibility of custom-built code

4. Kombo

If your target market is the EU, Kombo offers great coverage. They offer deep, localized support for fragmented European platforms

  • Key Strength: Best in class coverage for local European providers.
  • Ideal for: B2B SaaS companies purely focus on Europe as the core market

5. Apideck

Apideck is unique because it helps you "show" your integrations as much as "build" them. It’s designed for companies that want a public-facing plug play marketplace.

  • Key Strength: "Marketplace-as-a-Service." You can launch a white-labeled integration marketplace on your site in minutes.
  • Ideal for: Product and Marketing teams using integrations marketplace as a lead-generation engine.

6. Finch

Finch specializes exclusively in employment systems - HRIS and payroll. It connects to 200+ payroll and HR providers and is particularly strong for use cases involving benefits administration, compensation data, and workforce analytics.

  • Key Strength: Raw breadth of employment system connections - it offers assisted / manual integration options for platforms that don't have an API.
  • Where it falls short: limited to employment data - it doesn't cover CRM, or other categories - and assisted integrations could be a security concern

7. Codat

Codat focuses on financial data connectivity - accounting platforms, banking, and commerce systems.

  • Ideal for: Fintech, lenders, and financial SaaS products that need only accounting and banking data

8. Unified.to

Unified.to offers one of the broadest category coverages in the market including long tail like forms, shipping or verification integrations.

  • Key Strength: Category breadth and coverage
  • Where it falls short: Depth of integrations in core categories like HRIS, ATS, ERP 

9. Ampersand

New and popular for products that need to both read and write data into customer systems like CRMs and ERPs

Comparative Analysis: 2026 Unified API Rankings

Platform Vertical Focus Best For Architecture Pricing
Knit HR, Payroll, ATS, CRM Security-first teams, AI agent workflows, zero data storage Event-driven, webhook-first, no data at rest Per-connection
Merge HR, ATS, CRM, Accounting, Ticketing Multi-category coverage with strong observability Storage + polling Per-linked-account
Nango Horizontal (300+ APIs) Engineering teams wanting customizable, self-hostable unified API Code-first, open-source Free / cloud plans
Kombo HR, ATS (Europe focus) EU-focused SaaS products needing localized HRIS coverage Polling + webhooks Per-connection
Apideck HR, CRM, Accounting, Ecommerce Widest category coverage, marketplace-as-a-service REST + webhooks Per-connection
Finch HRIS, Payroll only Deepest employment system coverage (200+ providers) Polling-based Per-connection
Codat Accounting, Banking, Commerce Fintech and lenders needing financial data (QuickBooks, Xero, Sage) REST + webhooks Per-connection
Unified.to Horizontal (25 categories) Broadest coverage + MCP platform for AI agents (429 sources) Real-time + MCP Per-connection
Ampersand CRM, HRIS (bidirectional) Deep bidirectional sync, custom objects, enterprise write access Event-driven Usage-based

Deep-Dive Technical Resources

If you are evaluating a specific provider within these unified categories, explore our deep-dive directories:

The Verdict: Choosing Your Infrastructure

In 2026, your choice of Unified API is a strategic infrastructure decision.

  • Choose Knit if you are building for the Enterprise or AI space where API security and real-time speed are non-negotiable.
  • Choose Merge if you have a massive list of low-complexity integrations and need to ship them all yesterday.
  • Choose Nango if your developers want to treat integrations as part of their core codebase and maintain it themselves

Ready to simplify your integration roadmap?

Sign up for Knit for free or Book a demo to see how we’re powering the next generation of real-time, secure SaaS integrations.

Frequently Asked Questions

What is a unified API?

A unified API is an abstraction layer that normalises multiple third-party APIs from the same category - HRIS, CRM, ATS, accounting - into a single standardised interface. Instead of writing separate integration code for Salesforce, HubSpot, and Pipedrive, your team writes code once against one unified CRM API and gains coverage across all supported providers. Unified APIs handle per-provider authentication, field mapping, and schema differences so product teams can ship integrations faster without maintaining individual connectors.

What are the best unified API platforms in 2026?

The leading unified API platforms in 2026 are: Knit (best for security-conscious teams and AI agent integrations - zero-storage, fully webhooks-driven architecture); Merge (broadest integration catalogue across HRIS, CRM, ATS, and accounting); Nango (code-first platform for engineering teams needing custom unified schemas); Kombo (strongest coverage for European HRIS providers); and Apideck (marketplace-as-a-service for teams wanting a white-labelled integration marketplace). The right choice depends on your security requirements, target verticals, and whether you need pre-built or customisable integration logic.

What is the best unified API platform for connecting multiple SaaS applications?

For connecting multiple SaaS applications, the best platform depends on your primary integration category. For HRIS and ATS integrations, Knit and Kombo offer strong coverage. For broad multi-category coverage (CRM, HRIS, accounting, ticketing), Merge provides the widest catalogue. For engineering teams who prefer to customise and create their own unified schema and are okay with complexity, Nango's code-first approach gives the most flexibility. Across all platforms, evaluate: number of supported connectors, data storage model (pass-through vs. stored), webhook support, and pricing structure.

How do unified APIs differ from iPaaS tools like Zapier or Make?

Unified APIs and iPaaS tools solve different problems. iPaaS tools (Zapier, Make, Workato) are workflow automation platforms - they connect apps through pre-built triggers and actions, suited for internal automation with minimal code. Unified APIs are infrastructure for product teams - they provide a normalised data layer that your SaaS product uses to offer native integrations to customers. If you're building a product feature that lets your customers connect their own Salesforce or BambooHR account, you need a unified API. If you're automating an internal business process, iPaaS is typically sufficient.

What should early-stage SaaS startups look for in a unified API platform?

Early-stage startups should prioritise: coverage of the integrations your first customers actually need (not total connector count); transparent usage-based pricing that scales with your customer count; fast time-to-first-integration (ideally days, not weeks); and a security model that won't block enterprise deals (SOC 2 compliance, pass-through data handling). Avoid platforms with high flat monthly fees before you have product-market fit. Knit offers a startup-friendly pricing model with enterprise-grade security from day one, making it a common choice for AI-native and security-conscious early-stage teams.

What are the best practices for implementing unified APIs in SaaS applications?

Key best practices: use webhooks over polling wherever the unified API supports them - polling creates unnecessary latency and burns API quota; request only the field scopes your product actually needs during OAuth to reduce user friction; build your data model around the unified schema rather than any single provider's field names; test with real sandbox credentials across at least two providers before shipping; and monitor integration health per customer with alerting on auth failures. Avoid coupling your product's core data model too tightly to any one provider's object structure.

What is a zero-storage unified API and why does it matter?

A zero-storage (or pass-through) unified API never stores a copy of your customers' data at rest - data flows through the platform directly to your application and is not cached or persisted on the vendor's infrastructure. This matters for enterprise sales: security-conscious buyers and regulated industries (healthcare, finance, government) increasingly require that integration infrastructure does not hold their employee or customer data. First-generation unified APIs use a storage-first model where data is synced and stored in the vendor's database. Knit's zero-storage architecture is designed for teams where data residency and security posture are deal-critical requirements.

Which unified API platform is best for HRIS integrations?

For HRIS integrations, the top choices are Knit (strong US and global HRIS coverage, zero-storage model, preferred for AI agent workflows accessing employee data), Kombo (deepest coverage for European HRIS providers), Finch (For assisted integrations and coverage for products that don't have APIs), and Merge (broad HRIS catalogue with good observability tooling). The best fit depends on your customers' geography, whether you need payroll data alongside HR data, and your security requirements around employee data handling.

Which unified API platforms support AI agents and MCP in 2026?

Knit offers MCP (Model Context Protocol) servers for HRIS, ATS, payroll, and CRM data - allowing AI agents to query and act on enterprise data via standardized tool calls. Unified.to also offers MCP support across its catalogue. For teams building AI-native products that need live enterprise data, both are strong options. The key differentiator is Knit's depth in core categories vs unified breadth in categories supported.

How do I choose between Knit, Merge, and Finch for HRIS integrations?

Choose Knit if security architecture matters (zero data storage, event-driven webhooks) or if you need HRIS alongside ATS, CRM, or MCP/AI agent capabilities. Choose Merge if you need the broadest multi-category coverage with strong observability tooling. Choose Finch if your use case is exclusively payroll and employment data and you're okay with manual / assisted integrations

Insights
-
Aug 19, 2026

Data Integration Platform vs. Unified API: What's the Difference (and Which Do You Actually Need)?

If you searched "data integration platform" hoping to find a way to add live integrations to your own product, you're about to buy the wrong thing. And if you searched it looking for a way to get your CRM, ERP, and product data into one warehouse for analytics, most of what gets called a "unified API" won't help you either. These two phrases sound like synonyms. They aren't, and the market has already drawn a clean line between them; most content just doesn't tell you where it is.

The one-sentence version

A data integration platform moves data between systems, usually into a central warehouse, for analytics and reporting. A unified API lets your own product read and write data from your customers' other tools, live, as a feature. Different buyer, different data path, different job to be done.

What is a data integration platform?

This is the older, more established category, dominated by ETL/ELT tools: Fivetran, Airbyte, Matillion, dbt, Stitch, and Hevo Data on the "extract and load" side; Informatica, MuleSoft, Boomi, SnapLogic, and Talend (now Qlik Talend Cloud) on the enterprise iPaaS side; and cloud-native options like Azure Data Factory, AWS Glue, Google Cloud Dataflow, and Oracle Data Integrator. The destination is almost always a warehouse or lakehouse (Snowflake, Databricks, BigQuery) where a data or analytics team runs reporting, BI, and downstream modeling.

The user here is a data engineer, analytics engineer, or data platform team. The job is: "I need Salesforce, NetSuite, and product usage data sitting in one place so I can build dashboards and run SQL against it." Freshness is usually measured in minutes to hours, not milliseconds. Even "real-time" ELT tools typically mean 5–15 minute sync intervals, not live pass-through.

What is a unified API?

A unified API (Knit, Merge, Nango, Apideck, Unified.to, Kombo, Finch, Codat, and others) solves a completely different problem: a SaaS company wants to let its own customers connect their HRIS, ATS, CRM, or accounting tool directly inside the SaaS product itself, without building and maintaining a separate integration for every vendor in that category.

The buyer/user is a product or engineering team, not a data team. The job is: "Our customers use 40 different HRIS systems, and we need one normalized data model and one API so we can build a feature, not 40 point integrations." Data typically flows through the SaaS product live, often via webhooks, rather than landing in a warehouse for offline analysis.

Side by side

Data integration platform vs. unified API — side by side

  Data integration platform Unified API
Who buys it Data / analytics engineering team Product / software engineering team
What it's for Centralizing data for BI and reporting Powering a live, customer-facing product feature
Typical destination Data warehouse or lakehouse Your own application, live
Data ownership model Usually stores a full copy in the warehouse Mixed — some vendors store a copy, others pass data through without storing it
Typical freshness Minutes to hours (batch / micro-batch) Real-time or near-real-time, often webhook-driven
Example vendors Fivetran, Airbyte, Informatica, MuleSoft, Boomi, SnapLogic Merge, Nango, Apideck, Unified.to, Knit, Kombo, Finch, Codat

The category hiding in the middle: reverse ETL and real-time bidirectional sync

There's a third bucket that gets lumped into "data integration" but behaves more like a unified API in one important way: it writes data back out to live systems instead of just reading it in.

Reverse ETL tools like Hightouch and Census take data that's already been centralized in a warehouse and push it back out to operational tools (Salesforce, HubSpot, ad platforms) so a sales or marketing team can act on it without waiting for an analyst. Directionally, this is warehouse-to-tool. Hightouch's own site describes syncs as a way to "get data from your source to destination" and markets real-time activation, though its public materials don't spell out whether syncs run continuously or on a defined interval; treat "real-time" here as a capability claim rather than a documented architecture detail.

Real-time bidirectional sync tools go further. Stacksync, for instance, claims "bidirectional, millisecond-latency sync across CRMs, ERPs, databases, warehouses, and 1,000+ SaaS apps," with a published example of a purchase order syncing end-to-end in 766ms, plus field-level conflict resolution for cases like inventory counts changing simultaneously in a warehouse system and a storefront. That's a meaningfully different architecture from batch reverse ETL: two-way, live, with rules for what happens when both sides change at once.

Where does Knit fit into this? Architecturally, it sits closer to the Stacksync end than the ETL end. Knit's core unified API is webhook-first and supports two-way syncs (reads and writes) without holding a permanent copy of customer data at rest. But the buyer is different: Stacksync is generally sold as an internal operations tool, keeping a company's own systems in sync with each other. Knit is built for a SaaS company to expose its customers' connected tools as a feature inside its own product. Same underlying sync mechanics, a different job; that distinction matters if you're evaluating either category by architecture alone rather than by who's actually going to use it.

A four-question decision framework

  1. Is the output a dashboard/report, or a product feature?
    Dashboard → data integration platform. Feature your customers use → unified API.
  2. Does the data need to land somewhere for SQL analysis, or does it just need to move live?
    Land in a warehouse → data integration platform. Move live between two systems → unified API or real-time sync tool.
  3. Who's the buyer internally?
    A data/analytics team → data integration platform. A product/engineering team shipping a customer-facing integration → unified API.
  4. Is this an internal system-to-system sync (your CRM and your ERP staying consistent), or a customer-facing one (your product reading/writing a customer's tools)?
    Internal → reverse ETL or real-time bidirectional sync tool. Customer-facing → unified API.

The common mistake

The most expensive version of this mistake is buying an ETL/ELT tool to solve a product-integration problem: using Fivetran or Airbyte to try to power a live "connect your HRIS" feature inside a SaaS product. It technically moves data, but it's built for scheduled batch loads into a warehouse, not live, tenant-scoped API calls a product can serve to end users on demand. Teams that try this usually end up rebuilding the whole thing on a unified API or native integrations six to twelve months later. The reverse mistake, buying a unified API to centralize internal analytics data, is less common but just as wasteful, since you'll pay for real-time, tenant-aware infrastructure you don't need for a batch reporting job that feeds data to your data lake.

Where Knit fits (and where it doesn't)

Knit is a unified API, not a ETL / data integration platform in that sense. If your problem is "get all our business data into Snowflake for the analytics team," a unified API isn't the right tool regardless of vendor; look at Fivetran, Airbyte, or a similar ELT platform instead. If your problem is "let our customers connect their HRIS, ATS, or CRM inside our own product," that's the unified API and real-time bidirectional sync space, and it's the problem Knit's core product is built for.

Separately, Knit also offers an Integrations Agent, an AI workflow builder that generates and deploys integration code from a plain-English description (for example, "sync Stripe payments to QuickBooks"). It's closer to a code-first alternative to Zapier or n8n for internal automations than to either category above.

FAQ

Is Fivetran a unified API?

No. Fivetran is an ELT (extract-load-transform) tool that moves data from source systems into a warehouse on a scheduled basis. It has no concept of serving live, tenant-scoped data to an end-user-facing product feature, which is the core job a unified API does.

Is a unified API a type of data integration platform?

Only in the loosest possible sense: both move data between systems. In practice, "data integration platform" is used almost exclusively to mean ETL/ELT and enterprise iPaaS tools aimed at data teams, while "unified API" refers specifically to normalized, category-wide APIs aimed at product teams. Treating them as interchangeable will point you at the wrong vendor list.

What's the difference between reverse ETL and a real-time bidirectional sync tool?

Reverse ETL (Hightouch, Census) is one-directional, warehouse to operational tool, and typically scheduled. Real-time bidirectional sync (Stacksync, and architecturally, Knit's core sync layer) writes both directions live, with conflict handling for simultaneous changes on both sides.

Can I use a data integration platform and a unified API together?

Yes, and many teams do. A unified API powers the live, in-product integration feature, while a scheduled ELT job separately pulls a copy of the same category of data into a warehouse for the analytics team, on its own cadence. They're solving different problems for different people, not competing for the same budget line.

Does Knit store customer data?

Knit's core sync layer is webhook-first and designed not to hold customer data at rest permanently; it's built to move data live rather than warehouse it. That's a meaningfully different data-retention posture from an ETL tool, whose entire job is to create and retain a copy of your data in a destination warehouse.

The takeaway

"Data integration platform" and "unified API" get used almost interchangeably by people who haven't needed either yet, but the market itself treats them as two separate, well-established categories with almost no vendor overlap. If you're not sure which one you need, start from the problem you're looking to solve and how you plan to use the product - a data team building dashboards wants an ETL tool, a product team shipping a customer-facing integration wants a unified API, and the rest of the decision mostly falls out from there.

API Directory
-
Aug 27, 2026

ADP API Endpoints and Directory

ADP API

ADP is an industry leader offering a comprehensive human capital management suite (HCM solutions), bringing together payroll, attendance, HR, time, insights, and other services under one roof. Overall, ADP offers a suite of APIs that developers can get access to via the ADP marketplace. The ADP marketplace contains two types of applications that developers can use based on their use case, i.e., Data Connector and End User Application. ADP APIs are designed using an event-based pattern for resource management. ADP provides RESTful APIs.

ADP API follows OpenID Connect and Open Authorization (OAuth) 2.0 flows for comprehensive security. For each of them, ADP provides access tokens, which are used for secure calls to protect ADP Web APIs. Essentially, an access token is a time-bound token, or credential, which can be used to access protected ADP Web APIs restricted to an access scope. Access tokens are provided to the application during the integration process as part of the OpenID Connect and OAuth 2.0 authentication and authorization flow.

Looking to dive deep into how ADP API works? Check our detailed ADP API Guide to learn more on ADP authentication, best practices and more.

ADP API Authentication

To access and interact with ADP's APIs and authenticate users via single sign-on (SSO), you'll need a Certificate Signing Request (CSR). Accessing ADP's web services requires both a private key and a corresponding Web Services (WS) Certificate. This certificate shares client information with ADP, while the private key verifies the client's authenticity.The WS Certificate can either be generated through an automated process (ideal for those building a marketplace application) or through a manual process (ideal for those building their own business application). For step-by-step instructions on either path, see ADP's own guide to generating a Certificate Signing Request. Knit handles this certificate and token-exchange process for you as part of connecting to ADP Workforce Now, so you don't need to manage WS Certificates or renewal cycles yourself.

ADP API Events and Endpoints

ADP API (ADP Workforce Now) uses the following endpoints to facilitate the flow of information and data across channels.

HR Events

Worker Name Changes

  • POST /events/hr/v1/worker.birth-name.change : This API updates a worker's birth name.
  • GET /events/hr/v1/worker.birth-name.change/meta : This API endpoint retrieves metadata for the 'worker.birth-name.change' event.
  • POST /events/hr/v1/worker.legal-name.change : This API allows a worker to change their legal name in a given context.
  • GET /events/hr/v1/worker.legal-name.change/meta : This API endpoint retrieves metadata for the worker legal name change event.
  • POST /events/hr/v1/worker.preferred-name.change : This API allows a worker to change their preferred name in a given context.
  • GET /events/hr/v1/worker.preferred-name.change/meta : This API endpoint retrieves metadata for the event of changing a worker's preferred name.

Worker Status Changes

  • POST /events/hr/v1/worker.marital-status.change : This API allows for changing a worker's marital status.
  • GET /events/hr/v1/worker.marital-status.change/meta : This API endpoint retrieves metadata for the event of a worker's marital status change.
  • POST /events/hr/v1/worker.military-classification.change : The Change Worker Military Classification API allows for updating a worker's military classification details.
  • GET /events/hr/v1/worker.military-classification.change/meta : This API endpoint retrieves the metadata for the worker military classification change event.
  • POST /events/hr/v1/worker.military-status.change : This API endpoint is used to change the military status of a worker.
  • GET /events/hr/v1/worker.military-status.change/meta : This API endpoint retrieves metadata for the worker military status change event.

Worker Address Changes

  • POST /events/hr/v1/worker.legal-address.add : This API allows a worker to add a legal address.
  • POST /events/hr/v1/worker.legal-address.change : The Worker Legal Address Change API allows for updating the legal address of a worker.
  • POST /events/hr/v1/worker.legal-address.remove : The Worker Legal Address Remove API allows for the removal of a worker's legal address.
  • POST /events/hr/v1/worker.personal-address.add : The Add Worker Personal Address API allows a worker to add their personal address information.
  • POST /events/hr/v1/worker.personal-address.change : The Worker Personal Address Change API allows for updating the personal address of a worker.
  • POST /events/hr/v1/worker.personal-address.remove : This API allows a worker to remove a personal address from their records.

Worker Communication Changes

  • POST /events/hr/v1/worker.business-communication.email.add : This API allows a worker to add a business email address.
  • POST /events/hr/v1/worker.business-communication.email.change : This API allows a worker to change their business email address.
  • POST /events/hr/v1/worker.business-communication.email.remove : This API allows a worker to remove their business email address.
  • POST /events/hr/v1/worker.business-communication.fax.add : This API allows a worker to add a business fax number.
  • POST /events/hr/v1/worker.business-communication.fax.change : This API allows a worker to change their business fax number.
  • POST /events/hr/v1/worker.business-communication.fax.remove : This API allows a worker to remove their business fax number.
  • POST /events/hr/v1/worker.business-communication.landline.add : The Add Worker Business Landline API allows a worker to add a business landline number to their profile.
  • POST /events/hr/v1/worker.business-communication.landline.change : This API allows a worker to change their business landline number.
  • POST /events/hr/v1/worker.business-communication.landline.remove : This API allows a worker to remove a business landline.
  • POST /events/hr/v1/worker.business-communication.mobile.add : This API allows a worker to add a business mobile telephone number.
  • POST /events/hr/v1/worker.business-communication.mobile.change : This API allows a worker to change their business mobile telephone number.
  • POST /events/hr/v1/worker.business-communication.mobile.remove : This API allows a worker to remove their business mobile telephone number.
  • POST /events/hr/v1/worker.business-communication.pager.add : This API allows a worker to add a business pager number.
  • POST /events/hr/v1/worker.business-communication.pager.change : This API allows a worker to change their business pager number.
  • POST /events/hr/v1/worker.business-communication.pager.remove : This API allows a worker to remove their business pager number.
  • POST /events/hr/v1/worker.personal-communication.email.add : This API allows a worker to add a personal email address.
  • POST /events/hr/v1/worker.personal-communication.email.change : This API allows a worker to change their personal email address.
  • POST /events/hr/v1/worker.personal-communication.email.remove : This API allows a worker to remove their personal email address.
  • POST /events/hr/v1/worker.personal-communication.fax.add : This API allows a worker to add a personal fax number.
  • POST /events/hr/v1/worker.personal-communication.fax.change : This API allows a worker to change their personal fax number.
  • POST /events/hr/v1/worker.personal-communication.fax.remove : This API allows a worker to remove their personal fax number.
  • POST /events/hr/v1/worker.personal-communication.landline.add : This API allows a worker to add a personal landline number.
  • POST /events/hr/v1/worker.personal-communication.landline.change : This API allows a worker to change their personal landline number.
  • POST /events/hr/v1/worker.personal-communication.landline.remove : This API allows a worker to remove their personal landline number.
  • POST /events/hr/v1/worker.personal-communication.mobile.add : This API allows a worker to add their personal mobile telephone number.
  • POST /events/hr/v1/worker.personal-communication.mobile.change : This API allows a worker to change their personal mobile telephone number.
  • POST /events/hr/v1/worker.personal-communication.mobile.remove : This API allows a worker to remove their personal mobile telephone number.
  • POST /events/hr/v1/worker.personal-communication.pager.add : This API allows a worker to add a personal pager number.
  • POST /events/hr/v1/worker.personal-communication.pager.change : This API allows a worker to change their personal pager number.
  • POST /events/hr/v1/worker.personal-communication.pager.remove : This API allows a worker to remove their personal pager number.
  • GET /events/hr/v1/worker.personal-communication.pager.remove/meta : This API retrieves the metadata for the event of removing a worker's personal communication pager.

Worker Photo Management

  • POST /events/hr/v1/worker.photo.remove : The Remove Worker Photo API is used to remove the photo metadata and file of a worker.
  • GET /events/hr/v1/worker.photo.remove/meta : This API endpoint retrieves metadata for the worker photo removal event.
  • POST /events/hr/v1/worker.photo.upload : The Upload Worker Photo API allows clients to upload a worker's corporate contact photo.
  • GET /events/hr/v1/worker.photo.upload/meta : The Get Worker Photo Upload Event Metadata API returns metadata related to the worker photo upload event.

Payroll Events

US Tax Profile Changes

  • POST /events/payroll/v1/us-tax-profile.federal-income-tax-instruction.change : This API allows users to change a US tax profile federal income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.federal-income-tax-instruction.change/meta : This API endpoint retrieves metadata for changes in the US Federal Income Tax Instruction within a tax profile.
  • POST /events/payroll/v1/us-tax-profile.local-income-tax-instruction.add : This API allows the addition of a new US tax profile local income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.local-income-tax-instruction.add/meta : This API endpoint retrieves metadata for the US Tax Profile Local Income Tax Instruction.
  • POST /events/payroll/v1/us-tax-profile.local-income-tax-instruction.change : This API allows changing a US tax profile's local income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.local-income-tax-instruction.change/meta : This API endpoint retrieves metadata for the US Tax Profile Local Income Tax Instruction Change.
  • POST /events/payroll/v1/us-tax-profile.local-income-tax-instruction.remove : This API is used to remove an existing US tax profile local income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.local-income-tax-instruction.remove/meta : This API endpoint returns metadata for the US Tax Profile Local Income Tax Instruction removal event.

Worker General Deduction Instructions

  • POST /events/payroll/v2/worker-general-deduction-instruction.change : The Change Worker General Deduction Instruction API allows users to modify the general deduction instructions for a worker in the payroll system.
  • GET /events/payroll/v2/worker-general-deduction-instruction.change/meta : This API endpoint retrieves metadata for the Worker General Deduction Instruction Change event.
  • POST /events/payroll/v2/worker-general-deduction-instruction.start : The Start Worker General Deduction Instruction API is used to initiate a general deduction instruction for a worker in the payroll system.
  • GET /events/payroll/v2/worker-general-deduction-instruction.start/meta : This API endpoint retrieves event metadata for the Worker General Deduction Instruction Start event.
  • POST /events/payroll/v2/worker-general-deduction-instruction.stop : The Stop Worker General Deduction Instruction API allows users to stop a general deduction instruction for a worker.
  • GET /events/payroll/v2/worker-general-deduction-instruction.stop/meta : This API endpoint retrieves metadata for the Worker General Deduction Instruction Stop event.

HCM Validation Tables

  • POST /hcm/v1/validation-tables/associate-work-locations : This API endpoint allows the addition of a new code to a validation table for associating work locations.
  • POST /hcm/v1/validation-tables/business-units : This API allows the addition of a new code to the Business Units validation table.
  • GET /hcm/v1/validation-tables/cost-centers : This API retrieves a list of cost centers from the validation table.
  • POST /hcm/v1/validation-tables/departments : This API allows the addition of a new department code and its details to a validation table.
  • POST /hcm/v1/validation-tables/jobs : This API allows the addition of new job title codes and their details to a validation table.
  • GET /hcm/v1/validation-tables/jobs/meta : This API retrieves meta information for jobs validation tables.
  • GET /hcm/v1/validation-tables/jobs/{item-id} : This API retrieves the details of a specific record in the validation table for jobs.
  • GET /hcm/v1/validation-tables/meta : This API endpoint retrieves meta information for validation tables.
  • GET /hcm/v1/validation-tables/person-custom-fields : This API retrieves a list of items in the Person Custom Fields validation table.
  • GET /hcm/v1/validation-tables/person-custom-fields/{item-id} : This API retrieves the details of a specific record in the Custom Fields - Person Custom Fields.
  • GET /hcm/v1/validation-tables/worker-custom-fields : The Get Worker Custom Fields API retrieves a list of items in the Worker Custom Fields validation table.
  • GET /hcm/v1/validation-tables/worker-custom-fields/{item-id} : This API retrieves the details of a specific record in the Custom Fields validation table.

HCM Onboarding

  • POST /hcm/v2/applicant.onboard : The Applicant Onboarding API is used to initiate the onboarding process for an applicant.
  • GET /hcm/v2/applicant.onboard/meta : The Get Applicant Onboarding Metadata API retrieves metadata information related to the applicant onboarding process.

Worker Profile

  • GET /hr/v2/workers/meta : The Get Worker Meta Information API retrieves meta information about workers.
  • GET /hr/v2/workers/{aoid} : The Get Worker Details API retrieves detailed information about a worker identified by the Associate OID (aoid).
  • GET /hr/v2/workers/{aoid}/worker-images/photo : This API retrieves a worker's profile picture using the GET method.
  • POST /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/additional-remunerations : This API operation allows the creation of additional remunerations for a worker, such as bonuses or commissions.
  • GET /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/additional-remunerations/meta : This API endpoint retrieves metadata for a worker's additional remuneration.
  • PUT /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/base-remuneration : This API operation updates a worker's base remuneration details such as salary, hourly rate, daily rate, or pay period rate.
  • GET /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/base-remuneration/meta : This API operation retrieves metadata about a worker's base remuneration update.
  • POST /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/corporate-groups : This API endpoint allows the creation of a corporate group for a specific work assignment.

ADP API Use Cases

  • Easy to use, intuitive interface and highly customizable with efficient customer support
  • Access best-practice guides, HR forms, policies, and an employee handbook template
  • Automation of processes like onboarding, status change, offboarding
  • Providing employees access to to their pay, benefits and time information, offering true self serve
  • Real time mobile phone access to important information like time off, benefits data, etc. with a mobile application
  • Tracking and monitoring of key metrics like labor costs, overtime, actual vs. scheduled hours, turnover rate for better HR services

Top Customers

  • Jelly Belly, gourmet jelly belly candies and confections manufacturer
  • Amazon, a vast Internet-based enterprise
  • The Boston Globe, an American daily newspaper
  • Dell Technologies, a provider of desktop personal computers, software, and peripherals
  • Sunstone Partners, a growth-oriented private equity firm

ADP API FAQs

Q1: Does ADP have an API?
A: Yes. Knit connects to ADP Workforce Now's APIs so you can pull and sync HR, payroll, and worker data without building this integration yourself. ADP exposes these as REST APIs, accessed through ADP API Central (its developer platform) or the ADP Marketplace, secured with OAuth 2.0 and a WS Certificate.

Q2: How much does it cost to use the ADP API?
A: Knit gives you access to ADP's APIs as part of its unified HRIS integration, with no separate ADP developer fee. Direct API access isn't free, though: ADP API Central is sold as a paid add-on to your ADP subscription, and ADP doesn't publish public pricing, so you'd request a quote through your ADP account team.

Q3: How do I obtain an ADP API Client Secret for OAuth?
A: If you're integrating through Knit, credential management is handled for you. For a direct integration, you register your application through the ADP Marketplace (or ADP API Central), generate a Certificate Signing Request, and obtain a WS Certificate; ADP issues your client ID and secret as part of that registration.

Q4: How do I get an access token from the ADP API using REST?
A: Knit handles the OAuth 2.0 token exchange automatically as part of connecting to ADP. For a direct integration, you exchange your client credentials and WS Certificate for an access token via a POST request to ADP's OAuth 2.0 token endpoint, and the same flow works whether you're calling it from a REST client, PowerShell, or any other HTTPS-capable tool.

Q5: How do I fix an SSL error when calling the ADP API?
A: Knit manages the certificate and connection layer for you, so this isn't something you need to troubleshoot when integrating through Knit. For direct integrations, SSL errors with ADP's API usually trace back to a missing or expired WS Certificate, an incomplete certificate chain, or a private key mismatch; reissuing the certificate through ADP's portal resolves most cases.

Q6: How do I resolve an ADP API connection error (Status-58)?
A: Knit absorbs connection-level errors like this behind a consistent integration layer, so you don't have to build ADP-specific handling for it. A Status-58 error is commonly associated with a client-certificate problem (curl's own error code 58 specifically flags an issue with the local client certificate), so check that your WS Certificate is valid, correctly installed, and hasn't expired.

Q7: How do I update worker information via the ADP API?
A: Knit lets you write worker updates back to ADP Workforce Now through a single, consistent API, instead of mapping each field to ADP's own event structure yourself. Direct integrations use ADP's event-based HR APIs, for example POST /events/hr/v1/worker.legal-name.change for a legal name update, with a separate event endpoint for each type of change.

Q8: How do I change a custom field value using the ADP API?
A: Knit can sync custom fields as part of its ADP Workforce Now integration, so custom data stays consistent without extra mapping work on your end. Direct integrations typically use ADP's validation-table and worker custom-field APIs, such as GET /hcm/v1/validation-tables/worker-custom-fields, to read and update custom field values.

Q9: What's the latest on ADP Workforce Now and RUN Powered by ADP API updates?
A: Knit keeps pace with ADP's API changes automatically, so updates on ADP's side don't require changes on your end. ADP releases updates to its Workforce Now and RUN Powered by ADP APIs on its own schedule; the current release notes and roadmap are maintained in ADP's own developer documentation rather than published as a fixed public calendar.

Q10: How do I access ADP API Central?
A: Knit connects to ADP Workforce Now without requiring you to set up API Central yourself. If you want direct access, API Central is available as a paid add-on through the ADP Marketplace: sign in with your existing ADP credentials, and purchase or provision it for your organization from there.

Common Integrations with ADP API

While there can be multiple integrations and use cases for ADP API, here is a list of the top SaaS companies or products that can integrate with ADP API to facilitate customer success:

  • Learning Management Solutions
  • Rewards, Recognitions, and Performance
  • Communication and Collaborations
  • Employee Travel and Booking Tools
  • Workforce Planning and Org Chart Solutions

How to Integrate with ADP API

A direct ADP integration generally follows the same shape regardless of which endpoints you're calling: register your application and obtain a WS Certificate, exchange your credentials for an OAuth 2.0 access token, then call the relevant event or resource endpoints for the data you need. ADP's own developer portal is the primary resource for the full API catalog, sandbox access, and reference documentation. For the full walkthrough, including authentication, code examples, rate limits, and common pitfalls, see our ADP API Integration Guide.

Get started with ADP API

The pricing for ADP API is not publicly available. However, the platform does offer a demo for interested customers. At the same time, ADP provides tailor-made pricing based on specific company requirements. Thus companies can share the required information to get access to competitive pricing, across different tiers based on the features they need. You can request ADP pricing directly.

To make the integration process smooth with ADP, you can get started with Knit, one API for all your integrations. Sign up with Knit or book a demo here with one of our experts - Book Demo

API Directory
-
Aug 27, 2026

Sage Recruitment API Directory

Sage-ATS, also known as Sage People or Sage HR, is a cloud-based HR platform with a built-in Applicant Tracking System (ATS) for managing job postings, candidates, and hiring pipelines. Teams use it to post open positions, track applicants through each stage of the pipeline, and keep hiring data in one place instead of spreadsheets or email threads.

The Sage Recruitment API exposes this recruitment data programmatically, so you can pull open positions and applicant records into a careers site, an ATS integration, a BI dashboard, or another internal system, and keep that data in sync without manual exports. Knit connects to the Sage Recruitment API as part of its unified ATS API, so you can integrate with Sage alongside other recruiting platforms through one connection.

Key highlights of Sage-ATS APIs

  • 1. List and track open positions:
    • Pull live position data (title, status, applicant count) into a careers page or internal dashboard instead of maintaining it manually in two places.
  • 2. Sync applicants automatically:
    • Pull applicant records and pipeline stage changes into a CRM, spreadsheet, or reporting tool as candidates move through hiring.
  • 3. Track pipeline actions for reporting:
    • Pull the action history for each applicant (stage moves, disqualifications, and similar events) to support hiring funnel reporting and audits.
  • 4. Combine Sage with other systems:
    • Because the recruitment API is a small, focused surface, it pairs well with a unified API for teams that also need to support other ATS or HRIS platforms alongside Sage.

Sage-ATS API Endpoints

The Sage HR Recruitment API is a small, focused surface, six endpoints in total, covering positions and applicants. Unlike larger ATS APIs, there's no separate interviews, offers, or requisitions module; those workflows are managed inside the Sage HR product itself rather than exposed as API resources.

Position Endpoints

  • GET https://subdomain.sage.hr/api/recruitment/positions : List Recruitment Positions
  • GET https://subdomain.sage.hr/api/recruitment/positions/{id} : Get Position Details

Applicant Endpoints

  • GET https://subdomain.sage.hr/api/recruitment/positions/{id}/applicants : List Applicants for a Position
  • POST https://subdomain.sage.hr/api/recruitment/positions/{id}/applicants : Create a new applicant against a position, with optional referral tracking
  • GET https://subdomain.sage.hr/api/recruitment/applicants/{id} : Get Applicant Details
  • GET https://subdomain.sage.hr/api/recruitment/applicants/{id}/actions : List Applicant's Recruitment Pipeline Actions

Example Request

Every request needs your API key in the X-Auth-Token header. Listing open positions looks like this:

GET https://subdomain.sage.hr/api/recruitment/positions
X-Auth-Token: {your_api_key}
Accept: application/json

Beyond Recruitment: Other Sage HR API Modules

Recruitment is one of several modules under the same Sage HR API and authentication. If you need data outside the hiring pipeline, Sage HR also exposes Employees, Leave Management, Documents, Teams, and Performance as separate resource groups, each reachable with the same API key and X-Auth-Token header used above. Knit currently supports the Recruitment and Employees modules through its unified ATS and HRIS APIs; reach out if you need one of the others for your integration.

Sage HR ATS API FAQs

  1. How do I enable API access in Sage HR ATS?some text
    • Answer: To enable API access in Sage HR, go to Settings, then Integrations, then API, and click Enable API Access to generate your key. Knit handles this setup step for you when you connect a Sage HR account, so integrators don't need to walk each customer through generating and storing their own API key.some text
      1. Click on your name in the top-right corner and select Settings.
      2. Navigate to Integrations > API.
      3. Click Enable API Access to activate the API and generate your unique API key.
    • Source: How does Sage HR API work?
  2. What authentication method does the Sage HR ATS API use?some text
    • Answer: The Sage HR API uses an API key, sent in the X-Auth-Token header of every request. Knit stores and rotates this key per connected account, so integrators authenticate through Knit's own token instead of managing each customer's Sage API key directly.
    • Source: How does Sage HR API work?
  3. Are there rate limits for the Sage HR ATS API?some text
    • Answer: Sage's own documentation doesn't publish explicit rate limits for this API. Knit builds in retry-with-backoff handling for connected Sage HR instances, so integrators don't need to guess at limits or write their own retry logic; direct integrators should still add error handling for potential rate-limiting responses.
    • Source: Sage HR API Reference
  4. Can I retrieve employee data using the Sage HR ATS API?some text
    • Answer: Yes, though it's a separate module from recruitment: a GET request to the /employees endpoint lists active employees. Knit exposes Sage HR's employee data through the same unified schema it uses for other HRIS platforms, so employee and recruitment data stay consistent if you're pulling both.
    • Source: Sage HR API Reference
  5. Does the Sage HR ATS API support webhooks?some text
    • Answer: No, Sage HR's API doesn't natively support webhooks as of this writing. Knit polls connected Sage HR instances on your behalf and delivers changes through its own webhook events, so integrators get near-real-time updates without building and maintaining their own polling logic against Sage.
    • Source: Sage HR API Reference

Get Started with Sage HR ATS API Integration

For quick integration with the Sage HR API, Knit offers a unified ATS API that covers Sage alongside other recruiting platforms. Integrate once with Knit and reuse the same connection logic across every ATS you support, instead of building and maintaining a separate integration for each. Knit handles authentication, authorization, and ongoing maintenance for the connection, so your team can build Sage recruitment use cases without babysitting the underlying API.

To sign up for free, click here. To check the pricing, see our pricing page.

API Directory
-
Aug 27, 2026

Workable API Directory

Workable is a cloud-based recruitment and HR platform built to run the day-to-day mechanics of hiring, job posting, applicant tracking, interview coordination, and related HR operations. Teams use it to keep sourcing, screening, and hiring workflows in one place, instead of juggling spreadsheets, inbox threads, and scattered tools.

Where Workable becomes especially useful is when you connect it to the rest of your stack, your careers site, assessment and background check providers, HRIS/payroll tools, BI dashboards, and internal systems. The Workable API gives you the plumbing for this: you can pull hiring data, push candidates into jobs, move them through stages, trigger events via webhooks, and keep your systems in sync without manual effort.

Key highlights of Workable APIs

  1. Push candidates into the right job pipeline automatically
    Create candidates against a job shortcode, map them to the correct stage, and reduce recruiter admin time.
  2. Move, disqualify, revert, and tag candidates from external systems
    If your workflow starts in a sourcing tool or internal referral portal, you can still control candidate lifecycle actions in Workable.
  3. Trigger assessments, interviews, and background checks programmatically
    Create assessment/check/interview requests and track results through callback URLs, no “copy-paste into vendor portals”.
  4. Stream hiring activity for visibility and audit trails
    Pull job activity streams to understand who did what, when, useful for compliance, leadership reporting, and debugging process bottlenecks.
  5. Build dynamic application forms that match Workable’s job configuration
    Use the application form and questions endpoints to render the correct form on a custom careers experience.
  6. Support multi-stakeholder hiring teams cleanly
    Fetch job members, recruiters, and combined hiring teams to align roles, responsibilities, and permissions in your internal tooling.
  7. Use subscriptions/webhooks to reduce polling and keep systems fresh
    Subscribe to event notifications instead of hammering the API every few minutes.
  8. Scale with structured account-level objects
    Pull departments, legal entities, work schedules, custom attributes, so downstream HR ops and analytics don’t run on half-baked data.

Workable API Endpoints

Candidate Management

  • POST https://${BASE_URL}/assessments : The Create Candidate Assessment API allows Workable to create an assessment for a candidate by sending a POST request to the Assessments Provider. The request must include an authorization header with a Bearer token, and a JSON body containing the test ID, job title, callback URL, and candidate information. The Assessments Provider responds with a 201 status and an assessment ID. This ID can be used to track the assessment status and results. The API facilitates the integration between Workable and the Assessments Provider, enabling seamless candidate assessment management.
  • POST https://${BASE_URL}/checks : This API endpoint allows Workable to create a background check request for a candidate by sending a POST request to the Background Check Provider. The request must include an authorization header with a Bearer token, and a JSON body containing the package ID, job title, callback URL, candidate information, and optional preferences. Upon successful creation, the API returns a 201 status with a background check ID. The callback URL is used by the Background Check Provider to publish the results once the background check is completed.
  • POST https://${BASE_URL}/interviews : This API endpoint allows Workable to create an interview invitation for a candidate using a Video Interview Provider. The POST request is sent to the /interviews endpoint with a payload containing the interview template ID, job details, callback URL, candidate information, and optional preferences. The request must include an Authorization header with a Bearer token for authentication. Upon successful creation, the API responds with a 201 status and an interview ID. The callback URL is used by the Video Interview Provider to publish interview results back to Workable.
  • POST https://{subdomain}.workable.com/spi/v3/employee_events : The Employee Events Notification API is used to notify an SPI Client about various employee-related events such as creation, update, onboarding completion, and publication. When an event occurs, the Workable SPI sends a notification to the SPI Client with relevant employee data. The API requires a POST request with headers for content type and authorization. The request body includes details about the employee and the event type. The response indicates the success or failure of the event processing.
  • POST {your registered target URL} (Candidate Events notification): When a candidate event occurs (creation, stage change, disqualification, and similar), Workable sends a POST notification with candidate details, event type, and event metadata to the target URL you registered through the Subscriptions API below, not to a fixed Workable-hosted path. Register the URL and event types you want to receive using the subscription endpoints in the Subscription Management section.
  • POST {your registered callback URL} (Assessment/interview/background-check result callback): Assessment, video interview, and background check providers publish results back to the callback URL you supplied in the original /assessments, /checks, or /interviews request, rather than to a separate fixed endpoint. This is the same callback mechanism described for those three endpoints above.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/comments : This API creates a attachment for an application using comments API.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/copy : This API endpoint allows you to copy a candidate to another job within the Workable platform. It requires a POST request to the specified URL with the candidate's ID and the target job's shortcode. The request must include a Bearer token for authorization. The body of the request should contain the member ID performing the action, the target job shortcode, and optionally the target stage. Upon success, it returns the ID and URL of the newly created candidate. If the request fails, it returns an error message.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/disqualify : This API disqualifies a candidate using the POST method. It requires the 'w_candidates' scope and is accessible with all token types. The endpoint is 'https://{subdomain}.workable.com/spi/v3/candidates/{id}/disqualify'. The request must include the Authorization header with a Bearer token, and the Content-Type and Accept headers set to 'application/json'. The path parameters include 'subdomain' for the account subdomain and 'id' for the candidate's id. The body must include 'member_id', the id of the member performing the disqualification, and optionally 'disqualification_reason'. The response can be a 200 status code with an empty body for success, a 401 status code with an error message for unauthorized access, or a 404 status code with an error message if the candidate is not found.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/move : This API endpoint allows moving a candidate to another stage in the hiring process. It requires the 'w_candidates' scope and is accessible with all token types. The endpoint is 'https://{subdomain}.workable.com/spi/v3/candidates/{id}/move' and uses the POST method. The request optionally includes the target_stage to move the candidate to. If the hiring plan is enabled and the candidate is being moved to the 'hired' stage, additional requisition information may be required. The response will be empty on success, or contain an error message if the request fails.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/ratings : This API creates a rating for a candidate. It requires the 'w_candidates' scope and is accessible with all token types. The endpoint requires a subdomain and candidate ID as path parameters. The request body must include the member ID of the person performing the rating, and optionally a comment and score. The API returns a 201 status code on success, a 401 status code if unauthorized, and a 404 status code if the candidate is not found.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/relocate : This API endpoint relocates a candidate to another job within the Workable platform. It requires the 'w_candidates' scope and is accessible with all token types. The request must include the subdomain and candidate ID as path parameters, and the member ID, target job shortcode, and optionally the target stage in the request body. The response will include the new candidate's ID and URL if successful, or an error message if not.
  • POST https://{subdomain}.workable.com/spi/v3/candidates/{id}/revert : This API reverts a candidate's disqualification in the Workable system. It requires the 'w_candidates' scope and is accessible with all token types. The request must include the account subdomain and candidate's id as path parameters, and the member_id of the person performing the action in the request body. The request headers must include 'Content-Type' as 'application/json', 'Authorization' with a Bearer token, and 'Accept' as 'application/json'. A successful request returns a 201 status code with no content. If the request is unauthorized, a 401 status code with an error message is returned. If the candidate is not found, a 404 status code with an error message is returned.
  • PUT https://{subdomain}.workable.com/spi/v3/candidates/{id}/tags : This API updates the tags of a candidate in the Workable system. It requires the 'w_candidates' scope and can be accessed with all token types. The API endpoint is 'https://{subdomain}.workable.com/spi/v3/candidates/{id}/tags'. The request must include the 'Content-Type', 'Authorization', and 'Accept' headers. The 'subdomain' and 'id' are required path parameters. The request body must contain a 'tags' array, which will replace the candidate's current tags. If the array is empty, all tags will be removed. A successful request returns a 202 status code with the updated tags. If unauthorized, a 401 status code with an error message is returned. If the candidate is not found, a 404 status code with an error message is returned.
  • PATCH https://{subdomain}.workable.com/spi/v3/candidates/{id}/update_custom_attribute_value : This API endpoint allows updating a custom attribute value for a candidate in the Workable system. It requires the 'r_jobs' scope and is accessible with all token types. The endpoint URL is structured with a subdomain and candidate ID as path parameters. The request must include an Authorization header with a Bearer token, and the Content-Type and Accept headers set to 'application/json'. The request body varies based on the type of custom attribute being updated, such as boolean, short text, free text, numeric, file (base64 or URL), date, dropdown, or multiple choice. The response includes detailed candidate information if successful, or an error message if unauthorized or not found.

Job Management

  • GET https://<subdomain>.workable.com/spi/v3/jobs : The Partner Token Integration for Workable API allows third-party providers to access specific endpoints using a Partner Token. This token is used for authorization and is associated with specific scopes determined during integration development. To use this API, the request must include headers for Content-Type, Authorization with the Partner Token, and X-WORKABLE-CLIENT-ID with the Client ID (UID). The API endpoint retrieves jobs filtered by their state, such as 'published'. The response includes a list of job objects with details like job ID, title, and state.
  • GET https://{subdomain}.workable.com/spi/v3/jobs : This API endpoint retrieves a collection of jobs associated with your account from Workable. It requires the 'r_jobs' scope and is accessible with all token types. The endpoint supports various query parameters to filter the jobs based on state, creation date, update date, and more. The response includes an array of job objects, each containing details such as job ID, title, department, location, and salary. The response also includes paging information to navigate through multiple pages of results.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode} : The Get Job Details API retrieves detailed information about a specific job using its shortcode. It requires an authorization bearer token with the 'r_jobs' scope. The API endpoint is 'https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}', where 'shortcode' is a required path parameter representing the job's unique code. The response includes comprehensive job details such as the job's title, state, department, location, description, requirements, benefits, employment type, industry, function, experience, education, keywords, and salary information. The API returns a JSON object with all these details, and it can respond with error messages if the request is unauthorized or if the job is not found.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/activities : The Get Job Activity Stream API retrieves the activity stream of a specified job using its shortcode. It requires the 'r_candidates' scope and is accessible with all token types. The API endpoint is 'https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/activities'. The request must include a Bearer token in the Authorization header. The 'shortcode' path parameter is required to specify the job. Optional query parameters include 'limit' to specify the number of activities per page, 'since_id' to filter activities with an ID greater than or equal to the specified ID, and 'max_id' to filter activities with an ID less than or equal to the specified ID. The response includes an array of activities, each containing details such as action, stage name, creation timestamp, candidate information, member information, and activity body. Possible response status codes include 200 (success), 401 (not authorized), and 404 (not found).
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/application_form : This API endpoint retrieves the application form details for a specified job using the job's shortcode. It requires a Bearer token for authorization and the 'r_jobs' scope. The endpoint returns a JSON object containing two arrays: 'form_fields' and 'questions'. The 'form_fields' array includes details about each form field, such as key, label, type, and whether it is required. The 'questions' array includes details about each question, such as id, body, type, and whether an answer is required. This API is useful for building dynamic application forms that adhere to the rules defined in the Job Editor's 'Application Form' tab.
  • POST https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/candidates : This API endpoint allows you to create a candidate for a specific job in Workable. It is useful for integrating custom application forms, migrating existing candidates, or integrating with other systems. The API requires a POST request to the specified URL with a JSON body containing candidate details such as name, email, headline, summary, and more. You can also include additional information like education, experience, skills, social profiles, and a resume. The 'sourced' flag determines if the candidate is considered as uploaded or applied. The response includes the status of the creation and details of the created candidate.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/combined_members_recruiters : This API endpoint retrieves a combined list of account members and external recruiters associated with a specific job, identified by its shortcode. It requires an authorization bearer token and the job's shortcode as a path parameter. The response includes details about each member, such as their ID, name, headline, email, role, and collaboration role within the hiring team, as well as a list of external recruiters with their ID, name, and email address. If the request is unauthorized or the job is not found, an error message is returned.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/custom_attributes : This API endpoint retrieves a collection of custom attributes relevant to a specific job identified by its shortcode. The request requires a Bearer token for authorization and the job's shortcode as a path parameter. The response includes an array of custom attributes, each with details such as id, type, label, hint, and choices for multiple_choice types. The API returns a 200 status code with the custom attributes on success, and error messages with status codes 401 or 404 for unauthorized or not found errors, respectively.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/members : This API endpoint retrieves a collection of account members associated with a specific job, identified by its shortcode. It requires an authorization bearer token with the 'r_jobs' scope. The endpoint returns details about each member, including their ID, name, headline, email, role, and collaboration role within the hiring team. The roles are defined at the account level and include admin, simple, recruiter, and reviewer. The collaboration roles are specific to the job and include admin, recruiting_admin, hiring_manager, simple, reviewer, and recruiter. The API returns a 200 status code with member details on success, a 401 status code if not authorized, and a 404 status code if the job is not found.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/questions : The Get Job Questions API retrieves a list of questions associated with a specific job identified by its shortcode. This API requires the 'r_jobs' scope and is accessible with all token types. The request must include an Authorization header with a Bearer token and a Content-Type header set to 'application/json'. The endpoint returns a JSON array of questions, each containing details such as the question's ID, body, type, and whether it is required. Additional fields may include choices for dropdown or multiple choice questions, supported file types, and maximum file size for file upload questions. The API can return a 401 status code if not authorized or a 404 status code if the job is not found.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/recruiters : This API endpoint retrieves a collection of external recruiters associated with a specific job in your account. It requires a valid Bearer token for authorization and the job's shortcode as a path parameter. The response includes a list of recruiters, each with an ID, name, and email address. If the request is unauthorized or the job is not found, an error message is returned.
  • GET https://{subdomain}.workable.com/spi/v3/jobs/{shortcode}/stages : This API endpoint retrieves a collection of recruitment pipeline stages for a specific job identified by its shortcode. It requires an authorization bearer token with the 'r_jobs' scope. The response includes details of each stage such as its unique slug, name, type, and position in the pipeline. Possible response status codes include 200 for success, 401 for unauthorized access, and 404 if the job is not found.

Account Management

  • GET https://workable.com/spi/v3/accounts : This API endpoint retrieves a collection of all accounts that the authenticated user has access to. It requires the 'r_jobs' scope and is accessible with all token types. The request must include an Authorization header with a Bearer token and a Content-Type header set to 'application/json'. The response includes a list of accounts, each with details such as id, name, subdomain, description, summary, and website URL. If the request is unauthorized, a 401 status code with an error message is returned.
  • GET https://workable.com/spi/v3/accounts/{subdomain} : The Get Account Details API retrieves information about a specific account using the subdomain as a path parameter. It requires an authorization bearer token with the 'r_jobs' scope. The response includes details such as the account's unique ID, name, subdomain, description, summary, and website URL. If the request is unauthorized or the account is not found, appropriate error messages are returned.
  • GET https://www.workable.com/api/accounts/{subdomain} : This API endpoint retrieves a collection of public jobs for a specified account on Workable. The endpoint requires a path parameter 'subdomain' which is the account's subdomain. An optional query parameter 'details' can be included to fetch job descriptions. The response includes the account's name, description, and a list of public jobs. Each job contains detailed information such as title, code, location, department, telecommuting status, publication date, URLs, description, employment type, industry, function, experience, and education requirements. A 404 status code is returned if the account is not found.
  • GET https://www.workable.com/api/accounts/{subdomain}/departments : This API endpoint retrieves a collection of departments for the public jobs of a specified account. The request requires a path parameter 'subdomain' which is the account subdomain. The response includes a list of departments, each containing the department's name, the number of public jobs in that department, and a URL. If the account is not found, a 404 status code is returned with an error message.
  • GET https://www.workable.com/api/accounts/{subdomain}/locations : This API endpoint retrieves a collection of locations where public jobs are available for a specified account. The request requires a path parameter 'subdomain' which is the account's subdomain. The response includes a list of locations, each with a 2-letter country code, the name of the country, the count of public jobs in that country, and a URL for location-specific jobs. If the account is not found, a 404 status code is returned with an error message.
  • GET https://{subdomain}.workable.com/spi/v3/custom_attributes : This API endpoint retrieves a collection of custom attributes associated with an account. It requires the 'r_jobs' scope and is accessible with all token types. The endpoint URL is 'https://{subdomain}.workable.com/spi/v3/custom_attributes', where 'subdomain' is a required path parameter representing the account's subdomain. The request must include an 'Authorization' header with a Bearer token and a 'Content-Type' header set to 'application/json'. The response includes an array of custom attributes, each with details such as 'id', 'type', 'enabled', 'label', 'hint', and for multiple_choice types, 'choices' with 'id', 'body', 'hint', and 'translations'. Possible response status codes include 200 (success), 401 (not authorized), and 404 (not found).
  • GET https://{subdomain}.workable.com/spi/v3/departments : This API endpoint retrieves a collection of departments associated with your account. It requires the 'r_account' scope, which can be enabled through the Integrations section in the Settings menu. The endpoint is accessible for accounts with Employee Management features enabled. The request must include a Bearer token in the Authorization header and the account subdomain as a path parameter. The response returns a list of departments, each with an 'id', 'name', 'parent_id', and 'archived' status. If the request is unauthorized, a 401 status code with an error message is returned. If the endpoint is not found, a 404 status code with an error message is returned.
  • GET https://{subdomain}.workable.com/spi/v3/legal_entities : This API endpoint retrieves a collection of legal entities associated with your account. It requires the 'r_account' scope, which can be enabled through the Integrations section in the Settings menu. The endpoint is accessible only for accounts with Employee Management features enabled. The request must include a Bearer token for authorization and specify the account subdomain as a path parameter. The response includes an array of legal entities, each with details such as id, name, legal_name, type, parent_id, and display_name. The API returns a 200 status code with the list of entities on success, a 401 status code if not authorized, and a 404 status code if the resource is not found.
  • GET https://{subdomain}.workable.com/spi/v3/members : The Get Account Members API retrieves a collection of members associated with your account. It requires the 'r_jobs' scope and can be accessed using account or user tokens. The API endpoint is 'https://{subdomain}.workable.com/spi/v3/members'. The request must include an Authorization header with a Bearer token and a Content-Type header set to 'application/json'. Optional query parameters include 'limit', 'since_id', 'max_id', 'role', and 'shortcode' to filter the results. The response includes a list of members with details such as 'id', 'name', 'headline', 'email', 'role', and 'hris_role'. Possible roles include 'admin', 'simple', and 'reviewer', while hris roles include 'hris_admin' and 'hris_employee'. The API returns a 200 status code on success, and error messages for 401 (Not authorized) and 404 (Not found) status codes.
  • GET https://{subdomain}.workable.com/spi/v3/work_schedules : The Get Account Work Schedules API endpoint retrieves a collection of work schedules associated with a specific account. It requires the 'r_account' scope for authorization, which can be enabled through the Integrations section in the Settings menu. The endpoint is accessed via a GET request to 'https://{subdomain}.workable.com/spi/v3/work_schedules', where 'subdomain' is a required path parameter representing the account subdomain. The request must include an Authorization header with a Bearer token and an 'accept' header specifying 'application/json'. The response is a JSON array of work schedule objects, each containing an 'id', 'name', 'status', 'work_days', 'week_starts_on', and 'work_hours'. The 'work_days' field is an array detailing the work hours and intervals for each day of the week. The API returns a 200 status code with the work schedules on success, a 401 status code if not authorized, and a 404 status code if the resource is not found.

Offer Management

  • GET https://{subdomain}.workable.com/spi/v3/offers/{id} : The Get Offer Details API retrieves detailed information about a specific offer using its ID. The API requires a GET request to the endpoint https://{subdomain}.workable.com/spi/v3/offers/{id} with a Bearer token for authorization. The path parameter 'id' is required to specify the offer ID. The response includes details such as candidate information, offer creation date, document variables, related documents, and the state of the offer. The API returns a JSON object with requisition details, including job, department, location, hiring manager, salary range, employment type, and approval groups. In case of errors, it returns appropriate error messages such as 'Not authorized' or 'Not found'.
  • PATCH https://{subdomain}.workable.com/spi/v3/offers/{id}/approve : The Approve Offer API allows users to approve an offer that is in a compatible state. This API requires the 'w_offers' scope and is accessible only with user tokens. The endpoint is 'https://{subdomain}.workable.com/spi/v3/offers/{id}/approve' and uses the PATCH method. The request must include the 'Authorization' header with a Bearer token and the 'Content-Type' header set to 'application/json'. The 'id' path parameter is required to specify the offer to be approved. The response includes a JSON representation of the offer, detailing requisitions, job information, department, location, hiring manager, owner, salary range, employment type, requisition attributes, and approval groups. Possible error responses include 'Not authorized' (401) and 'Not found' (404).
  • PATCH https://{subdomain}.workable.com/spi/v3/offers/{id}/reject : The 'Reject an Offer' API allows users to reject an offer that is in a compatible state. It requires the 'w_offers' scope and is accessible only with user tokens. The API endpoint is 'https://{subdomain}.workable.com/spi/v3/offers/{id}/reject' and uses the PATCH method. The request must include an Authorization header with a Bearer token and a Content-Type header set to 'application/json'. The path parameter 'id' is required to specify the offer ID. The request body can optionally include a 'rejection_reason'. The response returns a JSON representation of the offer, including details such as candidate information, offer state, document variables, and related documents. Possible response status codes include 200 (success), 401 (not authorized), and 404 (not found).

Requisition Management

  • POST https://{subdomain}.workable.com/spi/v3/requisitions : The Create Requisition API allows users to create a new requisition in the system. It requires a POST request to the specified endpoint with the necessary authorization header. The request must include the subdomain as a path parameter and a JSON body containing details such as the requisition code, owner ID, hiring manager ID, job title, and plan date. Optional fields include job ID, department ID, location details, employment type, experience, salary range, and custom attributes. The response returns a JSON object with the requisition details, including job, department, location, hiring manager, owner, salary range, employment type, reason, state, requisition attributes, and approval groups. The API requires the 'w_requisitions' scope and is accessible with user tokens only.
  • GET https://{subdomain}.workable.com/spi/v3/requisitions/{code} : The Get Requisition Details API retrieves detailed information about a specific requisition identified by its code. It requires a Bearer token for authorization and returns a comprehensive JSON object containing details such as job information, department, location, hiring manager, owner, salary range, employment type, and more. The API also provides information on requisition attributes and approval groups. The response includes the requisition's state, reason, and other relevant details. In case of errors, it returns appropriate error messages.
  • PATCH https://{subdomain}.workable.com/spi/v3/requisitions/{code}/approve : The Approve Requisition API allows users to approve a requisition that is in a compatible state. This API requires the 'w_requisitions' scope and is accessible with user tokens only. The endpoint is 'https://{subdomain}.workable.com/spi/v3/requisitions/{code}/approve' and uses the PATCH method. The request must include an Authorization header with a Bearer token and a Content-Type header set to 'application/json'. The path parameter 'code' is required and specifies the code of the requisition to be approved. Upon successful approval, the API returns a full requisition JSON object containing details such as job, department, location, hiring manager, owner, plan date, salary range, employment type, reason, state, requisition attributes, and approval groups. Possible response status codes include 200 (success), 401 (not authorized), and 404 (not found).
  • PATCH https://{subdomain}.workable.com/spi/v3/requisitions/{code}/reject : The 'Reject a Requisition' API allows users to reject a requisition that is in a compatible state. This API requires the 'w_requisitions' scope and is accessible with user tokens only. The endpoint is 'https://{subdomain}.workable.com/spi/v3/requisitions/{code}/reject' and uses the PATCH method. The request must include a Bearer token for authorization and the requisition code as a path parameter. An optional rejection reason can be provided in the request body. Upon successful rejection, the API returns the full requisition JSON object, which includes details such as job, department, location, hiring manager, owner, plan date, salary range, employment type, reason, state, requisition attributes, and approval groups. If the request fails, an error message is returned.
  • PATCH https://{subdomain}.workable.com/spi/v3/requisitions/{id} : The Update Requisition API allows users to update an existing requisition in the Workable system. This API requires a PATCH request to the endpoint https://{subdomain}.workable.com/spi/v3/requisitions/{id} with the necessary authorization header. The path parameters include the subdomain and the requisition ID. The request body can include various fields such as owner_id, hiring_manager_id, location details, employment type, experience, salary details, reason, notes, plan date, and custom attributes. The response returns the full requisition JSON object, including details like job, department, location, hiring manager, owner, salary range, employment type, reason, state, requisition attributes, and approval groups. The API requires the 'w_requisitions' scope and is accessible with user tokens only.

Subscription Management

  • POST https://{subdomain}.workable.com/spi/v3/subscriptions : This API allows you to subscribe to specific events in the Workable system by registering your service with a target URL. The request requires a Bearer token for authorization and includes a subdomain path parameter. The body of the request must specify a target URL and an event type, with optional arguments for further filtering. The response will include the subscription ID if successful, or an error message if not.
  • DELETE https://{subdomain}.workable.com/spi/v3/subscriptions/{id} : This API endpoint allows users to unsubscribe from an event by deleting a subscription. It requires the 'r_candidates' or 'r_employees' scope and is accessible with all token types. The endpoint is used to delete obsolete subscriptions, especially for third-party integrations. The request must include the account subdomain and the ID of the webhook subscription as path parameters. The request headers must include 'Content-Type', 'Authorization', and 'Accept'. A successful request returns a 200 status code with an empty body. If the authorization fails, a 401 status code with an error message is returned. If the subscription is not found, a 404 status code with an error message is returned.

Time Off Management

  • GET https://{subdomain}.workable.com/spi/v3/timeoff/balances : The Get Time Off Balances API endpoint retrieves a collection of time off balances for all time off categories for a specific employee. It requires the 'r_timeoff' scope, which can be enabled through the Integrations section in the Settings menu. The endpoint requires a Bearer token for authorization and accepts an optional 'employee_id' query parameter if an account level token is used. The response includes details such as available units, units carried over, units used, and whether the category has unlimited time off, along with category ID, tracking unit, name, and description.
  • GET https://{subdomain}.workable.com/spi/v3/timeoff/categories : The List Time Off Categories API endpoint retrieves all time off categories configured for a specific account. It requires the 'r_timeoff' scope, which can be enabled through the Integrations section in the Settings menu. The endpoint requires a Bearer token for authorization and the account subdomain as a path parameter. The response includes a collection of time off categories, each with a unique identifier, name, type (either 'paid' or 'unpaid'), and a description. Possible response status codes include 200 for success, 401 for unauthorized access, and 404 if the resource is not found.
  • POST https://{subdomain}.workable.com/spi/v3/timeoff/requests : This API endpoint allows users to create a new time off request. It requires a user-level token with the 'w_timeoff' scope for authorization. The request body must include the category_id, from_date, and to_date as required fields. Optional fields include half_days, which is an array of objects specifying half days, and a note with a maximum of 140 characters. The response will include details of the created time off request, such as the id, dates, state, and category name. If the request is unauthorized or the endpoint is not found, appropriate error messages will be returned.

FAQs

1) What’s the fastest way to start integrating with Workable?

Start with the basics: list jobs, fetch job details, and create candidates into a job pipeline. Knit exposes these same objects through a single unified endpoint, so you get that same starting data model on day one without building and authenticating a direct Workable connection first. That gives you immediate value and a clear data model for the rest.

2) Do I need webhooks, or can I just poll the API?

If you want reliable “near real-time” updates without burning rate limits, use subscriptions/webhooks. Knit manages the subscription lifecycle and webhook delivery for connected Workable accounts automatically, so integrators get near-real-time updates without registering and maintaining their own subscriptions. Polling is fine for low-volume use cases, but it doesn’t scale cleanly.

3) How do I build a custom application form that matches Workable?

Use the application form and questions endpoints for the job shortcode, and render those fields exactly. Knit passes through this same form and question data unmodified, so a custom careers experience built on Knit stays in sync with Workable’s job configuration the same way a direct integration would. This avoids drift between what Workable expects and what your form captures.

4) What’s the cleanest way to automate candidate progression through stages?

Create the candidate, then use the move endpoint to route them based on events (assessment complete, interview submitted, hiring manager review, etc.). Knit’s unified candidate and stage objects support this same move-on-event pattern, so the logic works the same way whether you’re driving it directly against Workable or through Knit alongside other ATS platforms. Keep your stage mapping in one config file so it’s maintainable.

5) How do I sync hiring team access and accountability?

Pull job members, recruiters, and combined members/recruiters so your internal tooling knows who’s on the loop, and who should approve, review, or act. Knit normalizes these member and role objects into a consistent shape, so internal tooling built on Knit doesn’t need Workable-specific logic to interpret roles and collaboration types.

6) What should I track for debugging and audit?

Track request IDs, timestamps, the candidate/job identifiers you used, and webhook delivery outcomes. Knit logs this correlation data for every request and webhook delivery it handles on your behalf, so integrators troubleshooting a sync issue have a consistent audit trail regardless of which ATS is involved. Most integration “mystery bugs” are just missing correlation across systems.

7) Can I integrate Workable with multiple HR tools without building everything from scratch?

Yes, but you’ll end up maintaining auth, mappings, webhooks, retries, and edge cases across every connector. Knit is built specifically to remove that maintenance burden: connect once, and the same unified integration covers Workable plus dozens of other ATS and HR platforms. That’s the real cost, engineering time and operational drag, that most teams underestimate until they’re maintaining their fifth connector.

Get started with Workable API integration using Knit

If you want quick and seamless access to Workable APIs without spending weeks on authentication, authorization, retries, and ongoing maintenance, use Knit. Integrate once with Knit, and standardize how you connect to Workable, so your team focuses on shipping workflows, not babysitting integrations.