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

What is API integration? (The Complete Guide)

Are you looking to streamline your integration? We solved all API integration related queries in this article

As businesses adopt more sophisticated software for their operations, they are bound to be surrounded by APIs. Essentially, APIs or Application Programming Interfaces refer to a set of protocols, definitions and models based to facilitate communication between software components. Today, over 90% of the developers use API. There are different types of APIs that are under use today, including REST, GraphQL, SOAP, etc. While there are several factors driving the increased use of APIs for software companies, a study shows that 49% companies leverage APIs to facilitate platform and system integration. Thus, API integration has become increasingly sought after for organizations that use multiple applications and wish to integrate them for seamless use. Through this article, we will discuss different aspects of API integration, its growth, benefits, key trends and challenges, as well as the growth of unified API for seamless integration. 

What is API integration?

On a broad level, API integration refers to the connection between two applications, through their APIs, to facilitate data exchange in a frictionless manner. API integration helps the APIs of different applications to communicate with each other, automatically, without human intervention, by adding a layer of abstraction between the two. It allows two applications or systems with APIs to interoperate in real-time and ensure data accuracy for exchange. 

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

While API integration is used for data exchange between applications based on APIs, it is important to understand that individually, API and integration are not synonymous terms. API or application programming interface essentially allows applications to communicate with one another. This could be for data and information exchange or other purposes. 

Integration, on the other hand, is a code or a platform that allows applications or systems to exchange data. This can be a one-way or a two-way exchange, depending on the need and application expectations. 

Generally, in an API integration an external API acts as a connection point when it comes to API integration to ensure that any system or application can connect to the other and access data. However, both APIs and integration can exist exclusively as well, where APIs can have use cases beyond data exchange like connecting subsystems within an application and integrations can follow other ways than purely relying on 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. 

Growth of SaaS API integration ecosystem

The last few years have seen a significant growth in the use of APIs across SaaS and other applications that businesses use. Let’s take a quick look on the growth of the API ecosystem:

  • More than 90% of executives indicate APIs as mission-critical
  • Companies that used APIs reported 12.7% more growth in market capitalization compared to those that did not adopt APIs
  • 2 Million+ API repositories exist on GitHub
  • 56% of developers report APIs help them develop better products
  • 40% of large organizations have 250+ APIs and 71% plan to use even more APIs
  • 64% are developing their API program or strategy

This clearly indicates that the growth of APIs in the SaaS ecosystem can be expected to see an exponential increase, with increased adoption and an expectation to streamline integration between applications for businesses. 

The API first economy

For a long time, APIs were considered as an afterthought to product development to facilitate connection between applications. However, as the pace and volume at which applications need to connect with one another in today’s digital ecosystem, companies are moving towards an API first economy. Put simply, API first is a form of product development which puts the development and eventual usage of APIs as the central or the core focus area for engineering, while other objectives follow. In an API first economy, the goal is to develop APIs which are reusable, scalable and eventually extensible. 

Characteristics of a good API

In a discussion about APIs, it is very important to understand what are the characteristics of a good API, which can eventually facilitate API integration with ease. 

Consistency

First, a good API is one which is consistent. This is especially important when you are working with multiple APIs. Factors like security and data models must be consistent across APIs and they follow a standardized method of development along with a uniform experience for all users. 

Documentation

An API without strong documentation can only achieve limited success. Irrespective of whether the APIs are for internal use or for external API economy, documentation is extremely important. From an internal perspective, documentation ensures maintenance of continuity in case one developer takes over from the earlier one. From any external API, documentation can help third parties understand protocols, data logic, models etc. making it easy for them to integrate and leverage the impact. 

Security

A key characteristic of any API is the security it brings along. As the end point responsible for data transfer and exchange, API security is extremely critical for business resilience. Some of the security factors include HTTPS/SSL certificates, authentication and JSON web tokens, authorizations and scopes, etc. 

Discoverability

