4 min read

Increase productivity with Microsoft Excel Online and CRM integrations

Published Nov 20, 2024 Updated Feb 13, 2026
Adam Peña

Technical Product Marketing Associate

Adam Peña
Increasing Productivity with Excel Online and CRM Integrations

Facilitating collaboration and productivity among teams within a business can be challenging, particularly when dealing with a diverse tech stack. Critical data is often spread across multiple applications, and not everyone has access to these systems. Licenses can be expensive, and provisioning them is often a time-consuming process.

As a result, teams frequently rely on shared spreadsheets as a workaround to centralize and present key data from various applications. Integrating these spreadsheets with your tech stack can help ensure they remain accurate and up-to-date.

Here, we’ll review recent enhancements to Celigo’s Excel Online connector and introduce a template helper that simplifies integrations with prebuilt flow steps. The integration solves a business problem using two flow steps from this template to transfer data between a Microsoft Excel Online spreadsheet and a CRM.

Demo: Integrate Excel Online with a CRM

RevOps example use case

Before diving into the flows, consider a spreadsheet used for this integration. Imagine you’re a sales manager responsible for tracking the account executives assigned to your business development representatives (BDRs) and their outreach territories.

Excel - SF Spreadsheet

A spreadsheet like the one pictured above helps maintain a high-level overview of those details. However, using a few simple flows, we can automate the transformation of rows in this spreadsheet into new/updated records in Salesforce. Inversely, we can allow updates in Salesforce to be reflected in our spreadsheet, giving us immediate insight into new BDRs or revised information for current BDRs.

Let’s explore two flows that enable bidirectional data synchronization between Excel and Salesforce.

Flow 1: Syncing data from Excel to Salesforce

Flow 1 - Excel to SF

The first flow focuses on integrating data from the Excel spreadsheet into Salesforce. This flow begins with a prebuilt flow step from a template. While constructing a flow, users can easily add one of these template steps by selecting it during the process of adding a step.

The process is depicted below.

Template Selection

After entering your application of choice for the step you’re creating, scroll down to see steps available for that connector from the Celigo Marketplace, where templates can be found. The “Read all data from worksheet” template flow step pictured above was used in the first step of this flow.

One of the key enhancements to this connector is the upgrade to OAuth 2.0 for authentication when creating a connection. This means users no longer need a client ID and secret; instead, they simply need to name their connection, configure the necessary read/write scopes, and log into their Office 365 account.

In the template step, there is a custom settings tab at the bottom of the “Edit Export” screen. Here, users specify whether the spreadsheet is stored in OneDrive or SharePoint, select the appropriate workbook from an automatically populated list, enter the spreadsheet name, and indicate if the first row contains headers.

Export Custom Settings

Once these steps are completed, the spreadsheet data is sent to Salesforce, creating BDRs as contact records. The final step involves writing the Salesforce IDs back to the spreadsheet. These IDs will be used as a key column for the next flow, which will involve adding/updating rows.

Flow 2: Syncing data from Salesforce to Excel

Flow 2 - SF to Excel

The second flow addresses the reverse process, updating the spreadsheet to reflect changes made to these BDRs in Salesforce. This flow also uses a step from the template helper designed for imports called “Update Existing Rows and Append New Rows,” simplifying the process of adding to and updating rows in the spreadsheet with features like a custom settings tab and a prebuilt hook.

This template also features a “Custom Settings” tab, where you’ll configure the information the platform needs to find your specific spreadsheet. Since this step will be responsible for updating records, it needs a way to identify records.

This is the purpose of a key column.

Import Custom Settings

Note that a column name was entered into the “Column to find existing rows” field. Below that, the id field of source records (in this case, the id of these BDRs as Contacts in Salesforce) is compared to the values in the BDR Contact Id column to find an existing record.

Automate data transfer with Excel Online integrations

With just a few steps, we establish a bidirectional synchronization that automates data transfer between a high-level spreadsheet and a CRM.

With template helper flows and enhanced connection methods for the Excel Online connector, you can easily build and manage flows to synchronize data between spreadsheets and applications like your CRM.

These features enable faster integration development, improving operational efficiency and streamlining data management.

Let’s get started

Integrate, automate, and optimize every process.

Already a user? Log in now.

4 min read

How to sync your customer adoption score from Gainsight to Snowflake and Salesforce

Published Sep 24, 2024 Updated Feb 13, 2026
Jerry Patterson

Systems Operations Analyst

Jerry Patterson

In this post, we’ll explore a customer adoption score use case that involves syncing customer success data from Gainsight to a cloud data warehouse such as Snowflake and then feeding that data into Salesforce to share customer insights with the sales team.

