> ## Documentation Index
> Fetch the complete documentation index at: https://help.treble.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# HubSpot Methods

> Assign the conversation to the contact's owner agent in HubSpot —immediately, with a wait time limit, or only if they're connected— or to a team, and sync the assignment with your HubSpot workflows.

With the **HubSpot** destination, the conversation is assigned using your CRM's information. There are two methods available.

<img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-1.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=2016b70dfaa64e27b14afdf58f904863" alt="HubSpot destination" width="1440" height="1024" data-path="images/transfer-methods-hubspot-1.png" />

## Assign to owner agent

Treble assigns the chat to the **contact's owner agent in HubSpot**. When you select it, you also choose *when* that assignment happens.

<img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-owner.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=aa555388296a179645a363987434ca01" alt="Assign to owner agent method" width="1440" height="1024" data-path="images/transfer-methods-hubspot-owner.png" />

<Tabs>
  <Tab title="Assign immediately">
    Treble immediately assigns the chat to the owner agent in HubSpot, **even if they aren't connected**. It's the fastest and most direct option.

    <img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-owner-immediate.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=066dd087985d6ef8a4b94d2f637fc2a5" alt="Assign immediately" width="1440" height="1024" data-path="images/transfer-methods-hubspot-owner-immediate.png" />
  </Tab>

  <Tab title="Assign with a wait time limit">
    Treble checks whether the owner agent is connected. If they aren't, it **waits the indicated time** and then assigns using the fallback method.

    The wait time is defined in **minutes** or **hours**.

    <img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-owner-wait.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=6da2f23d64b4ed925f0038b4d6d73a25" alt="Assign with a wait time limit" width="1440" height="1024" data-path="images/transfer-methods-hubspot-owner-wait.png" />
  </Tab>

  <Tab title="Assign only if connected">
    The chat stays **unassigned indefinitely** and is only assigned when the owner agent connects to the platform.

    <img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-owner-connected.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=99e1f1c467407e9d63a5d4935f3305f9" alt="Assign only if the owner agent is connected" width="1440" height="1024" data-path="images/transfer-methods-hubspot-owner-connected.png" />

    <Warning>
      With this option the conversation can go unattended indefinitely if the owner never connects. Use it only when being attended to by that specific person matters more than how fast the response is.
    </Warning>
  </Tab>
</Tabs>

## Assign to a team

Treble assigns the chat to a **team** instead of to a person, regardless of who the contact's owner is.

<img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-team.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=f9b7f94f023d4da33dbe5b34c5ad1167" alt="Assign to a team method" width="1440" height="1024" data-path="images/transfer-methods-hubspot-team.png" />

With this method, **Tags** and **Labels** are required: they define the team that receives the conversation and how it's classified.

<img src="https://mintcdn.com/trebleai/4IeYTi_jb7MUcJQl/images/transfer-methods-hubspot-team-tags.png?fit=max&auto=format&n=4IeYTi_jb7MUcJQl&q=85&s=ac03ef14e9ebddd8518d6a3efe678166" alt="Team and labels configuration" width="1440" height="1024" data-path="images/transfer-methods-hubspot-team-tags.png" />

<div class="hr" />

## Wait before assigning chats

If you use **HubSpot workflows** to assign owners or tag properties, enable this option so Treble waits a few minutes before assigning.

HubSpot workflows can take time to process. Without that wait, Treble could assign the conversation **before** HubSpot has defined the owner, and the chat would end up with the wrong agent.

```mermaid theme={null}
flowchart LR
    A[Contact] --> B[HubSpot workflow]
    B --> C[Minutes of waiting]
    C --> D[Sales.ai assigns the chat]
```

<Tip>
  We recommend between **2 and 5 minutes**. That's enough for most workflows, and you can adjust it based on their complexity.
</Tip>

This wait is configured **per block**, not globally. That way you can keep immediate attention in the flows where no workflows are involved and apply the wait only where you actually need it.

### Use cases it enables

* **Round robin distribution** — use the contact rotation feature of HubSpot workflows.
* **Property-based assignment** — assign based on industry, company size, or any custom property.

<Note>
  The wait doesn't affect the customer's experience: they can keep interacting with the chatbot normally while Treble waits to make the correct assignment.
</Note>

<div class="hr" />

## Next steps

<CardGroup cols={2}>
  <Card title="HubSpot workflows" icon="diagram-project" href="/en/docs/integrations/hubspot/features/workflows">
    Configure HubSpot workflows to work with Treble.
  </Card>

  <Card title="API assignment" icon="code" href="/en/docs/build-with-treble/blocks/transfer-methods/api">
    Let your own system decide which agent receives the chat.
  </Card>
</CardGroup>
