This article covers the HubSpot workflow actions for reading, creating, and updating custom object records, attaching notes to them, and logging emails against them. For ticket, contact, company, and deal actions, see how to manage HubSpot tickets, companies, contacts, and deals 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, option-type fields have their label matched to the internal value defined in your custom object's schema, date fields are converted to Unix milliseconds, and file-type fields are uploaded to HubSpot and linked automatically. If a required field defined in HubSpot's schema is missing, the action fails and lists the missing properties in the error message.
Actions
Get Custom Object
Fetches a single record from a HubSpot custom object schema by its record ID and returns all of its properties.
| Field | Description | Validation |
|---|---|---|
| Custom Object Type | The custom object type name or type ID (for example, 2-123456). |
Required · Text |
| Custom Object ID | The numeric record ID of the custom object record to retrieve. | Required · Text |
Create Custom Object Record
Creates a new record in a HubSpot custom object schema.
| Field | Description | Validation |
|---|---|---|
| Custom Object Type ID | The ID of the custom object type to create a record in (for example, 2-123456). |
Required · Text |
| Fields | The property values for the new record. Each row includes ID (the internal name of the custom object field) and Value. | Optional · List (multiple entries) |
Update Custom Object Record
Updates the properties of an existing custom object record, using the same field-resolution rules as Create Custom Object Record.
| Field | Description | Validation |
|---|---|---|
| Custom Object Type ID | The ID of the custom object type (for example, 2-123456). |
Required · Text |
| Custom Object Record ID | The numeric ID of the record to update. | Required · Text |
| Fields | Fields to update. Each row includes ID and Value. | Optional · List (multiple entries) |
Add Note to Custom Object Record
Creates a new HubSpot note and associates it with a specified custom object record. The association is resolved automatically using the custom object's schema. Attachments are uploaded to HubSpot first and linked to the note by file ID.
| Field | Description | Validation |
|---|---|---|
| Custom Object Type ID | The ID of the custom object type the note should be associated with (for example, 2-123456). |
Required · Text |
| Custom Object Record ID | The numeric ID of the specific custom object record to attach the note to. | Required · Text |
| Created At | The timestamp for the note. | Required · Text |
| Note | The body text of the note. | Required · Text |
| Owner ID | The HubSpot owner ID to attribute the note to. | Optional · Text |
| Attachments | Files to attach to the note. | Optional · List (multiple entries) |
Edit Note to Custom Object Record
Updates the content of an existing HubSpot note. Only the fields you supply are changed.
| Field | Description | Validation |
|---|---|---|
| Note ID | The HubSpot ID of the note to edit. | Required · Text |
| Created At | Updated timestamp for the note. | Optional · Text |
| Note | Updated note body text. | Optional · Text |
| Owner ID | Updated owner ID. | Optional · Text |
| Attachments | Replacement or additional file attachments. | Optional · List (multiple entries) |
Log Email to Custom Object Record
Logs an outgoing or incoming email as a HubSpot engagement and associates it with a specified custom object record. Sender and recipient details are packaged into the HubSpot email headers format. The association is resolved automatically from the custom object's schema.
| Field | Description | Validation |
|---|---|---|
| Custom Object Type ID | The ID of the custom object type to associate the email with (for example, 2-123456). |
Required · Text |
| Custom Object Record ID | The numeric ID of the custom object record to associate the email with. | Required · Text |
| Created At | The timestamp of the email. | Required · Text |
| Email Direction | The direction of the email. Common values: INCOMING_EMAIL, EMAIL. |
Required · Text |
| From Email | The sender's email address. | Optional · Text |
| From First Name | The sender's first name. | Optional · Text |
| From Last Name | The sender's last name. | Optional · Text |
| To Email | The recipient's email address. | Optional · Text |
| To First Name | The recipient's first name. | Optional · Text |
| To Last Name | The recipient's last name. | Optional · Text |
| Subject | The email subject line. | Optional · Text |
| Message | The email body. HTML is accepted. | Optional · Text |
| Attachments | Files to attach to the email log. | Optional · List (multiple entries) |
Your workflow can now read, create, and update HubSpot custom object records, notes, and email logs. Next, see how to manage HubSpot tickets, companies, contacts, and deals from HappyFox Workflows to cover the rest of the HubSpot action set.