Knit is #1 product of the week in the developer tools category on Product Hunt!
X
Insights

Unified API: All you need to know

Unified APIs help developers integrate once with a common data model to get instant access to multiple 3rd party apps within a category. Read to learn more

Today, SaaS integrations have become a necessity considering the current market landscape ensuring faster time to market, focus on product innovation and customer retention. A standard SaaS tool today has 350+ integrations, where as an early startup has minimum 15 product integrations in place.  

However, building and managing customer facing integrations in-house can be a daunting task, considering they are complicated, expensive and their volume and scope is ever increasing. With rising customer demands for a connected SaaS ecosystem, product owners are always on the lookout for ways to significantly increase their integration shipping time. Therefore, the integration market has seen the steady rise of API aggregators or unified APIs. 

This article will help you understand the diverse aspects of unified API, benefits and how you can choose the right one. 

Here’s what we will discuss here:

  • What is a unified API
  • Rise of unified API
  • Key components of unified API
  • Benefits of unified API
  • ROI of unified APIs
  • How unified APIs ensure a more secure connection
  • When to choose a unified API vs build integrations in-house
  • Workflow automation tools vs unified APIs
  • How to choose the right unified API provider

Let's get started.

What is a unified API?

A unified API is an aggregator or a single API which allows you to connect with APIs of different software by offering a single, standardized interface for different services, applications, or systems. Furthering SaaS integrations, it adds an additional abstraction layer to ensure that all data models and schemas are normalized into one data model of the unified API. 

Rise of unified API

As the volume of integrations have seen an exponential increase, the use of APIs has become more pronounced. With more APIs, complexity and costs of integrations are also increasing. Therefore, the reliance on unified API has seen an increase, guided by the following factors:

Increased API use

  • 90% of the entire developer population across the world uses APIs
  • 69% developers work with third party APIs
  • 98% of large enterprises consider APIs an essential part of their digital transformation strategy
  • 53% enterprises are consuming 3rd party APIs for developing products and services

To know more about API integration, its growth, benefits, key trends and challenges and increased use, check out our complete guide on What is API integration

High cost of in-house integrations

  • Integrations can take anywhere between 2 weeks to 3 months to build, keeping an average of 4 weeks
  • Building integrations require expertise and bandwidth of engineering teams, including QA engineers, product managers and software developers, whose salary can range from USD 80K to USD 125K
  • Therefore, the average cost per integration comes to USD 10K, and companies generally use 100+ integrations, at least 15-20 at a lower spectrum, leading to USD 150K- 200K of integration costs

Building and managing integrations is complex

  • APIs within the same software category can have different schemas and data models, requiring engineering teams to gain knowledge of different rules and architecture
  • Full version APIs might not be freely available for all applications, some might come at an additional cost or premium upgrade
  • Maintaining integrations can be difficult, especially when an API fails, and customer success teams lack the expertise to address these challenges 

Together these factors have been instrumental in the rise of unified API as a popular approach to facilitate seamless integrations for businesses.  

Key components of unified API

Let’s quickly walk through some of the top traits or components which form the building blocks for a good unified API. Essentially, if your unified API has the following, you are in good hands:

Data retrieval and aggregation

As the user requests for data, the Unified API efficiently retrieves relevant information from the concerned APIs. It also aggregates data from multiple APIs, consolidating all required information into a single API call. 

For instance, in a scenario where a user seeks an employee's contact and bank account details, the Unified API fetches and aggregates the necessary data from multiple APIs, ensuring a seamless user experience.

Normalization

Each application or software that your users want integration with will have distinct data models and nuances. Even for the same field like customer ID, the syntax can vary from cust_ID ro cus.ID and innumerable other options. 

A unified API will normalize and transform this data into a standard format i.e. a common data model and align it with your data fields to ensure that  no data gets lost because it is not mapped correctly. . 

Developers save engineering efforts for mapping, identifying errors in data exchange and understanding different APIs to facilitate normalization and transfer.  

Data sync

Once the data is normalized, the Unified API prepares it for transmission back to the user. This can be executed either via a webhook or by promptly responding to the API request, ensuring swift and efficient data delivery.

Some unified API requires you to maintain a polling infrastructure for periodically pulling data from the source application. While other unified APIs like Knit, follow a push architecture where in case an event occurs, it automatically sends you fresh data to the webhook registered by you.

Benefits of unified API

Now that you understand what constitutes a good unified API, it is important to understand the benefits that unified API will bring along. 

Faster time to market and scalability

Unified API allows engineering teams to go to the market faster with enhanced core product functionalities as time and bandwidth spent on building in-house integrations is eliminated. It enables accelerated addition or deletion of APIs from your product, creating the right market fit. At the same time, you can easily scale the number and volume of integrations for your product to meet customer demands, without worrying about time and cost associated with integrations. 

Reduced costs

As mentioned, building integrations with different APIs for different applications can be highly cost intensive. However, with a unified API, businesses can significantly save on multiple engineering hours billed towards building and maintaining integrations. There is a clear decrease in the hard and soft costs associated with integrations with a potential to save thousands of dollars per integration.  

Reduced maintenance responsibilities

Maintaining several APIs for integrations can be as difficult or at times more difficult than building integrations, as the former is an ongoing activity. A unified API takes out the friction from maintaining integrations and takes care when an API fails, or the application undergoes an upgrade, etc. Also, maintenance responsibilities involve context switching for engineering teams, which leads to a significant wastage of time and efforts. A unified API bears full responsibility for troubleshooting, handling errors and all other maintenance related activities. 

Managing integrations can be time and cost intensive, leading to unnecessary delays, budget challenges and diversion of engineering resources. Our article on Why You Should Use Unified API for Integration Management discusses how a unified API can cut down your integration maintenance time by 85%

Ease of documentation and KT

A unified API ensures that you don’t need to bury yourself in 1000s of pages of documentation for each and every integration or application API. Rather, it allows you to simply gain knowledge about the architecture and rules of the endpoint and authentication for the unified API. Invariably, the documentation is easy to understand and the knowledge transfer is also seamless because it is limited to one architecture. 

