Not sure what I am doing wrong. Here is the Request and Response info for my Update
REQUEST INFORMATION
Method: PATCH
URL/Path: https://api.hubapi.com/engagements/v1/engagements/9846326999
Headers: Content-Type: application/json, Accept: application/json
Params: hapikey=:censored:36:a04562ec86:
Data:
{
“engagement”: {
“active”: true,
“type”: “CALL”
},
“associations”: {
“contactIds”: [
5025901
]
},
“metadata”: {
“recordingUrl”: “RingCentral Media Reader”
}
}
RESPONSE
{“status”:“error”,“message”:"Invalid input JSON on line 1, column 1: Cannot construct instance of `com.hubspot.engagements.base.detail.views.EngagementDetailViewWithJson` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('{\“engagement\”: {\“active\”: true,\“type\”: \“CALL\”}, \“associations\”: {\“contactIds\”: [5025901]},\“metadata\”: {\“recordingUrl\”: \“https://ringcentral.github.io/ringcentral-media-reader/index.html?media=https://media.ringcentral.com/restapi/v1.0/account/1115835004/recording/1447002594018/content\“}}')”,“correlationId”:"cf1f674a-1ff7-4051-b77a-86a4c79e1cb6”,“correlationId”:“cf1f674a-1ff7-4051-b77a-86a4c79e1cb6)”}
According to the new documentation this API is currently under development and is not really “out there”.
According to the old documentation (that has proven to be outdated and incorrect in many cases) the associations cannot be modified through engagements. You need to use associations API for that part of your code.
Statements about associations in engagements here: 2026-03 API reference - HubSpot docs
Put your association through this api and remove it through this call
@MichaelC Thanks for the info, I actually do not need to modify the association. Alll I am trying to do is add a call recording to the CALL engagement. I have removed everything but this in the JSON and continue to get the parsing error. Any other suggestions?
JSON
{
"metadata": {
"recordingUrl": "https://ringcentral.github.io/ringcentral-media-reader/index.html?media=https://media.ringcentral.com/restapi/v1.0/account/1115835004/recording/1447002594018/content"
}
}
ERROR
{
"status": "error",
"message": "Invalid input JSON on line 1, column 1: Cannot construct instance of \`com.hubspot.engagements.base.detail.views.EngagementDetailViewWithJson\` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('{\\"metadata\\": {\\"recordingUrl\\": \\"[https://ringcentral.github.io/ringcentral-media-reader/index.html?media=https://media.ringcentral.com/restapi/v1.0/account/1115835004/recording/1447002594018/content\\](https://ringcentral.github.io/ringcentral-media-reader/index.html?media=https://media.ringcentral.com/restapi/v1.0/account/1115835004/recording/1447002594018/content\)"}}')",
"correlationId": "5a66d85b-a2fd-4c85-be87-562578c9db39"
}
@MichaelC Thanks again for the help…my issue was that I did not parse my JSON befor sending the request. My API is now working as expected.