Skip to Content

Jitterbit LeadFlow Agent

Overview

Jitterbit provides the LeadFlow Agent to customers through Jitterbit Marketplace. This agent automates lead enrichment by connecting HubSpot form submissions to Salesforce and ZoomInfo, helping organizations maintain accurate and complete lead data without manual effort.

The agent retrieves form submissions from HubSpot, checks for matching lead records in Salesforce, and augments those records with additional contact and company data from ZoomInfo. Updated data is written back into Salesforce, and Slack notifications keep your team informed of execution status and errors.

The agent performs the following tasks:

  • Retrieves available forms and submission data from HubSpot.
  • Queries Salesforce to check whether a matching lead record exists using the submission email address.
  • Updates the existing Salesforce lead record with data from the HubSpot submission.
  • Authenticates with ZoomInfo to obtain a JWT token for enrichment API calls.
  • Augments the Salesforce lead record with additional contact and company data from ZoomInfo.
  • Writes the augmented lead data back into Salesforce.
  • Sends Slack notifications after successful execution, including operation name, execution timestamp, and integration status.

This document explains how to set up and operate this AI agent. It covers architecture and prerequisites, and steps to install, configure, and operate the AI agent.

AI agent architecture

This AI agent connects HubSpot, Salesforce, and ZoomInfo to collect, update, and enrich lead records. A typical workflow follows these steps:

  1. The agent's operations run hourly on a schedule. The agent retrieves all available forms from HubSpot, then fetches submission records for each form.
  2. For each submission, the agent queries Salesforce using the submission email address to check whether a matching lead record exists.
  3. If a matching lead exists, the agent maps HubSpot submission fields to Salesforce lead fields and performs an upsert operation.
  4. The agent authenticates with ZoomInfo to obtain a JWT token, then sends the updated Salesforce lead data to the ZoomInfo Enrichment API to retrieve additional contact and company data.
  5. The agent writes the augmented data back into Salesforce, updating the lead record with additional contact and company information from ZoomInfo.
  6. After successful execution, the agent sends a Slack notification with the operation name, execution timestamp, and integration status.
  7. Each step logs its input and output payload to support troubleshooting and audit.

Workflow diagram

The following diagram depicts how the agent moves lead data from HubSpot through Salesforce and ZoomInfo.

HubSpot's two sequential API calls (retrieving forms, then submissions) are shown as a single exchange for clarity. ZoomInfo's authentication and enrichment calls are shown as separate nodes because they use distinct API endpoints.

--- config: flowchart: padding: 20 nodeSpacing: 100 --- flowchart LR classDef default fill:white, stroke:black, stroke-width:3px, rx:15px, ry:15px JSP@{ shape: hex, label: "
Jitterbit LeadFlow
Agent" } HS[fab:fa-hubspot
HubSpot] SF[fab:fa-salesforce
Salesforce] ZIA[ZoomInfo Auth REST call] ZIE@{ shape: hex, label: "ZoomInfo Enrichment API" } SLK[fab:fa-slack
Slack] JSP -->|1. Get form submissions| HS HS -->|2. Submission data| JSP JSP -->|3. Query lead by email| SF SF -->|4. Lead record| JSP JSP -->|5. Upsert lead| SF JSP -->|6. Auth request| ZIA ZIA -->|7. JWT token| JSP JSP -->|8. Enrichment request| ZIE ZIE -->|9. Augmented lead data| JSP JSP -->|10. Update lead| SF JSP -->|11. Success notification| SLK

Prerequisites

You need the following components to use this AI agent.

Harmony components

You must have a Jitterbit Harmony license with access to the following components:

Supported endpoints

The AI agent connects to the following external services. You can accommodate other systems by modifying the project's endpoint configurations and workflows.

HubSpot

The agent uses the HubSpot API to retrieve form definitions and submission records. You must have a HubSpot account with API access and a valid API key.

Salesforce

The agent uses the Salesforce REST API to query and update lead records. You must have a Salesforce account with credentials that have permission to read and write Lead objects.

ZoomInfo

The agent uses the ZoomInfo API to enrich lead data. You must have a ZoomInfo account with a client ID and client secret that have permission to call the enrichment API.

Notification service

The agent uses Slack to send success and error notifications. You must have a Slack webhook URL configured for the channel where notifications should be sent. You can replace Slack with another notification service by modifying the project's endpoint configurations and adapting the workflows to the schema required by your chosen service.

Installation, configuration, and operation

Follow these steps to install, configure, and operate this AI agent:

  1. Download and install the project
  2. Configure project variables
  3. Test connections
  4. Deploy the project
  5. Review project workflows
  6. Trigger the project workflows

For troubleshooting guidance, see Troubleshooting.

Download and install the project

