HubSpot
io.hubspot Storage v0.1.0 Works with HubSpot CRM objects (contacts, companies, deals): create or update with a flat properties map, get one object, search with filter groups / free text (cursor pagination), or delete. Uses a HubSpot OAuth2 credential or a pasted private-app token.
Ports
| Direction | Port | Label |
|---|---|---|
| Input | input | Payload |
| Output | output | Result |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
CredentialcredentialId | credential | "" | Use a stored credential for this connection — its fields are filled in at run start. Pick "None" to enter the connection details manually. accepts credential templates: hubspot-oauth2hubspot-token |
Access tokenaccessToken | string | "" | HubSpot access token — a connected OAuth2 credential or a pasted private-app token (pat-…). Empty is allowed here; it must resolve by run time. |
Operationoperation | select | "create" | Create, update, get, search, or delete a CRM object. createupdategetsearchdelete |
Object typeobjectType | select | "contacts" | Which CRM object collection to work with. contactscompaniesdeals |
Object IDobjectId | string | "" | The CRM object's ID to update, get, or delete. Shown when ["update", "get", "delete"].includes(operation ?? "create") |
Propertiesproperties | json | {} | Flat { property: value } map, e.g. { "email": "ada@example.com", "firstname": "Ada" }. Shown when ["create", "update"].includes(operation ?? "create") |
Properties to returnpropertiesList | json | [] | JSON array of property names the result should include, e.g. ["email", "firstname"]. Empty = HubSpot's defaults. Shown when ["get", "search"].includes(operation ?? "create") |
Filter groupsfilterGroups | json | [] | HubSpot search filterGroups as JSON (ORed groups of ANDed filters). Empty = no filters. Shown when operation === "search" |
Queryquery | string | "" | Free-text search across the object's searchable properties. Leave blank for none. Shown when operation === "search" |
Sortssorts | json | [] | JSON array of sort rules, e.g. [{ "propertyName": "createdate", "direction": "DESCENDING" }]. Shown when operation === "search" |
Return allreturnAll | boolean | false | Follow the paging cursor until every match is returned. Shown when operation === "search" |
Limitlimit | int | 100 | Without Return all, stop after this many results (page size is capped at HubSpot's 100). Shown when operation === "search" |
Base URLbaseUrl | string | "" | HubSpot API base URL (override for testing; also NINER_HUBSPOT_API_BASE). Blank = https://api.hubapi.com. |
Timeout (ms)timeoutMs | int | 30000 | Abort each API request after this many milliseconds. |
This page is generated from the node registry by gen-node-docs.mjs on every
site build — ports, properties, defaults and visibility rules cannot drift from the code.