Logo
Search
API Docs

Post-Call Sentiment Analysis & Real-Time Audio Intelligence

Post-Call Data & Analysis

Post-Call Sentiment Analysis & Real-Time Audio Intelligence

Overview

Sentiment is one of several audio-intelligence features Sulus can surface from a call. By default, sentiment analysis runs after a call ends: the full transcript is processed by a capable LLM, which extracts sentiment (and any other fields you've defined) as structured data. A separate, real-time option is also available for teams that need sentiment during the live call rather than afterward.

This page applies the general mechanisms covered on the Call Analysis and Structured Outputs pages specifically to sentiment — see those pages for the full mechanics of each system.


How Post-Call Sentiment Analysis Works

Once a call ends, the platform processes the complete transcript using an LLM and extracts whatever fields your schema defines — sentiment among them. This runs automatically in the background and typically completes within a few seconds of call end.


Configuring Sentiment Extraction

Define a structuredDataSchema describing the sentiment-related fields you want extracted, paired with a structuredDataPrompt instructing the model how to fill them in:

{
  "structuredDataPrompt": "Analyze the caller's tone and satisfaction throughout the call.",
  "structuredDataSchema": {
    "type": "object",
    "properties": {
      "sentiment": {
        "type": "string",
        "enum": ["positive", "neutral", "negative"]
      },
      "emotionalState": {
        "type": "string",
        "enum": ["calm", "frustrated", "excited", "confused", "satisfied"]
      },
      "csatScore": {
        "type": "number"
      }
    },
    "required": ["sentiment"]
  }
}

Success Evaluation with a Sentiment-Focused Rubric

To grade whether a call was successful based on how the caller felt by the end of it, combine a successEvaluationPrompt with a rubric choice:

{
  "successEvaluationPrompt": "Evaluate whether the caller ended the call feeling satisfied and with their issue resolved.",
  "successEvaluationRubric": "NumericScale"
}

Available rubric types: NumericScale (1–10), DescriptiveScale (Excellent/Good/Fair/Poor), PercentageScale (0–100%), LikertScale (Strongly Agree–Strongly Disagree), PassFail (true/false), and AutomaticRubric (an automatic breakdown by criteria).


Where Results Land

Sentiment and success evaluation results appear in the call instance dashboard once processing completes, and via the API at:

  • call.analysis.structuredData — your extracted sentiment fields
  • call.analysis.successEvaluation — the rubric result

Real-Time Sentiment: A Transcriber-Level Add-On

Everything above is post-call only — it runs after the transcript is complete. If you need sentiment during the live call itself, a transcription provider option is available: Gladia offers real-time sentiment analysis and named-entity recognition as add-on features that run continuously as the call happens, rather than in a single pass afterward.

To use it, select Gladia as your assistant's transcriber provider (Assistants → your assistant → Transcriber tab → Provider dropdown). This is a distinct code path from the post-call analysisPlan/structuredDataSchema approach above — enabling Gladia gives you sentiment signal live during the call, in addition to (not instead of) whatever post-call sentiment extraction you've configured.