Change in API error responses

I’ve got a HubSpot API integration that has recently run into a few issues. The integration is built to expect occasional errors to be returned from the API, and knows how to handle and log these. The errors are expected to be in the JSON format documented at Accounts Dashboard | HubSpot.

However, in the last few days the error responses seem to be in a different format, and don’t include the requestId. This is causing the errors to propagate through my application, as the error response deserialization fails due to the missing field. This field is being excluded across multiple endpoints, so seems to have been removed from the error response format - the below screenshot is from a POST request to the Deals API (deals/v1/deal/):

Is this a known change to how the API works? I can’t find it anywhere in the changelog, and am hesitant to change my integration if the requestId is going to be reinstated.

Hi @benc-bright, I’ve been talking with Lisa, the support rep you’ve been working with, about this. It looks like this format did actually change unexpectedly recently. Engineering is now looking into the issue and we’ll get back to you soon. I’ll post here retroactively, but for the swiftest support, reaching out to Lisa will be your best bet, instead of pinging this thread. Thanks @benc-bright and thanks for letting us know!

hi @benc-bright , we’ve resolved this issue. This was not supposed to occur, so you can certainly expect those to be present in the response. We may move to a more useful format without correlationId and requestId in a future world, but you should expect any changes will be posted in the changelog: HubSpot Developer Changelog, and a minimum of 90 days heads up. Sorry for the confusion here!

Hi @cbarley, thanks for the update and for fixing the issue. I’ll keep an eye on the changelog for any future updates regarding the removal of these fields.