API vs integration: how the two differ and overlap
There are various terms within the realm of integrations that are misunderstood.
At the top of this list is integration and an application programming interface (API).
To help you and your team understand their differences so that you can reference them correctly, we’ll break down their definitions, walk through examples of each, and compare them directly.
What is an API?
An API is a method for allowing disparate applications to communicate with one another. It consists of a universal set of rules and protocols so that developers can more easily understand and build to the API endpoints they care about.
An API call, which describes the end-to-end process of communicating with a 3rd-party's endpoints, includes both a request and a response. The application that’s making the request is referred to as the “client”, while the application that receives the request is referred to as the “server”—as this application receives, processes, and responds to the request from its server.
Your request typically uses a URL to clarify the endpoint of interest; an HTTP method (e.g, GET) to denote the specific operation you want to perform on the resource from that endpoint; a header with authorization details (e.g. API keys); and, if you’re making a POST or PUT request, data in the body section.
Once the request is received and processed by the API provider’s server, it sends back a response that, within the header, includes an HTTP status code (e.g., 200 “OK”), a time stamp of the response, the specific format of the response, and potentially more. The response body includes the requested data, assuming the request was successful.
Related: API integration versus flat file integration
Examples of APIs
Let’s highlight a few real-world examples to bring this definition to life.
Sendoso
The popular gifting platform provides comprehensive API documentation that outlines a variety of details to help developers build to their API endpoints. This includes their rate limits, how requests can be authorized, and what you can do to ensure that the responses are paginated properly.
Their API documentation also references all of the resources you can request. And for each resource, you can find the relevant API endpoints, the HTTP methods available, and examples of requests (and their associated responses) across programming languages—allowing developers to better understand how to format their requests and what the responses can look like.
BambooHR
The widely-used HRIS solution allows you to access a broad range of details on employees from their API endpoints, from their job titles to their start dates to their social security numbers to their work emails.
Similar to Sendoso, you’ll be able to find a wide range of resources, their endpoints, and the HTTP methods that are available for each resource through intuitive and easy browsing in their API docs. You’ll also find sample requests and responses for each potential API call in different coding languages.
An additional benefit of using BambooHR’s API is that their documentation provides details of all the changes made to their API as well as any changes they plan to make.Â
The historical changes can help your team troubleshoot integration issues effectively; and, based on the planned changes they lay out, you can modify your integration builds proactively, deprecate certain integrations, and/or plan new builds.
Related: Examples of API polling
What is integration?
Integration refers to any method of connecting applications. This can involve APIs, webhooks, screen scraping, among other approaches.
Moreover, an integration can apply to one of two scenarios: integrating internal applications, or the apps your company uses; and customer-facing integrations, or integrations built between your product and the 3rd-party applications your clients and prospects use.
Related How APIs and middleware differ
Examples of integration
To help clarify our definition (more specifically, the latter part), let’s walk through a few common use cases for internal and product integrations. Â
Escalate internal tickets to engineering
As your support team files and works through tickets, they’ll likely come across several that require engineering support.Â
To help your support team make engineering aware of these issues quickly, you can integrate support’s ticketing tool (e.g. Zendesk) with engineering’s (e.g. GitHub) and build a flow where once a ticket is marked as escalated in the former, it’s automatically created in the latter.Â
The newly-created ticket can also include all of the relevant details on the issue, such as its description, the clients or employees it’s affecting, some screenshots that show the issue, and more—all but ensuring that engineering has the context they need to troubleshoot and resolve it.
You can even make the integration bidirectional so that support can easily stay up-to-date on the issue; in other words, as engineering updates the ticket in their application, those changes can be reflected in the corresponding ticket in support’s tool.Â
Automate user provisioning in your product
To help clients adopt your platform, you should look to help them add users seamlessly. And, equally important, to help clients avoid the risks associated with allowing former employees to keep accessing your application, you should help clients automatically de-provision any user as soon as they're removed from the clients' HRIS solution.
You can tackle both of these areas effectively by integrating your product with clients’ HRIS solutions. You can then build a sync where once a user is added, modified, or removed from a client’s HRIS solution, the associated changes take place in your product.
In case there’s any lingering confusion on the differences between the two terms, we’ll compare them in the following section.
Related: Comparing REST APIs with webhooks
Integration versus API
An API is a subset of integration, as integrations can be built in additional ways, whether that’s using databases, files, screen scraping, webhooks, message queues, etc.Â
Build customer-facing integrations in multiple ways with Merge
Merge allows you to integrate your product with hundreds of applications across software categories through its single, aggregated API. The platform also supports webhooks to help you add data to your product in, or near, real-time.Â
You can learn more about Merge by scheduling a demo with one of our integration experts.