Update Salesforce (or any CRM) based on events in Arrows
When there's onboardings happening in Arrows, you often want to keep track of that action in your CRM. Maybe that's where you run reports, or you want to expose onboarding status to other team members.
Here's how to update data in your CRM (we'll use Salesforce in this example) based on events happening in Arrows.
For our example, we'll update an onboarding record attached to a Salesforce Account when a specific task is completed in an Arrows onboarding plan.
The steps of the Zap will be as follows
- Trigger Zap when task is done in Arrows
- Only continue if task name matches the task we're looking for
- Find Arrows Customer the task is for
- Find record in Salesforce
- Update record in Salesforce to reflect new state
Setting up the Arrows Zapier integration
The first step is making sure you have a Zapier account! After you have an account, click this link to add the official Arrows integration to your account:
Trigger Zap when task is done in Arrows
Once you've added Arrows to your Zapier account, create a new Zap. Search for Arrows, and choose it as the trigger.
You'll be presented with the option to choose what event you'd like the Zap to be triggered on. Arrows can trigger a Zap whenever a phase or task is completed. For this example we'll choose task completion.
After choosing your event type you'll be asked to sign in to Arrows.
Arrows authenticates Zapier using an API key. When you click "Sign in to Arrows" you'll be prompted with a form to enter that API key.
Like the form says, your API key can be found on your Arrows organization page at https://app.arrows.to/organization#api The Arrows API and Zapier are not available on the free trial or lowest tier plan.
Copy your API key and paste it into the Zapier pop up. You'll be returned to your in-progress Zap and be able to continue to the next step.
Now that your Arrows account is connected to your Zapier account, Zapier will test the event you've chosen. Critically, you have to have a task or phase that has been completed in your account for the Zapier test to find anything.
Clicking "Test trigger" will call out to Arrows and return some data of a previous task that was completed within your account.
Our Arrows trigger is now complete!
The next step is to set up what happens when this trigger fires.
Only continue if task name matches the task we're looking for
Since the Task Done event will fire for all tasks that are completed in Arrows, we need to filter down which task we want to update our CRM on. We can do this by adding a Zapier Filter action (highlighted on the right side).
With the filter added, we'll specify what we're testing the name string against. In this case we'll check if the task name contains "Schedule onboarding call".
The Zap will test against the example event from the first task. This means it might be helpful to create an example project in Arrows where you check off a task with the name you'd like to test against. Zapier will fetch the most recent task, so checking off an example task with the right name will let you test the filter fully.
Since the task done from our example trigger matches our filter, our Zap informs us it would have continued when we test it.
Find Arrows Customer the task is for
Now that we know the task that's completed is the one we're looking for, we'll look for any extra info we want in Arrows. In this case we'll retrieve the name of the customer who completed the task.
Add an Arrows action after your filter, and select Find Customer as the action event.
Search for the customer based off of the ID included in the task done event.
Test the action, and you can see we now get the customer information back.
Now it's time to update our CRM…
Find record in Salesforce
After the find customer action, search for and add a Salesforce action. Note that the Salesforce Zapier integration is a premium integration, so you'll need a paid Zapier subscription to access it.
Select "Find Record" as the event action since we need to find the record in Salesforce before we can update it.
Next we'll have to connect our Salesforce account to Zapier. Click the "Sign in to Salesforce" button.
This will create a popup where you begin the authorization process. Select "production" environment.
You'll then be asked to sign in to your Salesforce account.
And grant the required permissions to Zapier.
You'll then be returned to Zapier where you can select the Salesforce account you just authorized.
In our example we'll be looking for a custom Salesforce record called "Onboarding" that shares a name with our Arrows customer. You'll want to search for whatever record you're looking to update at this step.
Test this action and you should get the Salesforce record back.
Now for the final step—updating the Salesforce record we just found.
Update record in Salesforce to reflect new state
Add a new Salesforce Zap action, and choose the action event of "Update Record".
Choose the type of object you'd like to update (in our example, our custom Onboarding object), and select the ID from the previous step for the Record to Update field.
Zapier will then call out to Salesforce and add the fields of the object you're updating. In our case this includes a dropdown for "onboarding stage", a property on our custom Salesforce onboarding record. We'll update this dropdown to the value we'd like to update the record to: "Onboarding Call Scheduled".
You'll update your record to whatever new value you want it to have when this specific task is completed in Arrows.
Now test this final step in the Zap.
Zapier will report back that the record was updated, and if you open Salesforce you should see that that record was properly updated there as well.
Turn on the Zap
Jump back to Zapier and you should see multiple places where you can turn on your Zap. Go ahead and flip that switch!
Now in our example, whenever a task named "Schedule onboarding call" is completed in Arrows, the Zap will find our custom Salesforce onboarding record, and update the state to "Onboarding Call Scheduled". The specifics of what fields your Zap is modifying will likely vary, but we're now successfully sending data out of Arrows and updating our CRM! Depending on what Zapier plan you're on, there will be a small delay between the event happening and the Zap running.
Don't hesitate to email email@example.com if you have any questions or suggestions on this guide or the Zapier integration!