Standardized pagination

Pagination, filtering and sorting is an important element when it comes to integration for businesses. All these three elements help applications breakdown data in a way that is easier to consume and use for exchange. A unified API ensures that there is a standardization and uniformity between different formats of pagination, sorting and filtering among applications and it is extremely consistent. This prevents over-fetching or under-fetching of data, leading to more efficient data exchange. 

If you want to learn more about pagination best practices, read our complete guide on API pagination

New revenue opportunities

Finally, a unified API helps you create new revenue or monetization opportunities for businesses by allowing them to offer premium services of connecting all HRIS or CRM platforms on an integrated platform. A unified API has the potential to help customers save time and cost, something they would be willing to pay a little extra for. 

ROI of a unified API

While we have mentioned some of the top benefits of using unified APIs, it is very important to also understand how unified APIs directly impact your bottom line in terms of the return on investment. To enable SaaS companies to decode the business value of unified APIs, we have created an ROI calculator for unified API. Learn how much building integrations in-house is costing you and compare it with the actual business/monetary impact of unified APIs.

Some of the key tangible metrics that translate to ROI of unified APIs include:

I) Saved engineering hours and cost

II) Reduced time to market

III) Improved scalability rate

IV) Higher customer retention rate

V) New monetization opportunities

VI) Big deal closure

VII) Access to missed opportunities

VIII) Better security

IX) CTO sentiment

X) Improved customer digital experiences

To better understand the impact of these metrics and more on your bottom line and how it effectively translates to dollars earned, go to our article on What is the Real ROI of Unified API: Numbers You Need to Know.

Can unified API lead to better security?

A key concern for anyone using APIs or integrations is the security posture. As there is an exchange of data between different applications and systems, it is important that there is no unauthorized access or misuse of data which can lead to financial and reputational damage. Some of the key security threats for API include:

  • Unauthorized access
  • Broken authentication tokens
  • Injection attacks
  • Data exposure
  • Rate limiting and Denial of Service (DoS) attacks 
  • Third party dependencies
  • Human error

Learn more about the most common API security threats and risks you are vulnerable to and the potential consequences if you don’t take action. 

A unified API can help achieve better security outcomes for B2B and B2C companies by facilitating:

1) Authentication and authorization

Unified API adopts robust authentication and authorization models which are pivotal in safeguarding data, preventing unauthorized access, and maintaining the integrity and privacy of the information exchanged between applications. Strong authentication mechanisms, such as API keys or OAuth tokens, are critical to securely confirm identity, reducing the risk of unauthorized access. At the same time role-based access control and granular authorization are integral following the principle of least privilege, giving users the least access which is required to perform their roles successfully. 

Check out this article to learn more about the authentication and authorization models for better unified API security. 

2) Continuous monitoring and logging

A unified API is expected to continuously monitor and log all changes, authentication requests and other activities and receive real time alerts by using advanced firewalls. Some of the best practices for monitoring and logging include using logging libraries or frameworks to record API interactions, including request details, response data, timestamps, and client information, leverage API gateways, to capture data like request/response payloads, error codes, and client IPs, configuring alerts and notifications based on predefined security thresholds. 

Our quick guide API Security 101: Best Practices, How-to Guides, Checklist, FAQs can help you master API Security and learn how unified APIs can further accentuate your security posture. Explore common techniques, best practices to code snippets and a downloadable security checklist.

3) Data classification

A good unified API classifies data to restrict and filter access. Data is often categorized between what is highly restricted, confidential and public to ensure tiered level of access and authentication for better security. 

4) Data encryption

Since data protection is a key element for security with a unified API, there are multiple levels of encryption in place. It involves encryption at rest, encryption in transit and application level encryption as well for restricted data. 

5) Infrastructure protection

Finally, a unified API ensures security by facilitating infrastructure protection. Security practices like network segregation, DDoS protection using load balancers, intrusion detection, together helps ensure high levels of security from a unified API. 

6) API rate limiting & throttling

As mentioned, APIs are prone to DDoS attacks due to high intensity of traffic with an attack intention. Rate limiting and throttling help maintain the availability and performance of API services, protect them against abusive usage, and ensure a fair distribution of resources among clients. 

Go to our article on 10 Best Practices for API Rate Limiting and Throttling to understand how they can advance API security and how a unified API can implement preventive mechanisms in place to handle rate limits for all the supported apps to make their effective use. 

When to choose a unified API?

As a business, you can explore several ways in which you can facilitate integrations rather than building them in-house. However, there are a few instances when you should be using a unified API particularly.

Case I: When you want to integrate applications within the same category

A unified API is one of the best integration solutions if you wish to connect APIs or applications within the same category. For instance, there can be several CRM applications like Salesforce, Zoho, etc. that you might want to integrate, the same goes for HRIS, accounting and other categories. Therefore, a unified API can be a great solution if you have similar category applications to integrate. 

Start syncing data with all apps within a category using a single Knit Unified API. Check out all the integrations available.

Case II: When you have different data models

Secondly, a major use case for unified API comes when you have applications which follow different datasets, models and architecture and you want to standardize and normalize data for exchange. A unified API will add an abstraction layer which will help you normalize data from different applications with diverse syntax into a uniform and standardized format. 

Case III: When you want to ensure data security

Next, when it comes to using a unified API, data security becomes a key benefit. Integrations and data exchange are vulnerable to unauthorized access and ensuring high levels of security is important. With factors like least privilege, encryption, infrastructure security, etc. a unified API is a good pathway to integration when security is a key parameter for you for decision making. 

You can easily check the API security posture of any unified API provider using this in-depth checklist on How to Evaluate API Security of a Third Party API Provider.

Case IV: When you have limited domain expertise

There might be times when your team doesn’t have the domain expertise for a particular application you might be using and may not be well versed with the terminologies there. For instance, if you are using an HRIS application and your team lacks expertise in the HR and payroll space, chances are you won’t be able to understand different data nomenclatures being used. Here, using a unified API makes sense because it ensures accurate data mapping across applications. 

Get Knit Unified API Key