A good API is easily discoverable. This suggests that it is so intuitive that users can learn how to use it on their own. More often than not, users prefer to try and play around the APIs before they contact the customer care for the application or go through the manual. Here, simplicity in design and documentation with self-describing access points is a key feature for APIs. 

Abstraction

Essentially, APIs add a layer of abstraction which prevent the users from seeing what is going on at the backend. For instance, if a payment is underway, APIs ensure that verification and other parts of the cycle are not visible to the user. APIs internally interact with each other to make everything happen. A good API ensures that the objective is achieved without the need for a user to understand what happens in the code or execution. 

API integration process 

The API integration process involves a series of steps which ensure that businesses are able to integrate different applications and systems using their APIs. The steps including:

  • Understanding and researching on the type of APIs you will be using (REST, SOAP, etc.), the type of format in which you will be receiving the data which needs to be exchanged between different applications (XML, JSON) and check on the availability and comprehension of detailed documentation for different APIs to ensure how to format requests based on the data available. 
  • Next you need to figure out how the data will flow from one application to another. Here, the focus needs to be on identifying the right authentication and security protocol, like OAuth. At the same time, you need to gauge if authentication and authorization needs to be a one time task or needs to be undertaken every time there is a data exchange.
  • Following this, you need to understand how data mapping will take place. This involves figuring out how to normalize data from different applications into a standardized format or model which can easily be mapped against different applications. 
  • The API integration process comes to a melting point when you have the basic parameters in place and you enter the code development, deployment and testing phase. Focus on development and use case testing to ensure effective authentication and security, robust data mapping and stress tests when there is an unusual disruption/ flow of data to ensure that your API integration doesn’t break. 

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

Let’s quickly see how an API integration works. It involves connecting two applications via their APIs which can then request and send data across. A quick example of how an API integration works is as follows. 

Suppose you have a CRM and a marketing automation platform If these two applications are connected by their APIs, i.e. via API integration, an update in the status of any lead in the CRM will be reflected in the marketing automation platform. This will allow your marketing team to automatically customize the messaging for the lead based on the updated status. Similarly, if after a campaign, the lead’s engagement status changes, the same will be reflected in the CRM. This will ensure that the status of a lead is uniform across all applications.  

API integration checklist 

If you are building an API integration, it is important to ensure that you don’t miss out on the key elements or parameters which can determine the success of any integration. The following quick checklist can help you stay on top of your API integration process:

  • Check data mapping for different formats of data you are dealing with
  • Get information on different API systems
  • Gather API documentation
  • Determine flow of data
  • Decide on security and authentication protocols
  • Determine hosting- on-premise or cloud
  • Obtain API key and select supported data formats
  • Gauge maintenance and support required
  • Undertake consistent monitoring and testing

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 constantly refresh the data to ensure real-time availability and data synchronization. Invariably, you will set a data synchronization frequency and number of API calls that can be made. However, exceeding those calls can lead to API integration failure which needs management support. 

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. 

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 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:

E-commerce platform

E-commerce companies extensively use API integration to fuel their work and operations. On the one hand, there are applications or interfaces which  are responsible for inventory management. On the other hand are those which take care of order suppliers and order management. At the same time, a CRM API might be needed to manage records of customers and their important details. While all of these applications have APIs, API integration can help connect them to unify and streamline data access. 

Payment gateway

Another popular use case for API integration is payment gateways. Whenever a customer makes an online payment, API integration at the backend gets activated to check the bank/ credit/ debit card details for the use to prevent any fraudulent transactions. 

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. 

Not all API functionalities are freely available

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. 

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 standard 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:

  1. What is API integration?
  2. Why is API integration important?
  3. What are the benefits of API integration?
  4. How does API integration work?
  5. What is the cost of an API integration?
  6. How to be prepared for API integration?
  7. What is API integration management?
  8. What are the challenges to API integration?
  9. What are some API integration examples?
  10. What is a unified API and how does it relate to API integration?
  11. How does API integration impact customer experience?
  12. How does API integration ensure security?

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.  

Sudeshna Roy

Head of Content, Knit

Decoding product and generating users with valuable content

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!