zapier developer experts

Making Changes to a Zapier App Integration

Background ServiceTitan, a CRM company, had already built a Zapier Integration using the Zapier CLI tool and their developer platform.…

Background

ServiceTitan, a CRM company, had already built a Zapier Integration using the Zapier CLI tool and their developer platform. Workload had actually contracted with ServiceTitan in the past to build the initial beta version of the Zap. The functionality was working but Zapier’s engineering team had some feedback before allowing ServiceTitan to make the leap from Beta to Live.

The Problem

ServiceTitan’s engineers are focused on building the core the product and don’t have the capacity to learn the Zapier CLI tools to interact with the required node.js project folder. It can be a drain on resources to pull engineering talent off of important internal projects and initiatives. Their team reached out to Workload’s expert marketplace to finish off the integration.

The feedback Zapier’s engineering team gave was:

  • Remove redundant help text (i.e. “Enter Customer Email here” when the field is labeled “Customer Email.”)
  • Implement dynamic dropdown/search where applicable so user’s don’t need to copy/paste or remember things like long unique codes and IDs.
  • Use middleware service to output helpful error handling text

The Implementation

I already have experience in node.js – the standard Zapier project format. Implementing the features Zapier asked was fairly straightforward.

Removing the help text was just a matter of checking the beta version and using it as a customer. I could see what they meant and removing it was just a matter of deleting it in the code.

I implemented dynamic dropdowns and search fields by setting up a hidden trigger to use ServiceTitan’s API to make pre-flight calls to their service (filtered by authenticated user id, of course) and storing them, then calling it later when the user needed it. It was a little tricky and probably the most time consuming part of the whole project.

Last, I used express.js NPM module to interact with the project for robust error handling. If you haven’t used them in your project I highly recommend it!

At the end, I just bumped up the version using the Zapier CLI and pushed it to their service. Keep your project stored in GitHub. I highly recommend it for version control and collaboration.

Zapier Integrations on Github

The Result

This project was a success and ServiceTitan was pleased with the finished product. They have a great app in Zapier’s list of integrations

Have a similar problem?

Or learn more

Arrow-up