ServiceNow Incident Creation Fails on Screen Recording Metadata Webhook

Looking for advice on integrating Genesys Cloud screen recording metadata with ServiceNow incident creation. The environment is configured with a Data Action that triggers upon the session.completed event. The goal is to capture the recording URL and agent ID to populate a new ServiceNow ticket for QA review.

The issue arises specifically when the screen recording is generated alongside a voice call. The webhook payload from Genesys Cloud contains the recording_url, but the ServiceNow REST API endpoint (/api/now/table/incident) returns a 400 Bad Request error. The error message in the ServiceNow sys_log table indicates “Invalid value for field u_recording_link”.

Debugging steps taken:

  1. Verified the OAuth token validity via Postman; authentication is successful.
  2. Confirmed the u_recording_link field in ServiceNow is a String type with a 64k limit, which should accommodate the S3 URL.
  3. Checked the Architect flow; the mapping for recording_url is correct.

The failure seems to occur when the recording URL contains special characters or is excessively long, potentially exceeding the implicit payload size limit of the Data Action or causing a parsing issue in the ServiceNow script include. The Genesys Cloud version is 2024-12.

Is there a known character limit or encoding requirement for the recording_url field when passed via Genesys Cloud Data Actions to ServiceNow, and how should the payload be sanitized to prevent 400 errors?