This article covers the HubSpot workflow actions for creating and updating tickets, looking up contacts, companies, and deals, updating companies, and managing associations between HubSpot records. For custom object actions, see how to manage HubSpot custom objects from HappyFox Workflows.
Validation note legend
| Term | Meaning |
|---|---|
| Required | The field must be filled in for the action to run. |
| Optional | The field can be left blank; the action will still run. |
| Text | A plain text entry (single line or paragraph). |
| List (multiple entries) | A repeating group where you can add one or more rows. |
| File | A file attachment reference. The file is uploaded to HubSpot before the record is created or updated. |
Note on field resolution: Across these actions, pipeline, stage, priority, source, resolution, and other option-type fields are matched by name to their HubSpot values — you enter the label as it appears in HubSpot, not an internal ID. Date fields accept any parseable date or datetime string (for example,
2025-06-01orJune 1 2025 10:00 AM) and are converted to Unix milliseconds automatically. Owner fields accept either a HubSpot owner ID or an email address — if you supply an email, the integration looks up the matching owner ID for you.
Actions
Create Ticket
Creates a new ticket in HubSpot.
| Field | Description | Validation |
|---|---|---|
| Name | The subject/title of the ticket. | Required · Text |
| Pipeline | The name or ID of the HubSpot pipeline to place the ticket in. Matched case-insensitively against the account's synced pipelines. | Required · Text |
| Status | The pipeline stage (status) name or ID. Resolved against the stages of the chosen pipeline. | Required · Text |
| Description | The body/content of the ticket. | Optional · Text |
| Priority | The ticket priority (for example, LOW, MEDIUM, HIGH). Matched case-insensitively against allowed values. |
Optional · Text |
| Owner | The ticket owner's HubSpot owner ID or email address. | Optional · Text |
| Source | The ticket source type. Enter the option label. | Optional · Text |
| Resolution | The resolution type. Enter the option label. | Optional · Text |
| Create Date | The ticket creation date. | Optional · Text |
| Close Date | The ticket close date. Same format rules as Create Date. | Optional · Text |
| Category | The ticket category. Enter the option label. | Optional · Text |
| Custom Fields | Additional custom ticket fields to set. Each row includes ID (the internal field name) and Value (option labels and dates are resolved automatically). | Optional · List (multiple entries) |
| Attachments | Files to attach to the ticket. Each is uploaded to HubSpot and linked by file ID. | Optional · List (multiple entries) |
Update Ticket
Updates an existing HubSpot ticket. Only the fields you provide are changed. All field-resolution rules are the same as Create Ticket.
| Field | Description | Validation |
|---|---|---|
| Ticket ID | The HubSpot ID of the ticket to update. | Required · Text |
| Name | Updated ticket subject/title. | Optional · Text |
| Pipeline | Updated pipeline name or ID. | Optional · Text |
| Status | Updated pipeline stage name or ID. | Optional · Text |
| Description | Updated ticket body. | Optional · Text |
| Priority | Updated priority. Enter the option label. | Optional · Text |
| Owner | Updated owner, as an owner ID or email address. | Optional · Text |
| Source | Updated source type. Enter the option label. | Optional · Text |
| Resolution | Updated resolution type. Enter the option label. | Optional · Text |
| Create Date | Updated creation date. | Optional · Text |
| Close Date | Updated close date. | Optional · Text |
| Category | Updated category. Enter the option label. | Optional · Text |
| Custom Fields | Custom ticket fields to update. Same structure as Create Ticket. | Optional · List (multiple entries) |
| Attachments | Replacement or additional file attachments. | Optional · List (multiple entries) |
Note: If you supply a Status but no Pipeline, the action automatically fetches the ticket's current pipeline and uses it for stage resolution.
Get Ticket
Fetches the details of a HubSpot ticket by its numeric ID and returns a flattened response. Internal HubSpot property keys are renamed to friendlier names — for example, subject becomes ticket_name and content becomes ticket_description — and a small set of internal metadata fields is removed.
| Field | Description | Validation |
|---|---|---|
| Ticket | The HubSpot ticket ID (numeric) of the ticket to retrieve. | Required · Text |
Get Contact
Looks up a HubSpot contact and returns their properties, including all standard and custom contact fields.
| Field | Description | Validation |
|---|---|---|
| Contact | The contact's email address or HubSpot contact ID. The integration automatically detects the format — a valid email triggers an email-based lookup, and a numeric value triggers an ID-based lookup. | Required · Text |
Get Company
Looks up a HubSpot company and returns its properties. If the value looks like a numeric ID, it's fetched directly. Otherwise, the integration searches for a company whose name matches the input and returns the first result.
| Field | Description | Validation |
|---|---|---|
| Company | The HubSpot company ID (numeric) or the company name to search for. | Required · Text |
Get Deal
Looks up a HubSpot deal and returns its properties. If the value is a numeric ID, it's fetched directly. Otherwise, the integration searches by deal name and returns the first match.
| Field | Description | Validation |
|---|---|---|
| Deal | The HubSpot deal ID (numeric) or the deal name to search for. | Required · Text |
Update Company
Updates one or more properties on an existing HubSpot company record. Fields are divided into standard HubSpot-defined company fields and custom (account-specific) fields. In both groups, option-type fields have their label matched to the internal value, and date-type fields are converted to Unix milliseconds.
| Field | Description | Validation |
|---|---|---|
| Company ID | The HubSpot company ID of the company to update. | Required · Text |
| Company Fields | Standard HubSpot-defined company fields to update. Each row includes ID (the internal name of the field) and Value (the new value). | Optional · List (multiple entries) |
| Custom Fields | Account-specific custom company fields to update. Each row includes ID and Value, using the same resolution rules. | Optional · List (multiple entries) |
Create Associations
Creates one or more associations between a source HubSpot object and one or more target objects. All target objects of the same type are batched into a single API call. Returns the overall batch status from HubSpot.
| Field | Description | Validation |
|---|---|---|
| From Object Type | The HubSpot object type of the source record (for example, contacts, tickets, deals, companies, or a custom object type ID). |
Required · Text |
| From Object ID | The numeric ID of the source record. | Required · Text |
| To Object | The target records to associate with the source. Each row includes To Object Type and To Object ID. | Required · List (multiple entries) |
Remove Associations
Removes one or more associations between a source HubSpot object and target objects. All target objects of the same type are batched into a single API call.
| Field | Description | Validation |
|---|---|---|
| From Object Type | The HubSpot object type of the source record (for example, contacts, tickets, deals, companies). |
Required · Text |
| From Object ID | The numeric ID of the source record. | Required · Text |
| To Object | The target records to dissociate from the source. Each row includes To Object Type and To Object ID. | Required · List (multiple entries) |
Your workflow can now manage HubSpot tickets, contacts, companies, deals, and associations between records. Next, see how to manage HubSpot custom objects from HappyFox Workflows if your HubSpot account uses custom object schemas.