Case V: When you don’t want to spend engineering time in understanding several APIs

Finally, a unified API is the right choice if you don’t want to spend your engineering bandwidth in understanding and learning about different API, their endpoints and architecture. Different APIs are built on REST, SOAP, GraphQL, each of which requires a high level of expertise and understanding, pushing companies to invest in developer hiring with relevant skills and experience. However, when it comes to a unified API, the engineering teams only need to learn about one endpoint and develop knowledge of a single architecture. Usually, unified APIs are built on REST. Thus, you should go for a unified API if you don’t want to invest engineering time in API education. 

If you find yourself conflicted between whether building or buying is the best approach to SaaS integrations and how to choose the right one for you, check out our article on Build vs Buy: The Best Approach to SaaS Integrations to make an informed decision. 

Unified API vs Workflow Automation

While building integrations in-house vs leveraging unified API are two approaches you can follow, there are other paths you can tread under the ‘buying’ integrations landscape. One of the leading approaches is workflow automation. Let’s quickly compare these two approaches under the buying integrations banner.

Workflow automation tools facilitate product integration by automating workflow with specific triggers. These are mostly low code tools which can be connected with specific products by engineering teams for integration with third party software or platforms. Choose workflow automation for:

  • A low code integration solution
  • One-off customer facing integration or integrations for internal use
  • Limited functionalities for data normalization
  • Off-the rack workflows and integration syncs

A unified API normalizes data from different applications within a software category and transfers it to your application in real time. Here, data from all applications from a specific category like CRM, HRMS, Payroll, ATS, etc. is normalized into a common data model which your product understands and can offer to your end customers. Use a unified API for:

  • Standardized customer-facing integrations
  • High levels of data normalization and standardization
  • Scalable integrations that can be replicated across customers
  • A native integration experience which can be scaled efficiently

For a more detailed comparison between these two approaches to make an informed choice about which way to go, check out our article on Unified API vs Workflow Automation: Which One Should You Choose?

How to choose the right unified API?

If you have decided that a unified API is the way to go for you to facilitate better integrations for your business, there are a few factors you must keep in mind while selecting the right unified API among the different options available.

1. Coverage of API endpoints and applications

Start by evaluating how many API endpoints does the unified API cover. As you know that APIs can be built of REST, SOAP, GraphQL, it is important that your unified API covers them all and ensures that you have to learn the rules of a single architecture. At the same time, it is vital that it covers all or at least most of the applications or software that fall under the category you are looking for in a unified API. For instance, there can be thousands of applications within the HRIS category, you must evaluate if the unified API ensures that all HRIS applications or the ones that you use/ might need in the future are covered. 

Taking this example forward, here is a quick comparison between Finch and Knit on which unified HR API is most suited for user data, security and management. 

2. Data storage and security

Second, we mentioned that a good unified API provides you with a strong security posture.Therefore, it is important to check for the encryption and authentication models it uses. Furthermore, security parameters on least privilege, etc. must also be accounted for. A related factor to security is data storage. On the one hand, you must ensure that the unified API is compliant with data protection and other confidentiality laws, since they might have access to your and your customer’s data. On the other hand, it is equally important to ensure that the unified API doesn’t create a copy of customer data which can lead to security risks and additional storage costs. 

3. Pricing structure

Next, you need to check the pricing structure or pricing model being offered by the unified API. Pricing structures can be based on per customer along with platform charges, flat rates for a fixed number of employees and API call based charges. Increasingly, API call based charges are considered to be the most popular among developers as they turn out to be the most cost effective. Other pricing models which are not usage based can be very expensive and not sustainable for many companies. 

4. Data sync model

A unified API can have data sync in different ways, either it is polling first or webhooks first. Gradually, developers are preferring a webhooks first approach where customers don’t have to maintain a polling infrastructure as data updates are dispatched to customers' servers as and when they happen. Depending on your needs, you must evaluate the unified API based on the data sync model that you prefer. 

If you are confused between which unified API provider to choose, here’s a quick comparison of Knit and Merge, two leading names in the ecosystem focusing on data syncs, integration management, security and other aspects to help you choose the platform which is right for you. 

5. Monetization opportunities 

Finally, you should look for unified APIs which can provide you with monetization opportunities in addition to reduced costs and other benefits mentioned above. Gauge and evaluate whether or not the unified API can help you provide additional functionalities or efficiencies to your customers for which you can charge a premium. While it might be applicable for every application category you use, it is always good to have a monetization lens on when you are evaluating which unified API to choose. 

6. Scalability

Make sure your unified API can grow as you add more integrations and data load. Check if it can handle your current and future integrations. Also, ensure it can manage large amounts of data quickly. Use batch processing to handle the incoming data from different sources efficiently.

While these are a few parameters, explore our detailed article on What Should You Look For in A Unified API Platform? while evaluating an API management tool for your business.

7. Integration maintenance

It is important the unified API not only helps you build integrations but also enables you to maintain them with detailed Logs, Issues, Integrated Accounts and Syncs page and supports you to keep track of every API calls, data syncs and requests. 

Learn how Knit can help you maintain the health of your integrations without a headache.

Wrapping up: TL:DR

To conclude, it is evident that unified APIs have the potential to completely reinvent the integration market with their underlying potential to reduce costs while making the entire integration lifecycle seamless for businesses. Here are a few key takeaways that you should keep in mind:

  • A unified API adds an abstraction layer to connect different API for software in the same category
  • The high costs of building and maintaining integrations along with the engineering team drain are the major factors leading to the rise of the unified API
  • It is important to ensure that your unified API normalizes and standardizes data for exchange
  • Security in the form of authentication, encryption, least privilege, data classification, etc. are important parameters that make unified API a preferred choice
  • A unified API is the best option when you wish to integrates similar software category applications and don’t wish to spend engineering bandwidth on learning different architectures
  • Using a unified API can help developers take their products to market faster and scale seamlessly, addressing increasing customer integration needs
  • Factors like data storage, pricing, data sync models, coverage, etc. must be considered while choosing the right unified API for your business