By centralizing data in Snowflake and making it accessible to other systems, this flow provides your teams with a unified view of customer information. It enables them to gain better insights into customer engagement and enhances the end-to-end customer journey.

Accessing the Gainsight connector and exporting data to Snowflake

Start by setting up the connection between Gainsight and Snowflake using the pre-configured Gainsight connector.

  • Use the Gainsight connector: This connector simplifies the process of making an API call and creating a connection between systems. It’s a plug-and-play tool, making it easier to input the API name and endpoint details.
  • Select the fields you need: Once the connection is established, use the available parameters to specify which fields from Gainsight you want to extract.For this use case, you’ll likely focus on fields that relate tocustomer activity and adoption score.

Previewing data from Gainsight

Before syncing the data with Snowflake, you can preview the data to ensure it’s correctly structured.

  • Use the Preview tab: One of the key benefits of this connector is the Preview tab, which allows you to see what the data looks like before syncing. This ensures that the fields you selected from Gainsight are being pulled in correctly and are ready for transfer.

Syncing data to Snowflake

Once you’ve confirmed the data structure, you can sync the data from Gainsight to Snowflake. Snowflake acts as a centralized data warehouse, making it easier to share data across various systems.

  • Sync the data to Snowflake: This sync will ensure that all relevant customer data, including customer activity and adoption score, flows from Gainsight to Snowflake. This provides a centralized hub where customer success teams and account executives can access the same data.

Syncing data from Snowflake to Salesforce

After syncing data to Snowflake, the next step is to sync that data to Salesforce, which is primarily used by your account executives (AEs).

  • Export data from Snowflake to Salesforce: Use the Gainsight-to-Snowflake data to create an export to Salesforce. For example, the Adoption Score V2 is a useful data point that can be synced from Snowflake into the Salesforce account.

Setting up the Salesforce import

Now that you have the customer adoption score and other data synced to Snowflake, the import process to Salesforce is streamlined using the plug-and-play connector.

  • Customize the import: In the Salesforce connector, you can choose to update existing account information or perform an upsert to add new information. The connector simplifies this process with built-in field mappings and allows you to customize which fields are updated.
  • Preview the data again: Just like with Gainsight, the Preview tab is available in Salesforce, allowing you to confirm that the correct fields are mapped and that the data looks accurate before syncing.

Why this flow is valuable

This flow is particularly useful for organizations with different teams using separate systems. For example:

  • Customer success teams primarily use Gainsight to track customer engagement and activity.
  • Account executives typically work in Salesforce and may not have access to the detailed customer success information in Gainsight.

By syncing data to Snowflake, a central hub, you make it possible to share this crucial information across teams. This allows AEs to access customer adoption scores and other engagement metrics directly in Salesforce, improving their ability to understand and interact with customers.

Other use cases

This flow can be adapted for other use cases, such as:

  • Sales team insights: Sync data from Snowflake into Salesforce to provide account executives with a full view of customer engagement.
  • Webinar funnel tracking: Use Snowflake as a centralized hub to gather data from multiple systems and sync to Salesforce for tracking leads from webinars to opportunities.

By syncing customer adoption score data from Gainsight to Snowflake, and then into Salesforce, you can ensure that your entire team has a unified view of customer engagement.

This flow enables customer success teams and account executives to access the same valuable information, improving both customer interactions and decision-making across your organization. 

Let’s get started

Integrate, automate, and optimize every process.

Already a user? Log in now.

5 min read

Exploring the Salesforce Bulk API 2.0 integration

Published Aug 23, 2024 Updated Jan 15, 2026
Tyler Lamparter

Portfolio Strategist

Tyler Lamparter

As businesses continue to scale and manage increasingly large datasets, the need for efficient data synchronization and management tools has never been more critical. Celigo is constantly innovating to meet these needs, and we’re excited to introduce some significant updates to our Salesforce integration capabilities, specifically focusing on the Bulk API 2.0.

In this post, we’ll dive into these new features, explore their benefits, and explain how they can help your organization optimize data handling between Salesforce and other platforms.

Introduction to Salesforce Bulk API 2.0 integration

Historically, Celigo has supported Salesforce’s REST API, which is perfect for typical app-to-app data exchanges, such as syncing customer accounts from Salesforce to an ERP system. However, when dealing with larger volumes of data—such as exporting millions of records into a data warehouse—the REST API can fall short in terms of speed and efficiency.

This is where the Salesforce Bulk API 2.0 comes in. The Bulk API 2.0 is designed to handle high volumes of data by processing records asynchronously, allowing for faster and more efficient data transfers. This makes it ideal for large-scale data migrations, bulk extractions, and other operations that involve extensive data manipulation.

