Special thanks to Maxim Litvinov and Mindy Pile for their contributions to the blog and for successfully migrating Nylas’ entire customer base to the People API.
As the demand for APIs has expanded upstream into the enterprise, API providers like Google have found themselves needing to build better experiences, workflows, and features for developers building enterprise software. Just yesterday, Google announced a commitment to higher stability and reliability with a new Enterprise API – a clear indication that the API standards and frequent updates to APIs of late, even for a behemoth like Google, have fallen short in the eyes of enterprise developers.
Google’s Enterprise API Commitments
Still, Google has made tremendous strides in their Enterprise APIs and we applaud their commitment to ensuring that their APIs are governed by even more stringent requirements on how and when they can be changed while still balancing additive innovations to the product. When APIs are updated, it’s not as straightforward as creating a new, more reliable version and removing the old; often versioning can introduce breaking changes to the developers building on top of them, which leads to instant downtime, unhappy customers, and a spike in support tickets. Ensuring backwards compatibility with new versions is challenging technical work, but can help prevent apps built on APIs from breaking.
Google’s new Enterprise-Grade commitments requirements aim to balance innovation and stability. They plan to release API updates only when they are approved by a review board, and deemed necessary. The reason for the stringent review of any API updates is that, like most software updates, API updates are complex and don’t necessarily go smoothly. They can also require developers integrating with those APIs to spend tens or even hundreds of engineering hours to ensure the new version is stable within their own application.
Nylas’ Enterprise API Commitments
Like Google, Nylas has a philosophy of leaving no customer behind, and has taken steps to ensure that our customers can not only save an incredible amount of engineering time (see our Dialpad case study here) when it comes to building products, features, and intelligent workflows, but also saving valuable time on provider-specific maintenance and updates. We ensure that changes to the Nylas API or provider APIs are seamlessly handled, so there is no negative impact to our customers.
We also offer best in class API success metrics, such as:
Learn more about how we improved the speed of our API by as much as 80x in a blog written by one of our engineers.
Managing Seamless API Updates at Nylas
For an up-close look at how Nylas handles API updates and performance improvements, we wanted to highlight a recent example of a critical update — namely, the Google People API update.
The Google People API allows developers to sync Contact information, like names, profiles photos, job titles, phone numbers, and more. Google announced the product in 2016, and required users who were previously integrating with their Contacts API to shift to the People API by June 15, 2021.
Since Nylas provides a universal API to connect to contacts books from all major email service providers, the Contacts to People API migration meant that we needed to support the new People API and smoothly transition thousands of customers to the new product.
Nylas Allows Developers to Integrate Google Contacts Data without Worrying About API Changes, Updates, and Maintenance
While we applaud Google for giving ample notice to developers about the need to migrate from the Contacts API to the People API, we did want to highlight the pain felt by developers during this migration, as this is a problem Nylas solves for our users.
Developers integrating directly with Google’s Contacts API had to deal with the fact that:
- Google changed not only their API, but their SDKs too. They updated their SDKs from the GData API to the Cloud API
- This required a substantial code change on the developers part, and also could cause a major refactoring of legacy projects to include all new library dependencies.
- For developers integrating with the people API, if that project was old enough, many developers teams did not have dedicated resources to make such changes, and needed to pull engineers off of other in-flight projects to adapt to the new Google updates.
- Google replaced their “Contact” object with a “Person” object as a way to sound more social centric and less business centric. It is hard to define a business entity as “Person” with a surname, as many enterprise organizations have contacts that include the name of a company, not a person. At Nylas, we return data to customers in a customer-friendly way, rather than trying to change names for critical objects in a way that doesn’t add customer value.
- With the Contacts API to People API update, contact ids are not consistent between APIs, and the developers full database needs to be updated.
- At Nylas, we protect customers by preserving our IDs and migrating the IDs in the background without service disruptions and without any work required on our customer’s part.
- Our customers will continue to access the same object using the same API and IDs without any disruption or change of service.
As of June 15, Google is purposely injecting errors into the old Contacts API from 1% and dialing it up to 100% over time to force the migration.
This means that working applications will not error out completely, but show symptoms of increased degradation over time. You have to be somewhat educated on the Google announcement to track down why your application is partially failing.
In the next phase of Google’s Enterprise API, we feel it would be in Google’s best interest (and their customers) to avoid degrading existing products and be more proactive in their communications about how, when, and why a widely-adopted API is being deprecated.
When working together, the combination of stability, reliability, and productivity can produce innovation at scale. With Nylas, businesses and developers can strategically offload ongoing maintenance from providers, allowing them to save time and focus on building the best and most efficient solutions for their users.
Ready to see Nylas in action? Sign up for a free trial and start building with Nylas today!