For the complete documentation index, see llms.txt. This page is also available as Markdown.

Search CRM Objects

Searches HubSpot records of any type (tickets, deals, contacts, companies) using advanced filter groups, and returns the records that match.

Action identifier: search_crm_objects. Reference checked: 29 September 2026.

Inputs

Field
Type
Required/default
Meaning

object_type

string

Required

The type of object to search (e.g. 'tickets', 'deals', 'contacts', 'companies')

filters_json

string

Required

A JSON string representing the 'filterGroups' array. Example: '[{"filters": [{"propertyName": "hs_pipeline_stage", "operator": "EQ", "value": "1"}]}]'

properties

list[string]

[]

Optional list of properties to include in the search results

limit

integer

100

The maximum number of results to return (default 100)

after

string | null

null

Pagination cursor — use the value from the previous response's paging.next.after to load more results

Output shape

Paths are relative to this action's output. Select them from the builder's variable picker; do not add a ticket wrapper to actions that return top-level fields. Nullable property fields and empty defaults are not proof that a value was retrieved.

Path
Type
Meaning

total

integer

Total matching records reported by HubSpot, not the number on this page. Returns 0 when this page has no results.

results

list of objects

Records returned by this execution; see the retrieval limits below.

results[].id

string

HubSpot record ID.

results[].properties

object

Property values returned for this record; some declared fields may be empty.

results[].properties.subject

string | null

The subject of the ticket

results[].properties.content

string | null

The content of the ticket

results[].properties.hs_pipeline

string | null

The pipeline ID

results[].properties.hs_pipeline_stage

string | null

The pipeline stage ID

results[].properties.hs_ticket_priority

string | null

The priority of the ticket

results[].properties.firstname

string | null

First name of the contact

results[].properties.lastname

string | null

Last name of the contact

results[].properties.email

string | null

Email address of the contact

results[].properties.phone

string | null

Phone number

results[].properties.name

string | null

Name of the company

results[].properties.domain

string | null

Domain name of the company

results[].properties.dealname

string | null

Name of the deal

results[].properties.amount

string | null

Amount of the deal

results[].properties.dealstage

string | null

Stage of the deal

results[].createdAt

string

Creation timestamp returned by HubSpot; empty when unavailable.

results[].updatedAt

string

Last-update timestamp returned by HubSpot; empty when unavailable.

results[].archived

boolean

Archive flag returned by HubSpot; defaults to false when omitted.

results[].url

string

Record URL returned by HubSpot, when available; otherwise empty.

paging

dict[string, Any]

Pagination information. Pass paging.next.after as after to retrieve the next page with the same query.

exists

boolean

True when this page contains at least one result.

Property objects can contain additional fields returned by HubSpot. The declared fields above are not a promise that every property is populated.

Behavior and limits

filters_json is a JSON string containing the filterGroups array, not the entire search request. Supply properties separately to request specific fields. Use HubSpot's current search operators and limits for the chosen object type.

The action fetches one page. When paging.next.after is present, pass it to after on the next execution while retaining the same query. total describes matching records; it is not the number fetched into the current page. If the returned results are empty, this implementation returns exists: false, total: 0 and empty paging.

Invalid JSON fails before the request; invalid filter structure or unsupported object operations can be rejected by HubSpot. Not every object shown in a generic object-type selector necessarily supports CRM search.

See Troubleshooting for request errors and retry behavior, or return to the action catalog.

Was this helpful?