What’s new: Leveraging the Salesforce Bulk API 2.0

With our latest update, Celigo now supports Salesforce’s Bulk API, giving users the ability to synchronize massive datasets between Salesforce and their destination systems more efficiently.

Key features of the Bulk API 2.0 integration

Asynchronous data processing:

Unlike the REST API, which operates synchronously and provides real-time feedback, the Bulk API 2.0 processes data asynchronously. This means that while you won’t get immediate feedback, the overall process is much faster for large datasets.

Improved export times:

Users can expect a 2x to 6x improvement in export times when using the Bulk API 2.0 compared to the REST API. This is particularly beneficial when dealing with millions of records. The larger the data set, the more you’ll notice the performance gains.

Handling large data volumes:

The Bulk API 2.0 is specifically designed to handle large volumes of data, making it the go-to option for exporting data from Salesforce to a data warehouse or object storage. This is crucial for businesses that rely on up-to-date data analytics and reporting.

Customizable page size:

By setting your page size to the maximum, you can avoid chunking results into multiple pages, further optimizing the data transfer process. This feature ensures that your data exports are as efficient as possible.

Limitations and considerations

While the Bulk API 2.0 offers significant advantages, it’s important to be aware of its limitations compared to the REST API. For instance:

SOQL query constraints:

Certain SOQL (Salesforce Object Query Language) queries that work with the REST API may encounter issues with the Bulk API 2.0. For example, attributes like compound fields may not be supported, and some queries might fail if they exceed the Bulk API 2.0’s limitations.

No preview option:

The asynchronous nature of the Bulk API 2.0 means that you won’t have a preview option like you do with the REST API. Therefore, it’s often best to preview your data using the REST API before switching to the Bulk API 2.0 for large-scale data transfers.

We recommend checking Salesforce’s documentation on SOQL query limits for the Bulk API 2.0 to ensure your queries are compatible.

New feature: Syncing archived and deleted records

Another enhancement we’ve introduced is the ability to include archived and deleted records in your data syncs. This feature is particularly useful when maintaining accurate records in a data warehouse or database.

Why this matters

Track deleted records:

Salesforce retains deleted records for about 14 days before permanently removing them. By syncing these records to your database or warehouse, you can maintain a historical log of changes, ensuring that you know what was deleted and when.

Accurate data management:

Including archived and deleted records in your data syncs allows for more accurate data management, particularly in environments where historical data is crucial for compliance or reporting purposes.

What’s next: Importing data to Snowflake and NSAW

Looking ahead, we’re excited to explore the next steps in our product updates, which will focus on importing data to Snowflake and NSAW. These new bulk load features will further enhance your ability to manage large datasets efficiently across different platforms.

In this video tutorial, we’ll walk you through these new bulk load features and demonstrate how they can optimize your data integration workflows.

Conclusion

The introduction of Salesforce Bulk API 2.0 support in Celigo marks a significant enhancement in our platform’s capabilities, particularly for businesses managing large volumes of data. By leveraging these new features, you can dramatically improve data transfer speeds, maintain accurate records, and streamline your overall data management processes.

We encourage you to explore these new features and reach out to our support team if you have any questions or need assistance getting started. With Celigo’s powerful integration tools, managing your Salesforce data has never been easier or more efficient.

Let’s get started

Integrate, automate, and optimize every process.

Already a user? Log in now.

3 min read

How to automate lead engagement for optimal revenue growth

Published Jun 21, 2024 Updated Feb 13, 2026
Maximizing sales efficiency through streamlined lead engagement.
Nick Petroy

Technical Product Marketing Associate

Nick Petroy

Lead lifecycle management is the journey potential customers take from first becoming aware of your brand to purchasing. In other posts, we demonstrate how to automate lead capture and lead syncing. In this demo, we’ll walk through an example flow for lead engagement.

Lead engagement overview

Getting the highest intent leads to the right sales reps as quickly as possible for immediate follow-up is critical. Conversely, lower intent leads should be filtered into nurture campaigns. Manual lead distribution can be slow and prone to errors, resulting in missed opportunities and inefficient use of resources. Automating this process ensures that high-intent leads are quickly and accurately routed to the appropriate reps, improving engagement and maximizing revenue potential.

Here, we will demonstrate a practical example of how to automate lead engagement and distribute leads among sales reps and campaigns based on their priority and intent.

Example flow for lead engagement

Imagine you are a marketing or revenue operations manager using Salesforce intent signals to detect when a lead searches for a specific keyword or competitor. You want your hottest leads routed immediately to reps for follow-up to stay top-of-mind for prospects and close revenue. Additionally, you want to segment your nurture leads into a nurture campaign.