Overall, a unified API can help businesses integrate high volumes of applications in a resource-lite manner, ultimately saving thousands of dollars and engineering bandwidth which can be invested in building and improving core product functionalities for better market penetration and business growth.

If you are looking to build multiple HRIS, ATS, CRM or Accounting integrations faster, talk to our experts to learn how we can help your use case

Yasharth Mishra

Co-founder and CEO, Knit

Unifying the world of integration with Knit

Latest Blogs

Browse all Blogs
API Directory
Apr 9, 2024

A Guide toIntegrating with Freshteams API

11
mins

Freshteam API Directory

A cloud based HR software, Freshteam enables organizations with managing employee details, recruitment, on-boarding, time-off, off-boarding, and organization details, among other aspects of their HR processes and practices. With Freshteam API integration, organizations can seamlessly synchronize data between their application and Freshteam to ensure real time updation of employee information across both platforms. It helps capture any changes in employee status, designation, HR policies, etc. across different applications a business uses. 

Freshteam API Authentication, Filtering, Rate Limits

To ensure utmost security and prevent unauthorized access, Freshteam API uses Oauth2.0 for authentication and authorization. Developers can use the Freshteam UI to make calls to the Freshteam authentication server to obtain an access token. This access token can be used to make valid API calls thereon. The access token identifies the requester and the requester’s permission. In the Freshteam domain, the access token is present under Your API Key, which can be copied and used to make API calls. 

Rate limits i.e. the number of API calls that can be made in a minute for Fresteam API are determined by the plan selected by the organization. The rate limit variation for each plan is dependent on the number of subscribed employees for the organization. The trial account has a limit of 10 API calls per minute, which goes on to as high as (100, 2 * number of subscribed employees) API calls per minute for the enterprise plan. Developers or admins can also keep a track of the API calls to understand their usage patterns via:

  • X-ratelimit-total: Permissible number of API calls in a minute.
  • X-ratelimit-remaining: Number of API calls remaining.
  • X-ratelimit-used-currentrequest: Number of API calls consumed by the API request that obtained the response.

There are several endpoints in Freshteam API which retrieve bulk data, especially the ones which are required to List a certain object. In such a case, developers can use pagination parameters to filter data and limit the responses for a streamlined understanding. Developers can select the page value (from which page number they want responses), as well as the number of responses required for each page (default is set at 50). They can also sort the values as ascending or descending or select some other attribute for sorting as well. 

Freshteam API Objects, Data Models & Endpoints

Employees

  • List all employees: GET /employees
  • Create an employee: POST /employees
  • Retrieve employee information: GET /employees/{id}
  • Update employee information: PUT /employees/{id}
  • List all employee fields: GET /employee_fields
  • Create a custom employee field: POST /employee_fields

Common attributes: id, created at, updated at, workstation number, date of birth, gender, address, communication address, designation, phone number, joining date, termination date, first name, last name, status, official email, personal email, employee type, team id, department id, reporting to id, time off, hire reason, marital status, etc. 

Branches

(Used to configure different geographical locations for an organization and associate employees to a branch)

  • List all branches: GET /branches

Common attributes: id, created at, updated at, name, street, state, country code, zip, time zone, currency, language, main office, date format

Departments & Sub-Departments

  • List all departments: GET /departments
  • List all sub-departments: GET /sub_departments

Business Units

  • List all business units: GET /business_units

Common attributes: id, created at, updated at, name, description

Teams

  • List all teams: GET /teams

Levels

  • List all levels: GET /levels

Timeoffs

  • List all timeoffs: GET /time_offs
  • Create a timeoff request: POST /time_offs
  • List all timeoff types: GET /time_off_types
  • Retrieve timeoff information: GET /time_off_types/{id}
  • Cancel A Timeoff Request: PUT /time_off_types/{id}/ cancel
  • Approve A Timeoff Request: PUT /time_off_types/{id}/ approve

Common attributes: id, created at, updated at, start date, end date, status, leave units, leave type id, status comments, comments, attachment, applied by, approved by, rejected by, canceled by, notify to, description, add to calendar, canceled at, optional leave days, applicable for, auto approve, status

Roles

  • List all roles: GET /roles

Job Postings

  • List all job postings: GET /job_postings
  • Retrieve job posting information: GET /job_postings/{id}
  • List all job posting fields: GET /job_posting_fields
  • List all applicant fields: GET /job_postings/{id}/applicant_fields
  • Create an applicant: POST  /job_postings/{id}/applicants

Common attributes: id, created at, updated at, deleted, title, description, status, show_pursue_as_career, closing date, experience, remote, type, salary, branch, department, title, location, skills, requisitions, label, field type, position, candidate, candidate id, first name, last name, date of birth, mobile, phone number, source id, resume, cover letter, portfolio, skype id, content file name, url, gender, profile link, rejected at, archived at, on hold at, on hold till

Candidate Sources

  • List all candidate sources: GET /candidate_sources
  • Create a candidate source: POST /candidate_sources
  • List all candidate source categories: GET ​/candidate_source_categories

Common attributes: id, created at, updated at, deleted, label, default, leads count

User Functions

  • List all user functions: GET /user_functions

New Hires

  • Create a new hire: POST /new_hires
  • Retrieve new hire information: GET /new_hires/{id}
  • Update new hire information: PUT /new_hires/{id}

Common attributes: id, created at, updated at, deleted, first name, middle name, last name, official email, employee id, status, workstation number, designation, joining date, probation start date, probation end date, branch id, team id, department id, sub department id, termination date, termination reason, notice period, notice start date, notice end date, employee type, hired on, no show, no show reason, date of birth, marital status, gender, blood group, emergency contacts, social profiles, address, communication address, phone numbers, job codes, job exempt, scheduled weekly hours, retirement eligibility date, rehire eligibility, rehire status, confirmed, language, branch, team

Freshteam API Use Cases

  • Centralize HR operations with AI-powered virtual agents, self-service solutions and  seamless integration with MS Teams, Slack, and other applications
  • Automate internal processes with easy-to-configure workflows, leading to streamlined work and increased efficiency
  • Leverage 50+ job descriptions out of the box for use to accelerate hiring processes
  • Capture qualitative feedback about candidates along with better candidate relationships through built-in email and a manageable candidate database

