What is API performance & why is it so important?
API performance refers to the response time required to fulfill a single request made to an API.
Over the past 5-10 years, APIs have evolved from being a simple tool to connect internal systems to being a core business tool upon which many key applications and customer-facing services rely.
Your front-end user interface (UI) may have been built on extremely well-designed software but that means nothing to your customer if your page loads in 5 seconds. Consumers' attention spans are dwindling and your API requires high levels of performance to keep up with the pace.
In today's e-commerce world, 500ms of page speed can be the difference between whether or not a customer makes a purchase. That latency can directly correlate to significant revenue loss throughout the year, and especially during peak shipping season. If you provide a software solution to e-commerce brands, your solution may be evaluated entirely based on how fast you can deliver the needed information to your end customer.
For these reasons, EasyPost invests heavily in ensuring that we continue to offer the most performant APIs in the shipping industry. Don't just take our word for it, we proudly publish the performance of our top shipping API response time metrics for the last 24 hours here. The following section describes in more detail how we measure performance and what customers can expect from our API performance.
How do we measure performance?
We measure API performance by looking at median speed across our core API services. A median response time helps to give customers an idea of what they can expect when they use our APIs because it eliminates improbable outliers. An average would take into account the outlier edge cases both good and bad which in many cases are not indicative of what customers should expect.
Our label API and shipment API depend on a variety of customer-specific factors for performance. The label API performance is strongly correlated to the carrier makeup of the customer since each carrier's API performs differently. The shipment API is strongly correlated to both the carrier makeup of the customer and the number of services rated for a given shipment. To control for these factors, we look at the median response time speed across all customers, rather than across all calls.
Our label and shipment APIs are not a perfect reflection of EasyPost performance because we can only be as fast as the carrier APIs accessed to return information. We do not see our tracking API and address verification API performance vary by customer however. For this reason, we measure performance by looking at the median response time across all calls.
We believe in transparency at EasyPost, and proudly publish our median response times for our core API services. It is important to note however that if desired, customers can optimize their EasyPost integration for speed to achieve much faster label API and shipment API response times than the median response times displayed below.
In the next section, we outline some of the key innovative things we are doing to maintain our top shipping API performance that allow customers to achieve lightning fast response times.
Last quarter's API performance
How do we achieve such high levels of performance?
We've outlined details surrounding some of the key innovative methods we employ to optimize API performance. However, there are many common industry best practices we also employ not described below.
EasyPost caches reusable information that does not become immediately stale so it can later be accessed at much faster speeds. Customers save precious processing time by quickly accessing cached shipments to purchase labels or rerate their shipment. We also ensure reusable information like addresses or customs info can be easily cached on the customer side to further improve performance.
2. Scoped requests
We allow customers to intelligently limit the information accessed to improve performance with scoped requests. For example, a customer may only ship with one carrier in a specific region and look to limit the rates returned for shipments sent to a destination in that region. To optimize performance for this use case, we allow customers to pass through a parameter on shipments to limit the carrier accounts returned for that shipment.
3. Asynchronous workflows
Given the scale of many of our customers' shipping programs they often need to conduct bulk operations. For these bulk operations, we allow customers to use asynchronous workflows for better performance and usability.
Asynchronous workflows reduce overall time to completion for bulk operations and allow customers to avoid making thousands of requests in succession. For example, some customers use our asynchronous batch request API to support handling bulk operations such as purchasing 1,000+ shipments. Customers can use webhooks to automatically receive updates on the status of their batch request or call the API requesting the status ad-hoc.
We know many components comprise an enterprise-grade API beyond just performance. This guide is one part of a series of guides that describe all of the different aspects of our enterprise shipping APIs. Click below to learn more!
Ready to talk with a shipping expert?
API performance is critical for our customer's success and we are never satisfied with only being "good enough." Expect to see our performance metrics continually improve and to see our list of innovative methods continually expand.