When Salesforce identifies a high-intent signal, you want to ensure the lead is routed in real-time to the right sales rep via Slack for immediate follow-up.

Lead engagement video demo

 

Track high-intent signals in Salesforce

Objective: Capture high-intent signals and gather detailed lead information.

  1. Set Up Salesforce Connection:
    • Ensure the Salesforce connection is established and running.
  2. Write an SOQL Query:
    • Construct an SOQL query to select the required data fields for the lead information.
    • Only select leads where the lead rating is “Hot” and the “Sent to Slack” custom checkbox field is NULL.

Route high-intent leads to Slack

Objective: Notify the appropriate sales reps about high-intent leads in real-time.

  1. Set Up Slack Connection:
    • Ensure the Slack connection is established and running.
  2. Configure Slack API:
    • Set the API resource to “chat” and the API endpoint to “chat.postMessage”.
  3. Map Lead Information:
    • Ensure the message is sent to the correct sales channel in Slack.
    • Use handlebar expressions to populate the message field with the lead information exported from Salesforce, separating each individual lead.

Update Salesforce to prevent duplicate routing

Objective: Ensure leads are not sent through Slack more than once.

  1. Set Up Salesforce Connection:
    • Use the same Salesforce connection from the export step.
  2. Update Lead Object:
    • Match Salesforce IDs and update the Lead Object.
  3. Map the Custom Field:
    • Hardcode the “Sent to Slack” custom checkbox field in Salesforce to TRUE, ensuring the lead does not run through the flow and Slack again.

Maximize lead engagement sales efficiency

By streamlining lead engagement and other lead lifecycle management processes, you can ensure that high-priority leads are routed to the appropriate sales reps. This enables your sales team to promptly engage with qualified, high-intent prospects, significantly improving the chances of closing deals faster and boosting revenue growth.

Let’s get started

Automate your lead management process and transform it into a strategic advantage for your marketing and revenue operations teams.

Already a user? Log in now.

4 min read

Lead lifecycle management: How to automate lead capture

Published Jun 21, 2024 Updated Feb 13, 2026
Lead lifecycle management series
Chris Ferraro

Senior Product Marketing Manager

Chris Ferraro

Lead lifecycle management refers to the process potential customers go through, starting from their initial awareness of your brand to making a purchase. Automating the various stages of this process is crucial as it enables quicker follow-up with prospects, resulting in more closed deals and increased revenue.

In previous posts, we have integration demos for lead engagement and lead syncing. Here, we’ll focus on the initial stage of lead lifecycle management: lead capture.

The importance of automating lead capture

It is critical to quickly and efficiently capture leads from various sources, such as external events, website forms, landing pages, and social media channels. However, these leads often arrive with incomplete data, making it crucial to enrich them with comprehensive information before consolidating them into a single source of truth.

Example flow for lead capture and enrichment

As a marketing or RevOps leader, I must capture and enrich attendee information from a recent event and sync it to my marketing automation platform for segmentation, scoring, and follow-up.

In this demo, we’ll show you how to sync attendee information from Eventbrite to Clearbit for enrichment and then on to HubSpot. This automated process provides accurate, detailed profiles for better follow-up and conversion.

Lead capture video demo

Export attendee information from Eventee

Objective: Retrieve and prepare attendee data from Eventee for further processing.

  1. Export data:
    • Click on “Eventee Export” to retrieve relevant information from Eventee for each attendee, including their name, company, and phone number.
  2. Ensure proper naming and connection:
    • Name your export step appropriately.
    • Verify that the connection is active and running smoothly.
  3. Set HTTP method and URI:
    • Use the HTTP method “GET”.
    • Set the relative URI to “participants” to gather attendee information.
  4. Transform data:
    • Create a step to separate the name into first and last name fields using a script in the transformation. This will facilitate easier mapping in later steps when adding the lead to your CRM.

Enrich attendee information with Clearbit

Objective: Enhance the attendee data with additional information to ensure comprehensive lead profiles.

  1. Setup Clearbit import:
    • Click on “Clearbit Import” to ensure each attendee’s information is enriched, providing a complete, up-to-date, and accurate view of their details such as name, address, phone number, and company.
  2. Create Lookup step:
    • Name the lookup step appropriately.
    • Ensure the connection is active.
  3. Configure API settings:
    • Set the resource to “Person”.
    • Use the API Endpoint “Enrichment API: combined API”.
    • Configure query parameters to search for emails gathered from Eventee to ensure accurate data for each lead.
  4. Map results:
    • Set up results mapping to store enriched lead data in a field called “myField”.