Top customers

50,000+ companies from across 120+ countries use Freshteam to power their HR operations and streamline processes to make them efficient, robust and optimized. Here are some of the top customers that are leveraging Freshteam:

  • Gartner, Inc., an American technological research and consulting firm
  • OpeninApp, a smart link generator tool that ensures all social media links open in the apps they should
  • Dymocks Booksellers, an Australian-founded privately owned bookstore chain
  • Valley Medical Center, a 321-bed, acute care community hospital and clinic network
  • Kirat Plastics, a full-service custom plastic injection molding, metal pressing, fabrication, and assembly facility
  • Lot Squared Development, a Washington DC based design-build residential real estate developer 

Freshteam API FAQs

Here is a list of Freshteam API FAQs that developers must understand to make their integration journey more effective and robust:

  • How to use Freshteam Developer API? Answer
  • Where to find Freshteam API key, how to reset it and Scope of an API Key? Answer
  • What are the status and error messages that indicate the success or failure of an API request in Freshteam API? Answer
  • What are the common request header parameters used in requests to Freshteam APIs? Answer
  • What are the API methods that developers interact with for Freshteam API? Answer
  • What are models in Freshteam API? Answer

Common Integrations with Freshteam API 

Businesses, especially those engaged in the employee side of work, are increasingly seeking integration with Freshteam API to streamline data exchange between this HRIS platform and their application. Some of the top use cases and common integrations with Freshteam API include:

  • Recruitment companies which can use the write APIs to update candidate information into Freshteam once a client is hired to ensure the customer’s HRIS is up to date for all onboarding and future requirements
  • Payroll providers can leverage both read APIs to fetch employee information for payroll creation and disbursement, as well as write APIs, to push back data into customer’s Freshteam account to notify that salaries have been paid
  • Rewards and recognition companies which can use integration with Freshteam API to fetch information on employees to seamlessly manage their operations and help end customers build a culture of recognition.  

How to integrate with Freshteam API 

To kickstart the integration journey with Freshteam API, developers can go through this quick start guide. The first step is to create a developer account and join the Freshteam developer community. Next developers need to follow the installation instructions to install the API SDK. Following this it is important to get acquainted with the authorization and authentication protocols to access data and make API calls.  Learn about the terms of use for accessing or using the Freshteam developer portal and understand the different terminology used. For more support and information, businesses can scroll through the Freshteam support page and get answers to their queries. 

Get started with Freshteam API 

Companies that integrate with Freshteam API benefit from the seamless exchange of information between this HRIS platform and their application and have been able to explore multiple use cases for their end customers. However, manually building and maintaining integration with Freshteam API can be a daunting task for developers. Building the integration alone can take 4 weeks on an average and cost USD 10K (considering the cost of software developers, QA engineers, etc.). Further, the cost associated with maintaining the Freshteam API adds another burden on the bottom line, while diverting resources away from core product functionalities and enhancements. And, this is for a single HRIS integration in question here (Freshteam API). Businesses generally need to integrate with multiple HRIS APIs, meeting the demands of their end customers. Here, a unified HRIS API like Knit can enable businesses to easily integrate with multiple HRIS applications with a single connector. By incorporating an additional layer of abstraction, a unified API allows businesses to ship and scale integrations faster and in an efficient manner. Book a discovery call today to learn how developers can integrate with Freshteam API and other HRIS applications within hours and not weeks. 

API Directory
Apr 9, 2024

A Guide to Integrating with Zenefits APIs

11
mins

Zenefits API Directory

TriNet Zenefits is a leading provider of full service HR solutions. It enables small and medium sized companies to administer and manage benefits, HR offerings, including time tracking, onboarding, employee engagement, employee record keeping; payroll; performance and well-being. As a highly sought after HRIS platform, companies have been increasingly integrating with TriNet Zenefits to facilitate seamless exchange of HRIS data, captured by Zenefits, with their own apps to drive diverse use cases. 

Zenefits API Authentication, Filtering, Rate Limits

Owing to the sensitive nature of information held by the HRIS application, including personal identifiable information (PII), Zenefits API ensures that all data scopes are accessed at a granular level. The Zenefits API uses OAuth2 to authenticate and authorize access to information stored in the application. OAuth2 authorizes third party applications to request private details from Zenefits accounts, without passwords. It is limited only to admins and developers receive unique Client ID and Client Secret to access data with integration. 

Zenefits API pagination helps developers define the records needed per page. The developers can use the limit parameter to specify the number of records in a response. The maximum limit can be 100, however, in case the limit is not defined, the default limit is 20. In case the total number of records do not fit into a single page, the next_url field will have a link to the next page with the remaining records. In case the next_url field displays null, then no records exist for subsequent pages. Developers can also use the starting_after or ending_before query parameter to specify pagination based on object ids. The ending_before query parameter is useful for backwards pagination. 

Zenefits API Objects, Data Models & Endpoints

It is extremely important for developers to understand the objects, data models and endpoints when it comes to integrating with Zenefits API. While the overall scope might be large, here are a few which can be considered as a starting point for Zenefits API integration. 

  • Applications: Used to return information about the application

GET https://api.zenefits.com/platform/applications

  • Companies: Used to get information about the company

GET https://api.zenefits.com/core/companies

Fields include: ‘legal_name', 'ein','departments', 'locations'

  • People: Used to return information about a company’s employees

GET https://api.zenefits.com/core/companies/{:company_id}/people

GET http://api.zenefits.com/core/people/{:id} (For information about a single employee)

GET http://api.zenefits.com/core/people (For information for all employees across the company)

Fields include: 'work_email', 'date_of_birth', 'manager', 'department', 'location', 'work_phone', 'status', 'subordinates', 'banks','company', 'employments', 'department', 'location', 'manager', 'banks'

  • Employments: Used to return information about an employee’s employment history

GET https://api.zenefits.com/core/people/{:person_id}/employments

