CRM property change source will show user ID instead of owner email

HubSpot Employee

CRM properties tell you the current state of a given object, like a contact, what their first name is, what their address is and so on.  One thing they can also tell you is what those values used to be. Maybe they moved so you changed their address.  Sometimes, you need to know who or what made those changes in the case of an audit or simply correcting a mistake. Our API allows you to request the history of a property along with who or what made the change.


What’s happening

Currently, when the change was made in the HubSpot app, the "source-id" field will be the user’s email address. Starting April 26th, this changes to be the user's Id.  You can still get the email address of the user by making an API call to the Owners API. This a breaking change that will require an update to your code if your integration expects this value to be the actual email address. 


The exact format of the field will be {userId:123} where 123 is the ID of the user you can supply to the Owners API. If you are relying on this information, we strongly suggest you add a conditional to check the format of this field in order to prepare for this change.


Why are we making this change?

This means the data will always be accurate even if a user changes their email address or requests us to remove them under a privacy regulation request. 


2 Replies 2

Hi @zwolfson ,
 Can you please clarify if you're talking specifically about the "CRM Properties" endpoints ( like /crm/v3/properties/{objectType} ) or talking about the object properties returned by requests to CRM objects (like /crm/v3/objects/companies/{companyId} ) ?
Can you please add a link in your post to Hubspot's API documentation where this field can be witnessed within an endpoint's response?

I'm having trouble finding any references to "changeId", either in legacy API documentation, the current documentation, or in Hubspot's responses to our integration. In the API response from one of our v2 endpoints ( /companies/v2/companies/[company_id] ) I am seeing references to "sourceId", which looks like it currently holds the user email. Does this change to "changeId" for v3 endpoints? The sample response in the v3 API documentation for the given Company endpoint shows neither "changeId" or "sourceId".

Apologies for the barrage of questions, just trying to be thorough in my understanding of this breaking change.

Thank you!

HubSpot Employee

Hi @Joneiros ,


The best place to see this behavior is probably in the get contacts by vid endpoint.  "changeId" is indeed incorred, I'll be editing the original post to show that "source-id" is the field that is changing. 


This only applies to v1 and v2 endpoints because the v3 CRM endpoints do not support property history.


Please do not feel the need to apologize. Don't hestiate to reach back if you need any additional clarification.