Import enriched leads to HubSpot

Objective: Transfer enriched lead data to HubSpot for effective segmentation, scoring, and follow-up.

  1. Setup HubSpot import:
    • Click on “HubSpot Import” to add the enriched leads to HubSpot for segmentation, enrichment, scoring, and follow-up.
  2. Ensure proper naming and connection:
    • Double-check that your HubSpot import step is correctly named and the connection is running.
  3. Configure API settings:
    • Select the correct API version and API name to create a lead.
    • Set the operation to “create” and the API name to “CRM API: Contacts”.
    • Check “ignore existing records” to avoid creating duplicates, and search for the Clearbit ID from the results mapping.
  4. Map data:
    • Map enriched data from Clearbit to create the lead in HubSpot, including email, first and last name, LinkedIn URL, city, state, job title, and company.
    • Map the Clearbit ID into a custom field in HubSpot.
    • Hardcode the “lifecyclestage” to “lead” to ensure the attendee is created as a lead, not a contact.

Grow revenue with lead capture automation

By automating the entire lead management process, you can turn the previously manual and tedious lead capture and upload tasks into a competitive advantage for your marketing and revenue operations teams. This efficient workflow ensures timely follow-ups and maximizes the potential for increased revenue.

Let’s get started

Automate your lead management process and transform it into a strategic advantage for your marketing and revenue operations teams.

Already a user? Log in now.

3 min read

Optimizing lead lifecycle management: Automate lead syncing

Published Jun 21, 2024 Updated Feb 13, 2026
Lead lifecycle management series
Nick Petroy

Technical Product Marketing Associate

Nick Petroy

Lead lifecycle management is the journey that potential customers take from first becoming aware of your brand to making a purchase. Automating the different stages of lead management is critical because it leads to faster follow-up with prospects and, ultimately, more closed revenue.

In previous posts, we discussed automating lead engagement and lead capture with example flows. Here, we’ll demonstrate an example flow for lead syncing.

Lead syncing overview

Lead syncing ensures that changes to a lead record in one system are automatically updated in corresponding records across other systems, either in real-time or at scheduled intervals. This process helps businesses maintain up-to-date lead information across multiple platforms, enhancing efficiency and data accuracy.

By streamlining these updates, lead syncing ensures consistency and reliability in lead data management across different systems.

Example flow for lead syncing

Here’s a practical example:

Imagine I am a marketing or revenue operations manager using Salesforce as a CRM and ActiveCampaign as my marketing automation platform. I want Salesforce to automatically sync new or updated leads to ActiveCampaign, reducing the time spent manually entering information and ensuring up-to-date data in both systems.

Lead syncing video demo

Exporting lead information from Salesforce

Objective: Capture relevant lead information from Salesforce for syncing with ActiveCampaign.

  •  Ensure the Salesforce connection is online and running.
  • Write an SOQL query to gather all relevant lead information, including the first and last name, email, phone number, company, and Salesforce ID. Set the export type to delta to export only data that has been modified since the flow last ran.
  • Ensure the Salesforce export is named appropriately.

Importing lead information to ActiveCampaign

Objective: Sync updated lead information to ActiveCampaign.

  • Ensure the ActiveCampaign connection is online and running.
  • Set the API resource to contacts and the API endpoint to sync a contact’s data.
  • Map the lead’s updated fields from Salesforce to the corresponding fields in ActiveCampaign, ensuring custom fields are included.
  • Set up the response mapping to retrieve the ActiveCampaign ID and name it ‘AC ID.’

Storing ActiveCampaign ID in Salesforce

Objective: Ensure that the ActiveCampaign ID is stored in Salesforce for correlation and data cleanliness.

  • Use the same Salesforce connection as in the export step.
  • Set the sObject type to Lead and the operation to update.
  • Match existing records using the Salesforce ID to find the correct lead.
  •  Map the ActiveCampaign ID from the response mapping to a custom field in Salesforce for ActiveCampaign IDs.

Grow revenue with lead lifecycle automation

By automating the lead syncing process using Celigo, we turn a previously manual updating process into real-time automation. This ensures all stakeholders have up-to-date lead information, improving efficiency and data accuracy.

With lead lifecycle management, organizations can streamline and enhance their processes for faster, error-free lead follow-up. With AI-powered automation, teams can seamlessly connect their entire marketing stack, including MAPs, CRMs, outbound apps, and databases, ensuring access to the most accurate and up-to-date lead data.

Let’s get started

Automate your lead management process and transform it into a strategic advantage for your marketing and revenue operations teams.

Already a user? Log in now.