Quality API /api/v2/quality/evaluations returns 200 but missing CSAT data for specific interactions

Running into a data gap with the Quality API. We need to extract CSAT survey responses tied to specific interaction IDs for our reporting dashboard. The goal is to join evaluation scores with the raw survey feedback.

I’m using the endpoint GET /api/v2/quality/evaluations. The docs say this returns evaluation details, including survey responses if applicable. Here is the query I’m sending:

GET /api/v2/quality/evaluations?interactionId={id}&status=submitted

The response is a 200 OK. It returns the evaluation object. It has the score and reviewer fields. But the surveyResponse field is null. Or sometimes missing entirely.

I’ve checked the following:

  • The interaction ID is correct. It’s a voice interaction.
  • The survey was completed by the customer. I can see the result in the CXone UI under Analytics > Surveys.
  • The evaluation was created automatically based on the survey response.
  • I’m using a service account with quality:evaluation:read permissions.

Here is a sample of the JSON payload I get back:

{
 "id": "eval-123",
 "interactionId": "inter-456",
 "status": "submitted",
 "score": 85,
 "surveyResponse": null,
 "createdDate": "2023-10-27T10:00:00.000Z"
}

Is there a specific flag or header I need to include to fetch the survey text? Or is this endpoint not the right way to get the survey data linked to the interaction?

I tried using the Surveys API endpoint /api/v2/surveys/results but that requires filtering by date range and doesn’t seem to link back to the specific interaction ID easily. The Quality API seems like the correct place since the evaluation is derived from the survey.

Any ideas on how to pull that text data?