Vessel is a universal API for CRM and sales engagement. Developers can use Vessel’s APIs to integrate their software with a large number of CRM and sales tooling — all through one consistent API interface. The API outshines existing solutions with deeper integrations that support powerful features like filtering, webhooks, two-way associations, and much more.
Zach Kirby, Vessel Co-founder, is always on the lookout for ways to boost Vessel’s adoption. Shortly after the launch of their first unified CRM API, it became clear to Zach that a couple of their customers were struggling to manage typing for the objects being sent to and received from the Vessel API.
Zach immediately began to think about creating an SDK to speed up integration and improve developer experience. His initial options were equally unappealing however:
- Use the OSS generator: This was quickly ruled this out. The OSS libraries are buggy and don’t output sufficiently idiomatic SDKs. To bring the SDKs up to the quality they required, Vessel would have had to wrap the output before giving it to customers — diluting the value of using a generator.
- Hand roll the SDKs: an initial SDK might take one engineer a couple weeks to create. More daunting however, is the fact SDKs need to be updated every time the API changes, creating an ongoing support burden. Vessel would’ve also needed to implement a release process to ensure the SDKs would be released in sync with underlying API changes. This would’ve created an ongoing drag on the Vessel team, distracting from work on critical new feature development.
Speakeasy offers idiomatic SDKs that are on par with a handwritten SDK — created automatically from an OpenAPI spec.
After the experience with OpenAPI tooling, Vessel was skeptical that Speakeasy could produce SDKs with the same quality as a handwritten SDK.
But the SDKs produced by Speakeasy met the high bar for quality that Zach demanded. Some of the touches that Vessel felt were critical included:
- Type safe - the SDKs were fully typed for a good IDE experience.
- Idiomatic - each SDK felt native to the language it was written in.
- Fully Featured - the SDKs included features like serializing & deserializing objects, and retries to eliminate the need for users to write boilerplate code.
Check out the SDK in action:
Getting the SDK into users’ hands was easier than imagined. Zach simply uploaded Vessel’s API spec to the Speakeasy platform. In a matter of minutes they had a Node SDK published to their NPM organization.
The Vessel team hasn’t had to change their workflow at all to create their SDKs. They are able to iterate on their APIs just like they did before — and whenever they update their API spec, Speakeasy ensures that their SDKs stay in sync.
“It was amazing how easy it was to go live. Our first day working with Speakeasy, we were able to go from nothing to a published NPM package. It saved our team from a sizeable amount of work, and continues to spare us from having to make any ongoing changes as we develop the API.”
- Zach Kirby, Vessel Co-founder
Vessel’s Node SDK has proved a hit. The NPM package has been downloaded nearly 3,000 times in just a few weeks since its release in Dec 2022. Users have been delighted to have the option of integrating within their preferred framework.
Working with Speakeasy has also created huge time savings for the Vessel team. Edits are made to their APIs on a daily basis and having SDKs as a managed service saves the team on the order of 4 hours per week. And those time savings will only become larger in the future. As their users’ frameworks and runtimes become more diverse, Vessel is excited to expand their SDK language support to keep pace with their users.
“One of the biggest benefits of working with Speakeasy is the peace of mind it brings when I think about our future growth. I know that whatever users we bring on and whatever their runtimes look like, we’ll be able to support them with an idiomatic SDK in their preferred language. That’s a huge relief when it comes to planning our product roadmap.”
- Zach Kirby, Vessel Co-founder.