> For the complete documentation index, see [llms.txt](https://help.distro.so/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.distro.so/crm/hubspot.md).

# HubSpot

Connect HubSpot to use CRM ownership in routing and write configured contact and meeting updates. Workspace admins manage the connection and router actions.

## Connect Distro with HubSpot

{% hint style="success" %}
When connecting HubSpot, Distro requests the following permissions:

* Read and write access to contacts
* Read and write access to companies
* Read access to contact lists
* Read access to user settings
* Read access to owner information
* Write access to contact schemas
  {% endhint %}

<figure><img src="https://2442454418-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQA3GQNrIYVrPQ90NBwRa%2Fuploads%2FNSO2Ge95DT2f0jJjt44R%2FCleanShot%202026-09-10%20at%2021.01.28%402x.png?alt=media&amp;token=5278e2b4-ab5b-4e13-93f1-d07d2bcaa17c" alt=""><figcaption></figcaption></figure>

{% stepper %}
{% step %}
Open **Settings → Integrations**. Workspace admins manage CRM connections.
{% endstep %}

{% step %}
Find **HubSpot** under **CRM** and choose its connection action. Distro supports one connected CRM at a time; disconnect Salesforce first if it is connected.
{% endstep %}

{% step %}
You'll be redirected to HubSpot's authorization page
{% endstep %}

{% step %}
Grant Distro permission to access your HubSpot account
{% endstep %}
{% endstepper %}

## Contacts and meetings

### **Contact Creation**

When enabled in your router settings, Distro can:

* Search for existing contacts by email
* Create new contacts if no matching contact is found
* Populate standard contact fields with booking information

### **Contact Updates**

When enabled, Distro can:

* Update existing contact information when matches are found
* Modify contact properties with new booking data
* Update contact ownership based on meeting assignments

### Meetings

When the relevant CRM actions are enabled, Distro can:

* Creating meeting records when bookings are confirmed
* Updating meeting statuses (Scheduled, Rescheduled, Completed, No Show, Cancelled)
* Linking meetings to associated contacts

Setting meeting properties:

* Meeting title
* Start and end times
* Meeting location: the address for an in-person meeting, or Remote for an online meeting
* Meeting status
* External meeting URL for online meetings; cleared for in-person meetings

### Contact properties

Distro transmits information about meetings and prospects by creating custom properties in HubSpot:

| Property label       | Internal field name            | Field type       |
| -------------------- | ------------------------------ | ---------------- |
| Meeting Time         | distro\_meeting\_time          | Date picker      |
| Meeting Type         | distro\_meeting\_type          | Single-line text |
| Meeting Status       | distro\_meeting\_status        | Dropdown select  |
| No Show              | distro\_no\_show               | Single checkbox  |
| Router Name          | distro\_router\_name           | Single-line text |
| Campaign Router Name | distro\_campaign\_router\_name | Single-line text |
| Meeting Create Time  | distro\_meeting\_create\_time  | Date picker      |

## Routing and booking are separate

A form submission starts routing. Matching a rule chooses the next routing step; it does not create a meeting. A meeting is created only when booking is confirmed.

Review the router’s **CRM Actions** to choose which records to create or update and when. Ownership rules can update a matched CRM owner after routing when configured. Strict distribution can update ownership after assignment; flexible distribution waits for the booking to select the host. Vacation coverage does not replace the original CRM owner.

For an Outbound Router, use **Booking-side CRM actions** for the actions required after a successful booking. CRM connectivity alone does not enable every router action.

## Enriched CRM fields

Use the CRM integration’s field mappings to write normalized enrichment values into supported fields. Choose whether to fill empty fields or overwrite them with a returned value. See [Enrichment](/integrations/enrichment.md) for provider order and mapping behavior.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.distro.so/crm/hubspot.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