Follow these steps to download and install the Studio project for the AI agent:

  1. Log in to the Harmony portal at https://login.jitterbit.com and open Marketplace.

  2. Locate the AI agent named Jitterbit LeadFlow Agent. To locate the agent, use the search bar or, in the Filters pane under Type, select AI Agent to limit the display to AI agents.

  3. Click the AI agent's Documentation link to open its documentation in a separate tab. Keep the tab open for reference.

  4. Click Start Project to open a two-step configuration dialog to import the AI agent as a Studio project.

    Note

    If you have not yet purchased the AI agent, Get this agent is displayed instead. Click it to open an informational dialog, then click Submit to have a representative contact you about purchasing the AI agent.

  5. In configuration step 2, Create a New Project, select an environment where the Studio project will be created, then click Create Project.

  6. A progress dialog is displayed. Once it indicates the project is created, use the dialog link Go to Studio or open the project directly from the Studio Projects page.

Configure project variables

In the Studio project installed from Marketplace, you must set values for the following project variables.

To configure project variables, use the project toolbar actions menu to select Project Variables to open a drawer at the bottom of the page where you can review and set values.

HubSpot

Variable name Description
Hubspot_API_Key API key used to authenticate HubSpot API calls.

Salesforce

Variable name Description
Salesforce_Username Username for the Salesforce account used by the integration.
Salesforce_Password Password for the Salesforce account used by the integration.

ZoomInfo

Variable name Description
ZoomInfo_Client_ID Client ID used to authenticate ZoomInfo API calls.
ZoomInfo_Client_Secret Client secret used to authenticate ZoomInfo API calls.

Slack

Variable name Description
Slack_Webhook_URL Webhook URL for the Slack channel where notifications are sent.

Test connections

Test the endpoint configurations to verify connectivity using the project variable values you configured.

To test connections, go to the design component palette's Project endpoints and connectors tab, hover over each endpoint, and click Test.

Deploy the project

Deploy the Studio project.

To deploy the project, use the project toolbar actions menu to select Deploy.

Review project workflows

Each workflow performs a specific function in the data flow across HubSpot, ZoomInfo, and Salesforce.

Workflow Description
HubSpot Forms Data Extraction Retrieves available forms from HubSpot.
Form Submission Processing Fetches and transforms form submission data.
Salesforce Lead Lookup Queries Salesforce for a matching lead by email address.
Salesforce Lead Update Upserts HubSpot submission data into the matching Salesforce lead.
ZoomInfo Authentication Authenticates with ZoomInfo to retrieve a JWT token.
Token Extraction Extracts the JWT token from the ZoomInfo authentication response.
Data Enrichment via ZoomInfo Sends lead data to ZoomInfo and retrieves enriched information.
Post-Enrichment Salesforce Update Writes enriched ZoomInfo data back into Salesforce.
Success Slack Notification Sends a success notification to the configured Slack channel.

HubSpot Forms Data Extraction

This workflow initializes the integration and retrieves all available forms from HubSpot. The operations in the workflow are configured to run hourly using operation schedules. The workflow filters and prepares the form data for use in the following submission processing workflow.

Form Submission Processing

This workflow retrieves submission records for each form obtained in the previous workflow. The workflow converts HubSpot submission data into the required integration format and stores the transformed payload for use in the Salesforce lead lookup workflow.

Salesforce Lead Lookup

This workflow queries the Salesforce Lead object using the submission email address as the primary key to check whether a matching lead record exists. The workflow stores the query results for use in the subsequent lead update workflow.

Salesforce Lead Update

This workflow maps HubSpot submission fields to Salesforce lead fields and performs an upsert operation on the matching lead record. The workflow stores the Salesforce response for use in the ZoomInfo enrichment workflow.

ZoomInfo Authentication

This workflow authenticates with ZoomInfo to obtain a JWT token required for enrichment API calls. The workflow sends an authentication request to the ZoomInfo Auth API and stores the response for use in the token extraction workflow.

Token Extraction

This workflow reads the ZoomInfo authentication response and extracts the JWT token. The workflow saves the token into global variables for use in the data enrichment workflow.

Data Enrichment via ZoomInfo

This workflow reads the updated Salesforce lead data and sends an enrichment request to the ZoomInfo Enrichment API. The workflow stores the enriched response for use in the post-enrichment Salesforce update workflow.

Post-Enrichment Salesforce Update

This workflow reads the ZoomInfo enrichment response, maps the enriched fields to the Salesforce Lead object, and updates the lead record in Salesforce with the enriched data.

Success Slack Notification

This workflow sends a success notification to the configured Slack channel after all workflows complete successfully. The notification includes the operation name, execution timestamp, and integration status.

Trigger the project workflows

The agent runs automatically on an hourly schedule. You can also trigger workflows manually.

To run an operation manually, hover over the operation name in Studio and select the Run option.

Tip

To change the schedule frequency, open the scheduled operation's actions menu and select Settings > Schedules.

Slack notifications

After successful execution, the agent sends a Slack notification to the channel configured in the Slack_Webhook_URL project variable.

Each notification includes the following information:

  • Operation name
  • Execution timestamp
  • Integration status

Troubleshooting

If you encounter issues, review the following resources for detailed troubleshooting information:

For additional assistance, contact Jitterbit support.