For the complete documentation index, see llms.txt. This page is also available as Markdown.

πŸ”„CRM Pipeline Sync

Automatically move contacts to the right stage in your CRM pipeline after every conversation. Connect GoHighLevel or HubSpot, choose eligible stages, and let the agent handle the rest.

CRM Pipeline Sync lets your Text Agent move contacts through a GoHighLevel or HubSpot pipeline automatically β€” no manual updates needed. After each conversation closes and the post-conversation analysis runs, an AI judge reads the analysis and moves the matching contact to the appropriate stage.


πŸ“˜ What you'll learn in this document:

  • Step 1: Connect a CRM credential in Settings β†’ OAuth.

  • Step 2: Enable and configure CRM Pipeline Sync for a specific Text Agent.

  • How it works: what happens at runtime when a conversation closes.


πŸ” Step 1: Connect a CRM credential

Before configuring your agent, add your CRM credential in Settings β†’ OAuth. You can add multiple credentials per provider.

You will need a Private Integration Token and your Location ID.

  1. In your GoHighLevel account, go to Settings β†’ Integrations β†’ Private Integrations and create a new integration.

  2. Copy the generated Private Integration Token.

  3. Find your Location ID in Settings β†’ Business Info.

  4. In Dapta, go to Settings β†’ OAuth and click Add credential.

  5. Select GoHighLevel, paste your token and Location ID, give the credential a name, and click Save.

Opportunities in GoHighLevel are the cards that move across pipeline stages.

You will need a Private App Token with the right CRM scopes.

  1. In HubSpot, go to Settings β†’ Integrations β†’ Private Apps and create a new app.

  2. On the Scopes tab, enable at minimum:

    • crm.objects.contacts.read / write

    • crm.objects.deals.read / write

    • crm.schemas.deals.read / write

  3. Click Create app and copy the generated token.

  4. In Dapta, go to Settings β†’ OAuth and click Add credential.

  5. Select HubSpot, paste your token, give it a name, and click Save.

Deals in HubSpot are the cards that move across pipeline stages.

πŸ“†HubSpot Private App Setup

βš™οΈ Step 2: Enable CRM Pipeline Sync for your Text Agent

Once a credential is connected, open the agent you want to configure.

  1. Open your Text Agent and go to the Conversation Analysis tab.

  2. Expand the CRM Pipeline Sync section.

  3. Toggle Enable CRM pipeline sync for this agent to on.


πŸ”Œ Select a credential and pipeline

  1. Click the Credential selector. Each option shows the provider icon (HubSpot or GoHighLevel). If you haven't added a credential yet, select Add credential β€” this takes you to Settings β†’ OAuth.

  2. Once a credential is selected, choose a Pipeline from the dropdown. The list is pulled live from your CRM.


🎯 Choose stages and set move conditions

  1. Click Choose stages to open the stage selector. Check every stage the agent is allowed to move contacts into.

  2. Click Confirm. Each selected stage appears as a card with a move condition β€” a short description of when a contact belongs in that stage.

Move conditions are drafted automatically with AI based on the stage name. Review each one and edit it with the pencil icon if needed. A small red dot marks stages whose condition was AI-generated and has not yet been reviewed.


βž• "Add contact to pipeline if not already in it" toggle

This toggle controls what happens when an existing CRM contact has no deal/opportunity yet in the chosen pipeline:

Toggle state
Behavior

ON

If the contact exists in the CRM but has no deal in this pipeline, a new deal/opportunity is created at the matched stage so they enter the pipeline.

OFF

Only contacts who already have a deal/opportunity in this pipeline are moved.

  1. Set the toggle based on your workflow, then click Save Agent (top right).


How it works at runtime

When a conversation session closes (either by the agent calling the Close Conversation action or after the inactivity timeout), the post-conversation analysis runs. As part of that analysis:

  1. Dapta looks up the contact in your CRM by phone number or email captured during the conversation.

  2. An LLM judge reads the analysis results and compares them against your move conditions.

  3. The judge selects the best matching eligible stage and moves the contact's deal/opportunity to that stage.

The stage move is best-effort β€” it runs after the conversation closes and never blocks or delays the conversation itself. If the contact is not found in the CRM, the move is skipped silently.


Requirements and limitations

Requirement
Detail

Agent version

V2 Text Agents (temporal/durable runtime) only.

Contact matching

The contact must already exist in the CRM. Matching is by phone number (E.164 format recommended) or email.

Phone format

Phone numbers should match the format stored in your CRM. Use E.164 (e.g. +15551234567) where possible.

HubSpot object

Moves Deals across pipeline stages.

GoHighLevel object

Moves Opportunities across pipeline stages.

Multiple credentials

You can add multiple credentials per provider in Settings β†’ OAuth. Each agent uses one credential + one pipeline.

Conversation Analysis

Post-Conversation Analysis must be enabled on the agent for CRM sync to run.


πŸ“ŠPost-Conversation AnalysisπŸ“†HubSpot Private App Setup

Last updated