Artisan IMG > Google Sheets (sheets) (a894e6ff-8a08-4375-ac35-ab9b5d2bc849)
Artisan IMG > FreshSales (freshsales) (b5b39fa9-a0f4-4ced-8fac-ef86d569c415)

Export leads from a Google Sheet to Freshsales

Workflow
Revops
Intermediate

This is a 'Workflow' template which means that it is a single standalone workflow.

Some workflow templates can be modified to work with other workflow templates - e.g. to convert a data sync between two services from uni-directional to bi-directional

Overview
Copy

The purpose of this workflow is to capture leads from a Google Sheet and use these to create and update contacts in Freshsales.

This workflow is fired every time a Google Sheet ID is entered into a Tray Form:

Prerequisites
Copy

To implement this workflow, you will need the following:

  • API credentials for Google Sheets and Freshsales

  • A Google Sheet with the correct column setup as per the template found here

Getting Live
Copy

Click 'Use Template' to deploy the template in your chosen Workspace.

Then take the following steps to configure the workflow and start submitting leads for processing:

The workflow will then start the process of pulling the leads into Freshsales.

End Result
Copy

Key workflow steps
Copy

The following diagram gives a simplified breakdown of the key steps in the workflow:


Standardization
Copy


This Object Helpers step transforms the Google Sheet column headers into a standard object with fields in the following format:

First Name --> first_name

Last Name --> last_name

Lead Source --> lead_source

etc.

Note that the actual value for Lead Source ('Paid Search', 'Referrals' etc.) is mapped according to the data mapping section above.

For each lead we will then have a simple object which can be easily accessed by later Freshsales steps using jsonpaths such as $.steps.object-helpers-1.result.first_name:


Email validation
Copy


The lead’s email address is validated for the appropriate user@domain.com format

If the email address is invalid, the failure status will be written to the appropriate column in the lead sheet:


Create / Update contacts
Copy


A search is made for an existing contact in Freshsales using the lead’s email address as the unique identifier.

If a Freshsales contact does exist, the contact record is updated and the status of 'Success' is added to the 'Import Status' column in the Google Sheet.

If a Freshsales contact does not exist, a new contact record is created and the status of 'Success' is added to the 'Import Status' column in the Google Sheet.