GET https://api.zenefits.com/core/employments/{:employment_id} (For information on a specific employment

GET https://api.zenefits.com/core/employments (For information on all employments across all people)

Fields include: 'termination_type', 'employment_type', 'comp_type', 'annual_salary', 'pay_rate', 'working_hours_per_week','person'

  • Employee Bank Accounts: Used to return information about employee’s bank account

GET https://api.zenefits.com/core/people/{:person_id}/banks

GET http://api.zenefits.com/core/banks/{:bank_id} (For information for a specific bank)

GET http://api.zenefits.com/core/banks (For information for all banks across all people)

  • Departments: Used to return the list of a company’s department

GET https://api.zenefits.com/core/companies/{:id}/departments

GET http://api.zenefits.com/core/departments/{:department_id} (For information regarding a single department:

GET http://api.zenefits.com/core/departments (For information relating to all departments across all companies)

  • Locations: Used to return the list of a company’s location

GET https://api.zenefits.com/core/companies/{:company_id}/locations

GET http://api.zenefits.com/core/locations/{:location_id} (For information relating to a single location)

GET http://api.zenefits.com/core/locations (For information relating to all locations across all companies)

  • Vacation Requests: Used to return information about employees' PTO vacation requests

GET https://api.zenefits.com/time_off/vacation_requests

GET http://api.zenefits.com/time_off/vacation_requests/{:id} (For information relating to a single vacation request)

GET http://api.zenefits.com/time_off/vacation_types/{:vacation_type_id}/vacation_requests/ (For all vacation requests for a single vacation type)

Fields include: 

  • status: Requested, approved, denied, cancelled, deleted
  • vacation_type: Vacation Type for this request, e.g. Jury Duty, Work From Home, Doctor's Appointment
  • start_date: Start date of vacation request (inclusive)
  • end_date: End date of vacation request (inclusive) 
  • creator i.e. Person who filed this vacation request
  • person i.e. Person who this vacation request applies to (often the same as creator)
  • created_date: Date this vacation request was created
  • hours: Number of hours requested, generally calculated at 8 hours a day for multi-day requests and specified manually for single day requests
  • approved_date: Date this request was moved from requested status, either to approved or denied.
  • reason: Note from the person requesting this vacation
  • deny_reason: Note from the approver for why this vacation request was denied. (Only applies if status is denied)

  • Vacation Types: Used to return information about a company's PTO vacation types

GET https://api.zenefits.com/time_off/vacation_types 

GET http://api.zenefits.com/time_off/vacation_types/{:id} (For information relating to a single vacation type)

Fields include:

  • status: Active, deleted
  • vacation_types
  • name: Name of the type
  • company: Company for this vacation type
  • vacation_requests: Vacation Requests for this type
  • counts_as: What account this type counts towards (vacation, sick, personal)

  • Time Durations: Used to return information about a person's T&A hours

GET https://api.zenefits.com/time_attendance/time_durations

GET http://api.zenefits.com/time_attendance/time_durations/{:id} (For information relating to a single time duration object)

Fields include: 

  • person: Person that this time duration is logged for people
  • activity: Activity type (work, meal_break)
  • state: Effective, overridden, deleted, correction
  • valid_status: valid, exceeds, overlapping same day, overlapping previous day, overlapping next day, missing clock out, missing clock in
  • hours: Number of hours logged
  • start: When this time duration started
  • end: When this time duration ended
  • is_overnight: Whether this time duration has been marked as part of an overnight shift
  • is_approved: When this time duration was approved. 
  • approver: Person who approved this time duration

Zenefits API Use Cases

  • Automate onboarding, saving 100s of hours as information gets auto synced to Benefits and Payroll
  • Simplify employee management with organizational charts, company directories allowing employees to update their own records
  • Improve HR processes and decision making with business intelligence reports and insights on turnover, workforce diversity, with understanding of how to pay new hires
  • Simplify the process of providing great benefits to employees, from comprehensive healthcare plans to extra perks like commuter benefits
  • Facilitate time and attendance management with employee scheduling tools, with time off and clocked-in hours automatically syncing Payroll

Zenefits API FAQs

Here is a list of FAQs about TriNet Zenefits API which can help commence and accelerate your integration:

  • What is the software stack of Zenefits? Answer
  • How to address the CORS issue in Angular 8 without changing the backend in Zenefits API? Answer 
  • How to handle New Company Installations in TriNet Zenefits API? Answer
  • How to handle New People's Subscriptions in TriNet Zenefits API? Answer
  • What does Webhooks shared secret vs OAuth client secret mean? Answer
  • How to read and write custom data with Zenefits API? Answer
  • How to issue Access Tokens for Zenefits API authentication and authorization? Answer
  • Where can I find a guidebook for Zenefits integration? Answer
  • Does Zenefits have a public API? Answer
  • What is Zenefits’ App Acceptance Criteria for API integration? Answer
  • Where is the developer portal for Zenefits API? Answer

Common Integrations with Zenefits API 

Several businesses are increasingly building integrations with Zenefits API to power operations for the end customers, facilitated by seamless data exchange, including:

  • Payroll providers to get access to employee information, employment records and agreement terms, compensation details and other relevant information like leaves, time off, etc. 
  • Candidate recruitment companies to push data about selected candidates and relevant information for smooth onboarding
  • Employee engagement companies to fetch employee data, including demographic information, personal and professional details, attendance, etc. 
  • Early wage access providers to get access to employee information, payroll details and even write back data regarding early payments/ deductions for accurate payroll processing

How to integrate with Zenefits API 

To get started with the Zenefit API integration journey, a developer account needs to be created. To create the same, developers can reach out to Zenefits team by dropping an email on this email address. Reaching out on this email ID will take the developers to the next step to get access to a sandboxed Zenefits test company and credentials to start using the API. Once the Zenefits developer account is active, developers can leverage this getting started guide for a detailed overview on REST API, Modules, Webhooks, Authentication and much more.  It is important to read through and understand the App Acceptance Criteria well. The same can be accessed here. At the same time, knowledge of the Zenefits Developer Policy is critical to understand the technical, brand and general requirements and restrictions. 

