Setting up the HubSpot CRM for Docket Marketing Agent
Last updated: September 23, 2026
Connect HubSpot once for your workspace, then choose exactly what each Marketing Agent writes back when a conversation ends.
Docket's HubSpot integration turns Marketing Agent conversations into records your team already works in. It creates and updates Contacts, logs a Timeline Event for every conversation, and updates the associated Company and Deal when one exists.
Reading and writing are set up separately, and write-back is configured per agent. You decide what HubSpot sends into a live conversation, and what each agent sends back afterwards.
What do I need before connecting HubSpot?
Have these ready before you start:
The Admin role in Docket, which is what lets you manage workspace integrations.
A HubSpot account with API access. Free, Starter, Professional, and Enterprise tiers all include it.
A HubSpot user who can approve the connection. A System Administrator or a dedicated integration user gives the cleanest audit trail.
Read access to the Company, Contact, Deal, and Timeline objects, which is what Docket uses to bring context into a conversation.
Write access to the Contact, Meeting, Company, Deal, and Timeline Event objects, which is what Docket uses for write-back.
Docket adds and updates Contacts through a HubSpot form named DocketAIForm. If you delete a Contact in HubSpot, the form submissions tied to that Contact are no longer available in the CRM.
Add the website domain where the Marketing Agent widget runs to HubSpot then Settings then Tracking & Analytics then Advanced Tracking. HubSpot treats submissions from unknown domains as spam, and that is the most common reason a first test appears to do nothing.
How do I connect HubSpot to Docket?
Connect HubSpot once for the whole workspace, from the Integrations tab in Settings.
In Docket, open Settings and select the Integrations tab.
Find the HubSpot card and select Connect.

Sign in to HubSpot and approve the requested access for the account you want to connect.

How do I choose what Docket reads from HubSpot?
Read access brings HubSpot records into Docket so an agent can use them while a visitor is still on the page. It is separate from write-back and is set on the HubSpot card itself.
On the connected HubSpot card, select the gear icon, then select Settings.

In HubSpot configuration, under Field Mapping, turn on Read for Contact, Company, and Deal.

Select Save.
How do I turn on HubSpot write-back for a Marketing Agent?
Write-back is configured on each agent, so you can start with one agent and expand once you are happy with what it writes.
Open the Marketing Agent and select the Analysis and Actions tab.
Under Post Call Actions, turn on Sync to HubSpot.

Expand Sync to HubSpot and map the fields you want for Contacts, Companies, Deals, and Timeline Events.

Select Save.
Write operations are non-blocking. If an object is unavailable or a permission is missing, Docket skips that object and carries on with the rest.
What does Docket write to each HubSpot record?
Docket matches the visitor by email address, then updates the records related to that Contact.
HubSpot record | What Docket does |
|---|---|
Contacts | Creates a Contact when the email is new, and updates the mapped properties when the Contact already exists. |
Companies | Updates the mapped properties on a matching Company. Docket does not create Companies. |
Deals | Updates the mapped properties on an existing Deal associated with the Contact or Company. Docket does not create Deals. |
Timeline Events | Logs a custom Timeline Event on the Contact after every conversation, and cascades it to the associated Company and Deal where access allows. The event carries the agent's name, interaction count, page URL, and UTM parameters. |
How do I map Docket fields to HubSpot properties?
Pick a Docket field on the left and the HubSpot property it should write to on the right.

Two things are worth knowing before you map a large set:
The Docket field list is fixed. If the field you need is not in it, contact Docket Support rather than looking for a way to add one yourself.
Values have to match what the HubSpot property accepts. If you map a Docket field to a HubSpot dropdown or radio property, the value Docket produces must be one of that property's existing options. HubSpot rejects anything else, and Docket then drops that one field and retries, so the rest of the sync still lands while that property stays empty. Either add the option in HubSpot or set matching Permitted Responses on the post-call analysis field.
Which attribution and interaction fields can I map?
Docket writes campaign attribution and interaction history alongside the conversation itself.
UTM parameters and click IDs. Map fields such as Docket UTM Source, Docket Page URL, and Docket Click ID to capture which campaigns drive real conversations.
Interaction lifecycle. Map Docket First Interaction Date, Docket Latest Interaction Date, and Docket Interaction Count to build re-engagement workflows around returning visitors.
How do I map post-call analysis fields into HubSpot?
Post-call analysis extracts structured answers from each conversation, such as pain points, budget, or qualification status. Those extracted fields then appear in the HubSpot mapping list.
Open the agent and select Analysis and Actions.
Under Post Call Analysis, select Add to create a new extraction prompt.
Choose the Data Type, give the field a Name, and write instructions describing what the agent should evaluate. Set Permitted Responses when the value has to match a fixed set in HubSpot.

