# HubSpot

## What It Does

Creates a new contact in your HubSpot CRM when a workflow fires. Midbound checks if a contact with the same email already exists — if it does, the action is skipped to avoid duplicates or overwriting your existing data.

## Authentication

OAuth2. When adding HubSpot as a connection step in an automation, click **Connect** and authorize Midbound in HubSpot. Midbound never stores your HubSpot password.

## Data Sent to HubSpot

| Midbound Field                        | HubSpot Property |
| ------------------------------------- | ---------------- |
| Work email (fallback: personal email) | `email`          |
| Work email                            | `work_email`     |
| First name (split from full name)     | `firstname`      |
| Last name (split from full name)      | `lastname`       |
| Job title                             | `jobtitle`       |
| Company name                          | `company`        |
| Work phone (fallback: personal phone) | `phone`          |
| Street address                        | `address`        |
| City                                  | `city`           |
| State                                 | `state`          |
| Zip code                              | `zip`            |
| Country                               | `country`        |
| Company industry                      | `industry`       |

## Key Behaviors

* **Email required** — If no email address is available for the visitor, the action is silently skipped (no error).
* **Deduplication** — Before creating a contact, Midbound searches HubSpot by email. If a contact already exists, it is left untouched.
* **Email priority** — Work email is preferred. Personal email is used only when no work email exists.
* **Name splitting** — The visitor's full name is automatically split into first name and last name.

## Using with Workflows

1. Create an audience (e.g., "Enterprise visitors who viewed pricing")
2. Set up a workflow triggered by audience entry
3. Add **Push to HubSpot** as the action
4. Only matching visitors are pushed — keeping your CRM clean

## Related

* [Integrations Overview](/docs/integrations/overview.md)


---

# Agent Instructions: 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:

```
GET https://midbound.ai/docs/integrations/hubspot.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