Get started with Zenefits API 

Integrating with Zenefits API is beneficial for businesses looking to seamlessly exchange data with this leading HRIS provider with bi-directional sync. However, building a custom 1:1 integration can be a complex, time and resource intensive process. The above mentioned steps, restrictions and requirements can all choke up developer bandwidth. Invariably, SaaS businesses today are moving away from building integrations to partnering with unified APIs like Knit. A unified API, in this case for HRIS integrations, enables companies to integrate once and seamlessly connect with multiple HRIS applications, including Zenefits API, without any additional requirements. With a unified HRIS API, maintenance and management of integration with Zenefits and other applications also becomes quite easy. Book a discovery call today to learn how a unified API can help you ship and scale integrations fast. 

API Directory
Mar 21, 2024

Comprehensive Guide to Keka API Directory

11
mins

Keka is a leading human resources management system that enables organizations to seamlessly manage diverse aspects of their human resource processes, including recruitment and onboarding, attendance and time management, payroll, expense and performance management. With OAuth authentication, rate limiting, pagination, and adherence to industry standards, Keka provides developers with everything they need to build robust integrations with their software/ platform and facilitate data exchange between their application and this leading HRMS portal. 

Keka API Authentication, Pagination, Rate Limit

To ensure safe and secure access, Keka API uses OAuth for authentication. This suggests that for successful integration, developers need an access token which can be generated with specific details. This includes client id (identifier for the client), client secret (for secure authentication), api key (unique API key for accessing the system), scope (requires passing kekaapi for this key). To facilitate integration testing for applications, developers can also leverage the Sandbox Environment which is offered by Keka. This allows developers to ensure robust functionality, before integration production begins. Keka APIs already come with pagination implemented to ensure response time optimization. The standard or the default page size in Keka is 100 with 1 being the default page number. 

API limit is a critical element of any API and so is the case with Keka, which helps define the number of requests that can be made to Keka within a limited time period. Keka has a rate limit of 50 API requests/ minute. This suggests that once 50 requests are made in a minute, the user needs to wait for the quote to be refilled before any other request is made. The rate limits are enforced and automatically reset after 60 seconds. In case a request is made before the quota is refilled, a 429 error with the reason rateLimitExceeded will be sent. 

Keka API Objects, Data Models & Endpoints

As a developer or the representative of an organization seeking to integrate with Keka API, it is important to understand the endpoints that you will be using eventually for data exchange, both when it comes to read APIs (getting data from Keka) as well as write APIs (providing data to Keka). 

CORE HR

Employees

  • Get all Employees

GET https://{company}.{environment}.com/api/v1/hris/employees

  • Create an Employee

POST https://{company}.{environment}.com/api/v1/hris/employees

  • Get an Employee

GET https://{company}.{environment}.com/api/v1/hris/employees/{id}

  • Get all update fields

GET https://{company}.{environment}.com/api/v1/hris/employees/updatefields

  • Update Employee personal details

PUT https://{company}.{environment}.com/api/v1/hris/employees/{id}/personaldetails

  • Update employee job details

PUT https://{company}.{environment}.com/api/v1/hris/employees/{id}/jobdetails

Groups

  • Get all Groups

GET https://{company}.{environment}.com/api/v1/hris/groups

  • Get all Group Types

GET https://{company}.{environment}.com/api/v1/hris/grouptypes

Departments

  • Get all departments

GET https://{company}.{environment}.com/api/v1/hris/departments

Locations

  • Get all Locations

GET https://{company}.{environment}.com/api/v1/hris/locations

Job Title

  • Get all job titles

GET https://{company}.{environment}.com/api/v1/hris/jobtitles

Currency

  • Get all currencies

GET https://{company}.{environment}.com/api/v1/hris/currencies

Notice Period

  • Get all notice periods

GET https://{company}.{environment}.com/api/v1/hris/noticeperiods

LEAVE

Leave Types

  • Get all Leave Types

GET https://{company}.{environment}.com/api/v1/time/leavetypes

Leave Balance

  • Get all Leave balances

GET https://{company}.{environment}.com/api/v1/time/leavebalance

Leave Requests

  • Get all Leave Requests

GET https://{company}.{environment}.com/api/v1/time/leaverequests

  • Create an Leave Request

POST https://{company}.{environment}.com/api/v1/time/leaverequests

ATTENDANCE

Attendance

  • Get all Attendance Records

GET https://{company}.{environment}.com/api/v1/time/attendance

Attendance Capture Scheme

  • Get all captureschemes

GET https://{company}.{environment}.com/api/v1/time/capturescheme

Holiday Calendar

  • Get all holidays Calendar

GET https://{company}.{environment}.com/api/v1/time/holidayscalendar

PAYROLL

Salary Components

  • Get all Salary Components

GET https://{company}.{environment}.com/api/v1/payroll/salarycomponents

Pay Groups

  • Get all Pay Groups

GET https://{company}.{environment}.com/api/v1/payroll/paygroups

Pay Cycles

  • Get all Pay Cycles

GET https://{company}.{environment}.com/api/v1/payroll/paygroups/{payGroupId}/paycycles

  • Get Pay Register

GET https://{company}.{environment}.com/api/v1/payroll/paygroups/{payGroupId}/paycycles/{payCycleId}/payregister

  • Get all Pay Batches

GET https://{company}.{environment}.com/api/v1/payroll/paygroups/{payGroupId}/paycycles/{payCycleId}/paybatches

  • Get all Batch Payments

GET https://{company}.{environment}.com/api/v1/payroll/paygroups/{payGroupId}/paycycles/{payCycleId}/paybatches/{payBatchId}/payments

  • Update the Payments status

PUT https://{company}.{environment}.com/api/v1/payroll/paygroups/{payGroupId}/paycycles/{payCycleId}/paybatches/{payBatchId}/payments

Pay Grades

  • Get all Pay Grades

GET https://{company}.{environment}.com/api/v1/payroll/paygrades

Pay Bands

  • Get all Pay Bands

GET https://{company}.{environment}.com/api/v1/payroll/paybands

