Customer properties not updated anymore via Contact API


#1

Hi,

We use the Contact API to update some custom properties, but HubSpot has not been updating for a while now.
The support ticket I logged contains all details, but support says they cannot help me anymore. Here is the ticket for your reference: https://app.hubspot.com/support/490902/ticket/467034

I would like to know if someone can assist me with troubleshooting what data is received by HubSpot and why it is not updating. I can trigger the update manually, so if someone was to debug on the HubSpot side at the same time, this would be very helpful.

Thank you.

Regards,
Karel Dries


#2

Hi @kareldries_natch,

Thanks for providing the information in your support ticket. I took a look at it and I had a couple questions. Do you know how these are being mapped back to HubSpot properties? For example in your example I see FirstLoginDate but the closest property I can find in your portal is timestamp_first_login, are these mapped somewhere in your integration? Should I be looking at another property?

Another question is, how are these being formatted to the proper DateTime format? In the example you provided they look like an ISO date whereas the HubSpot API will require them in milliseconds from Epoch.

Do you happen to have access to the actual request that’s being sent to HubSpot directly? That would answer these questions directly.

Thanks,
Zack


#3

Hi Zack,

These are the properties we map to update timestamps in HubSpot:

timestamp_first_login
timestamp_last_login
timestamp_first_order
timestamp_last_order
timestamp_first_order_delivered

The datetime format we send is formatted in milliseconds, for example: 1486742939381.
The example I provided in the ticket show our logs and they are formatted in a way that makes them readable for us.

Here is an example of the data we deliver. Mind you, this is for another contact.
https://drive.google.com/open?id=0B3UFrcu_DCy8ZUl3MjRPejBwcWc

Regards,

Karel


#4

Hi @kareldries_natch,

Sorry for the delay, it took me a while to track down what was happening. It looks like the issue is the timestamp field you are sending in. HubSpot is reading that as when we should mark when the change happened, however it’s not in a valid format for HubSpot. Therefore the time modified is set to “Invalid date at Invalid date” which we are sorting as the most recent, making it impossible to overwrite.

I need to investigate further how we can clear that but in the meantime can you modify your script so that it either doesn’t send in the timestamp field or so that it’s formatted to milliseconds from epoch?

Thanks,
Zack


#5

Hi Zack,

Thank you for the feedback. We are going to adjust the timestamp key to milliseconds from epoch so it can be used to mark when the change happened and see if that works.
Do you prefer this value to be an integer or string?

Regards,
Karel


#6

Hi @kareldries_natch,

The timestamps should be a number so no quotes required. We can run a job to change the timestamps to the current time so they can be properly overwritten. Could you confirm that this will work for you and that you have modified your script so that this doesn’t happen again?

Thanks,
Zack


#7

Hey Zack,

We’ll make the adjustment to the timestamps later today. Once this is done, I’ll keep you posted so you can run the job to update the timestamps.

Regards,
Karel


#8

Hi Zack,

We made the change. As soon as you have updated the timestamps to the current time, I’ll try syncing again.

Regards,
Karel


#9

Hey @kareldries_natch,

This should be all set, let me know if you run into any issues with your sync.

Thanks,
Zack


#10

Zack,

I was able to update a contact, so I’m pushing all of them now.
I’ll do some more checks tomorrow, but I think it will be fine.

Thanks a lot for you help!

Regards,
Karel