Hi Rich, here to see if the following sparkles more engagement from more enlightened folks. Here my two cents:
My understanding too is this is a known limitation, transcription confidence levels for free-form survey questions are not currently exposed through the survey APIs (such as GET /api/v2/quality/conversations/{conversationId}/surveys).
What the Platform Offers:
In-Flow Variable Available:
During flow execution, Genesys Cloud provides the Session.LastCollectionConfidence variable that captures the ASR (Automatic Speech Recognition) confidence for the participant's most recent utterance in an "Ask for" action. This variable is specifically for ASR confidence, not NLU confidence.
I like your workaround requiring:
Using POST /api/v2/analytics/conversations/details/query to identify conversations with surveys
Making an API call to /api/v2/speechandtextanalytics/conversations/{conversationId}/communications/{communicationId}/transcripturl to get the transcription URL
Fetching the JSON content from that S3 URL, which contains word-level confidence scores
Calculating the average confidence yourself
I did a quick search and there seems to be an existing Aha! Idea DARSTA-I-415 titled "Overall transcript confidence score" (status: Future Consideration) that requests exactly this functionality - adding an overall confidence score to the transcription API response instead of requiring manual calculation from word-level confidence scores.
In the meantime, considering you mention that you recently added the ability to attach transcription confidence at the end of the survey, what I would explore going forward would would be:
Use the Session.LastCollectionConfidence variable after each free-form question
Store it to Participant Data using a Set Participant Data action
This makes the confidence value available via the Analytics API and attached to the interaction record
For the historical data where you didn't capture this, unfortunately the only option is the workaround you described - fetching the transcript URL and calculating average confidence from the word-level data.
API References for Your Workaround:
POST /api/v2/analytics/conversations/details/query - Find survey interactions
GET /api/v2/quality/conversations/{conversationId}/surveys - Get survey responses
/api/v2/speechandtextanalytics/conversations/{conversationId}/communications/{communicationId}/transcripturl - Get transcript with word-level confidence
------------------------------
Joaquin Garcia Fink
Senior Customer Success Manager
Genesys - Employees
------------------------------