Skip to content

HubSpot - Update Object

↩ Part of the HubSpot integration.

Updates an existing HubSpot record (PATCH /crm/v3/objects/{object_type}/{id}).

The call is a partial update: only the properties you send are modified, everything else is left untouched. That makes it safe to run on every execution — moving a deal to the next stage, stamping the last order date on a contact, or closing a ticket.

FieldTypeRequiredDescription
credentials_idcredentialsYesHubSpot credential
object_typetextYesObject type: contacts, companies, deals, tickets. Defaults to contacts if left empty
object_idtextYesId of the object to update
propertiesjsonYesProperties to update, e.g. {"firstname":"Ana"}

object_type, object_id and properties accept dynamic variables; the properties string is resolved before being parsed as JSON.

This module requires a HubSpot credential:

FieldDescription
tokenPrivate App token (starts with pat-), from HubSpot → Settings → Integrations → Private Apps

data is the updated object as HubSpot returns it:

{
"id": "701",
"properties": {
"firstname": "Ana",
"lifecyclestage": "customer",
"lastmodifieddate": "2026-08-05T12:05:00.000Z",
"hs_object_id": "701"
},
"createdAt": "2026-08-05T10:00:00.000Z",
"updatedAt": "2026-08-05T12:05:00.000Z",
"archived": false
}

Along with it, _meta:

{ "moduleVersion": "1.0.0", "success": true, "id": "701", "objectType": "contacts", "totalMs": 210 }
{
"credentials_id": "hubspot_marketing",
"object_type": "contacts",
"object_id": "{{data.contactId}}",
"properties": { "lifecyclestage": "customer", "phone": "{{data.phone}}" }
}
{
"credentials_id": "hubspot_sales",
"object_type": "deals",
"object_id": "{{data.dealId}}",
"properties": { "dealstage": "contractsent", "amount": "{{data.total}}" }
}
{
"credentials_id": "hubspot_service",
"object_type": "tickets",
"object_id": "{{data.ticketId}}",
"properties": { "hs_pipeline_stage": "4" }
}
  • Only the properties you send are changed; omitted properties keep their current value.
  • To empty a property, send it as an empty string (""). Sending null is rejected by HubSpot for most property types.
  • Read-only properties such as createdate or hs_object_id cannot be written and return a 400.
  • A 404 means the id does not exist for that object_type. Neither 400 nor 404 is retried — fix the data and run again.
  • If properties is empty or does not parse as JSON, the node stops before calling HubSpot.