Integrate EasyRoutes Webhooks with Zapier
Connect webhooks to Zapier to unlock seamless no-code workflows with your favorite apps and services, triggered by route updates in EasyRoutes.
Looking to use Zapier to connect with your order data? You can Import stops into EasyRoutes for planning with our Import Stop action on Zapier.
Step 1: Create a Zap Triggered by EasyRoutes Webhooks
Note that this guide assumes you have an account and basic familiarity with Zapier. A paid subscription or trial may be required to create integrations.
Sign into Zapier with your account and select + Create -> Zap from the left navigation menu to create a new "Zap" triggered by EasyRoutes webhook events.
Start by clicking on the Trigger button
Select the Webhooks By Zapier tool
For the Trigger event, select Catch Hook
Click Continue to move on to the Configure panel. Here you can choose to grab only a specific field from the webhook body, otherwise Zapier will pass on the entire payload to the connect action. Skip this screen for now to get the full webhook payload.
The Test panel will reveal the custom URL generated by Zapier for this Zap. Click on Copy so that we can use this URL to set up the webhook in EasyRoutes.
Step 2: Register a Webhook in EasyRoutes
In another tab, open EasyRoutes and head to Settings -> API Settings. Click on Register webhook.
Paste the webhook URL from Zapier into the URL field and select the topics you want to receive.
Step 3: Test Your Webhook
After you save you webhook configuration, you can send a test event to ensure it is set up correctly with Zapier.
In everything is set up correctly, you should be able to see the TEST event record back in Zapier on the test panel for the webhook trigger. You may have to click Find new records or refresh to see the event.
Once you have generated a real webhook event (i.e. by creating a route for ROUTE_CREATED), you can view that record in Zapier to see the full set of available fields.
From there, click Continue with selected record to make these body fields available for integrations.
Example: Populate a Spreadsheet with Route Events
Zapier allows you to select from numerous apps and tools to connect an action to the webhooks trigger. Here is an example that writes route events into a spreadsheet. Each row contains the webhook event ID, the route ID, the event timestamp, the route name, and the topic.
The fields on the Configure panel are based on the headers in the spreadsheet. You can select values based on the fields from the previously-selected webhook record above.
The result:
Example: Add Scheduled Routes to Google Calendar
Here is another example that adds scheduled routes into a user's Google Calendar.
After configuring your Catch Hook step as described above, add a Filter by Zapier step next. Since routes require a scheduled start time in order to add them to a calendar, we'll configure this step to check that the received webhook contains a scheduled start time (Payload Scheduled For variable > Exists):
Next, we'll add the Google Calendar Find Event step (you'll need to sign in to the Google account the desired calendar is associated with), and use the route's unique identification code from the webhook (Payload ID) to see if this route has already been added as a calendar event:
If the route event is not found, this step is configured to add it to the calendar as a new event. We've used Payload Name (the route's name) for the Summary field, and Payload Scheduled For and Payload End Planned Arrival for the Start/End Dates & Times; we've also added the orders included on the route and the Route's ID to the event's description for quick reference (these are optional, and can be customized to add/remove any variables desired):
If the route event is found in the calendar, this workflow will move onto the next step - we'll configure Google Calendar's Update Event action to update the existing event we found to contain the route's updated scheduling details.
Ensure the Event field for updating is using the ID variable we found in step 3; again, use Payload Name (the route's name) for the Summary field, and Payload Scheduled For and Payload End Planned Arrival for the Start/End Dates & Times; we've also added the orders included on the route and the Route's ID to the event's description for quick reference (these are optional, and can be customized to add/remove any variables desired):
Now, whenever a new route containing a scheduled start date/time is created, or an existing route's scheduled start date/time is updated, a corresponding event will be added to (or updated in) the user's Google Calendar:
Example: Send an email when a stop is marked as complete
This example workflow will send an email to a specified email address as soon as a stop is marked as complete.
After configuring your Catch Hook step as described above, add a Filter by Zapier step next. We'll configure this step to check that the received webhook contains a successful delivery event (Payload Stops Delivery Status variable > exactly matches > DELIVERED):
Next, we'll add the Gmail Send Message step - input desired to/from addresses first, then configure the email subject to contain "Order [Payload Stops Order Name] Delivered"; the body will contain "Order [Payload Stops Order Name] has been marked as [Payload Stops Delivery Status]":