Return to Sync to HubSpot and map the new field to a HubSpot property.

Creating Post-Call Analysis Fields covers the extraction prompts in more depth, and Post-Call Analysis Data Types and Allowed Values lists what each data type can hold.
Once the fields are flowing, teams commonly use them to build segmented lists from captured pain points, to send a rep the discovery summary before a booked meeting, and to group Deals by the mapped page URL to see which pages drive pipeline.
When does Docket write to HubSpot?
Docket writes back when the conversation ends, not while it is still running, and only when the conversation captured an email address.
Docket pushes updates to HubSpot in near real time once a conversation ends.
Docket refreshes the data it reads from HubSpot every 24 hours.
Rate limits can delay a sync. Docket retries automatically.
Docket respects your field and object permissions. Where write access is missing, it skips that object and continues.
Why are my Docket contacts not appearing in HubSpot?
Most often because HubSpot has flagged the submission as spam, which happens when the site hosting the agent is not a known domain in your HubSpot account.
Add the domain to HubSpot then Settings then Tracking & Analytics then Advanced Tracking, then run the test again. If you are testing on the Docket standalone page rather than your own site, add https://aiseller.app.docketai.com/ as well. Contacts created before the domain was added are usually sitting in your HubSpot spam submissions.
Troubleshooting HubSpot sync
What you are seeing | What to check |
|---|---|
Nothing reaches HubSpot after a test conversation | Confirm the conversation captured an email address. Docket writes back only when it has one, and only once the conversation has ended. |
Contacts are missing and the domain is new | Add the site hosting the agent to Advanced Tracking in HubSpot, then check your spam submissions for the earlier ones. |
One property stays empty while the rest sync | The value Docket produced is not an accepted option on that HubSpot property. Add the option in HubSpot, or set matching Permitted Responses on the post-call analysis field. |
The Timeline Event does not appear on the Contact | Check the activity filter on the HubSpot Contact record and confirm Docket custom timeline events are shown. |
A Company or Deal was not updated | Confirm a Contact matched first, and that the Company or Deal is associated with that Contact in HubSpot. |
The agent writes nothing although HubSpot shows Connected | Open the agent, select Analysis and Actions, and confirm Sync to HubSpot is on and saved for that specific agent. |
Frequently asked questions
How does Docket avoid creating duplicate HubSpot contacts?
By matching on the Contact's email address. If a Contact with that email already exists, Docket updates it instead of creating another, and it associates the related HubSpot cookie with the visitor where one is present.
When exactly does Docket write to HubSpot?
At the end of the Docket engagement. Sync to HubSpot is a Post Call Action, so the write happens when the conversation ends rather than during it.
What happens if the visitor never gives an email address?
Nothing is written for that conversation. Docket identifies the HubSpot Contact by email, so a conversation that ends without one produces no CRM record.
Can Docket create Companies or Deals in HubSpot?
No. Docket creates and updates Contacts, and it updates a Company or Deal only when one is already associated with the matched Contact.
Why did one post-call analysis field sync while another stayed blank?
The blank one almost certainly carried a value that its HubSpot property does not accept, which happens most with dropdown and radio properties. Docket removes the rejected field and retries so the rest of the sync completes.
Do I have to connect HubSpot again for each agent?
No. Connect HubSpot once in Settings, then turn on Sync to HubSpot for each agent that should write back.
Can Docket write to HubSpot and Salesforce at the same time?
Yes. The sync actions are independent, so an agent can write to both. See Understanding CRM Sync from Analysis and Actions.
What happens when I disconnect HubSpot?
Sync stops immediately. Disconnecting while holding the data keeps what Docket has already ingested, and a permanent delete removes the ingested data along with the integration's configuration.