---
name: "hubspot_search"
area: "hubspot"
title: "Search HubSpot"
price: "free"
method: "POST"
url: "https://api.conecto.chat/v1/tools/hubspot_search"
mcp_server: "https://api.conecto.chat/mcp/hubspot"
auth: "Authorization: Bearer <conecto_sk_ key>"
docs_url: "https://conecto.chat/tools/hubspot/hubspot_search"
---

# Search HubSpot (`hubspot_search`)

Contacts, companies, deals or tickets in HubSpot matching words.

Contacts, companies, deals or tickets in the company's HubSpot matching words (a name, an email, a deal's name), with their usual properties or the ones named. Free.

Price: Free up to 1,000,000 reads a month for the whole account, then $0.50 per 10,000 reads. A call that fails costs nothing.

## Use it when

The agent needs a customer, a company or a deal before it answers or acts.

## Say this to your agent

> What deals do we have with Hotel Seeblick?

## Inputs

| Name | Type | Required | Description | Allowed values | Default |
|---|---|---|---|---|---|
| `object` | string | yes | contacts, companies, deals or tickets. | `"contacts"`, `"companies"`, `"deals"`, `"tickets"` |  |
| `query` | string | no | Up to 200 characters. |  |  |
| `properties` | array of strings | no | The properties to show; the usual ones when left out. Up to 50 items. |  |  |
| `limit` | integer | no | 1 to 100. |  | `20` |

## Example

Written for Hansen & Voss, a restaurant-equipment wholesaler in Hamburg with 60 staff.

MCP: call `hubspot_search` on the MCP server `https://api.conecto.chat/mcp/hubspot` with these arguments:

```json
{
  "object": "deals",
  "query": "Hotel Seeblick"
}
```

REST:

```bash
curl https://api.conecto.chat/v1/tools/hubspot_search \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"object": "deals", "query": "Hotel Seeblick"}'
```

## Response

```json
{
  "call_id": "5f0c8a2e-3b7d-4c1e-9a64-2d8e1f7b0c93",
  "tool": "hubspot_search",
  "status": "succeeded",
  "replayed": false,
  "cost_usd": "$0.00",
  "balance_usd": "$19.75",
  "result": {
    "object": "deals",
    "total": 1,
    "records": [
      {
        "id": "18734511204",
        "object": "deals",
        "properties": {
          "dealname": "Combi steamers, Hotel Seeblick",
          "amount": "18400",
          "dealstage": "appointmentscheduled",
          "pipeline": "default"
        },
        "created_at": "2026-09-02T10:00:00Z",
        "updated_at": "2026-10-01T09:00:00Z"
      }
    ]
  }
}
```

`result`: object, total, and records: each with id, object, properties, created_at and updated_at.

## Errors

| Code | Status | When | Fix |
|---|---|---|---|
| `not_connected` | 409 | HubSpot isn't connected yet. | Connect it with hubspot_connect. |
| `vendor_rejected` | 502 | HubSpot refused: the token is wrong, or the private app lacks the scope. | Add the scope the message names to the private app. |

The refusals every tool can give (401 key, 402 balance, 429 limits) are on the errors page: https://conecto.chat/docs/errors.md

## Related

- [hubspot_connect](https://conecto.chat/tools/hubspot/hubspot_connect.md): Connects the company's HubSpot through its own private app's token. Free.
- [hubspot_get](https://conecto.chat/tools/hubspot/hubspot_get.md): One HubSpot record by its id, with its usual properties or the ones named. Free up to 1,000,000 reads a month.
- [hubspot_create](https://conecto.chat/tools/hubspot/hubspot_create.md): Makes a contact, company, deal or ticket in HubSpot. $0.001 a call.
- [hubspot_update](https://conecto.chat/tools/hubspot/hubspot_update.md): Changes a HubSpot record's properties; waits for the owner by default. $0.001 a call.
- [hubspot_add_note](https://conecto.chat/tools/hubspot/hubspot_add_note.md): Adds a note to a HubSpot record's timeline, where the team sees it. $0.001 a call.
- [hubspot_disconnect](https://conecto.chat/tools/hubspot/hubspot_disconnect.md): Forgets the private app's token; nothing in HubSpot changes. Free.
