Architect Data Action to ServiceNow 400 on IVR Input

Can anyone explain why the Data Action is throwing a 400 Bad Request when triggered by an IVR input node? The payload is valid JSON, yet ServiceNow rejects the POST to the incident table. Here is the configuration:

trigger: ivr:input:captured
action_type: rest_api
target_url: https://instance.service-now.com/api/now/table/incident
method: POST
headers:
 Content-Type: application/json
 Authorization: Bearer ${oauth_token}
body:
 short_description: ${ivr.input.value}
 caller_id: ${conversation.participant.id}

The MID server logs show the request leaving Genesys Cloud correctly, but the response body contains a syntax error pointing to the caller_id field mapping.