PSA

Clients

  • Get all clients

GET https://{company}.{environment}.com/api/v1/psa/clients

  • Create a Client

POST https://{company}.{environment}.com/api/v1/psa/clients

  • Get a client

GET https://{company}.{environment}.com/api/v1/psa/clients/{id}

  • Update a Client

PUT https://{company}.{environment}.com/api/v1/psa/clients/{id}

Project Phases

  • Get project phases.

GET https://{company}.{environment}.com/api/v1/psa/projects/{projectId}/phases

  • Create a Project Phase

POST https://{company}.{environment}.com/api/v1/psa/projects/{projectId}/phases

Projects

  • Get all projects.

GET https://{company}.{environment}.com/api/v1/psa/projects

  • Create a Project

POST https://{company}.{environment}.com/api/v1/psa/projects

  • Get a project

GET https://{company}.{environment}.com/api/v1/psa/projects/{id}

  • Update a Project

PUT https://{company}.{environment}.com/api/v1/psa/projects/{id}

  • Get a project allocations

GET https://{company}.{environment}.com/api/v1/psa/projects/{id}/allocations

  • Get project timesheet entries.

GET https://{company}.{environment}.com/api/v1/psa/projects/{id}/timeentries

Tasks

  • Get project tasks.

GET https://{company}.{environment}.com/api/v1/psa/projects/{projectId}/tasks

  • Create a task

POST https://{company}.{environment}.com/api/v1/psa/projects/{projectId}/tasks

  • Update a task

PUT https://{company}.{environment}.com/api/v1/psa/projects/{projectId}/tasks/{taskId}

  • Get project task time entries.

GET https://{company}.{environment}.com/api/v1/psa/projects/{projectId}/tasks/{taskId}/timeentries

PMS

Time Frames

  • Get time frame list.

GET https://{company}.{environment}.com/api/v1/pms/timeframes

Goal

  • Get goal list.

GET https://{company}.{environment}.com/api/v1/pms/goals

  • Update goal progress

PUT https://{company}.{environment}.com/api/v1/pms/goals/{goalId}/progress

Badge

  • Get badge list.

GET https://{company}.{environment}.com/api/v1/pms/badges

Praise

  • Add Praise

POST https://{company}.{environment}.com/api/v1/pms/praise

EXPENSE

Expense Category

  • Get all Expense Categories

GET https://{company}.{environment}.com/api/v1/expense/categories

Expense

  • Get all Expense Claims

GET https://{company}.{environment}.com/api/v1/expense/claims

Expense Policy

  • Get all expense policies

GET https://{company}.{environment}.com/api/v1/expensepolicies

ASSETS

Asset

  • Get all Assets

GET https://{company}.{environment}.com/api/v1/assets

Asset Type

  • Get all Asset Types

GET https://{company}.{environment}.com/api/v1/assets/types

Asset Category

  • Get all Asset Categories

GET https://{company}.{environment}.com/api/v1/assets/categories

Asset Condition

  • Get all Asset Conditions

GET https://{company}.{environment}.com/api/v1/assets/conditions

Keka API Use Cases

  • Easy payroll processing and integration with attendance and leave to ensure proper calculation of payroll and taxes
  • Covers every HR workflow to manage people processes, including hiring, onboarding, probation confirmation, internal movements, etc.
  • Streamline all HR operations with automated workflows, comprehensive analytics, and hassle-free employee management
  • Conduct a multi-dimensional assessment of employees' abilities, behavioral competencies, and performance for constructive team evaluation
  • Get an accurate view of revenue against each project, resources allocation, and amount of time spent
  • Robust attendance management system that integrates every aspect of time tracking, including scheduling shifts, and tracking over-time, fully integrated with payroll

Top Customers

Keka, as an HRMS tool, is widely used with 5000+ customers, including:

  • Noise, India's trusted wearable watch brand
  • GrabOn, one of India’s top players in the coupons and deals industry
  • ICM, a UK-based global multi-regulated financial service provider
  • Easypolicy, a leading insurance aggregator
  • Traveazy, a Dubai-based travel-tech company focused on simplifying pilgrimage travel
  • Unbox Robotics, a leading supply chain robotics technology company specializing 
  • HackerEarth, a comprehensive developer assessment software that helps companies accurately measure developers' skills while recruiting
  • Metrochem API, a manufacturer of Active Pharmaceutical Ingredients (APIs), Pellets, and Intermediates in Multi Therapeutic segments

Keka API FAQs

Here’s a list of quick FAQs which will help answer any thoughts that you might have during your journey of integrating your application with Keka API

  • How can an admin create an API access key on Keka? Answer
  • How to integrate the Mettl assessment app with Keka Hire? Answer
  • How to integrate Naukri with Keka Hire? Answer
  • How to integrate Keka Hire with HackerEarth for Sending Assessments? Answer
  • How to integrate Keka Hire with LinkedIn? Answer 
  • How to integrate MS Teams account with Keka Hire? Answer
  • How to integrate SpringVerify with Keka? Answer

How to integrate with Keka API 

If you are just getting started, it might be a good idea to go through this documentation to understand how you can initiate the integration process. The detailed documentation contains everything you need to know about the overview, endpoints and much more. Leverage this to learn about the different data models scope and other details which will come in handy to get started. At the same time, this link will help you generate the access token for seamless authentication. 

Get started with Keka API 

While the guide shared above will serve as a comprehensive starting point for you to integrate your application with Keka API, it is important to understand that the entire process can be engineering heavy, time consuming and resource intensive. Put simply, it’s not just about building an integration, but also about managing and maintaining it over time. At the same time, if you want to connect with other HRMS APIs, the process becomes multifold. In such a situation, leveraging a unified HRMS API like Knit can come in handy. Knit enables SaaS businesses to easily connect with multiple HRMS applications by integrating once with its unified API, eliminating the need to connect with each application separately.

Book a demo call today to learn how you can accelerate your integration journey with Keka and other HRMS applications using Knit. 

Start building with Knit, today

Talk to our sales team for a free tour of Knit!

Book Demo!