.do
ApiAnalytics

CallAnalytics

Analytics and metrics for voice calls, providing insights into call performance, quality, sentiment, and outcomes.

CallAnalytics

Analytics and metrics for voice calls, providing insights into call performance, quality, sentiment, and outcomes.

Properties

  • id (string): Unique identifier for the analytics record.
  • call ([[Call]]): The call being analyzed.
  • assistant ([[VapiAssistant]]): The assistant that handled the call.
  • phoneNumber ([[VapiPhoneNumber]]): Phone number used for the call.
  • business ([[Business]]): The business this call belongs to.
  • analysisDate (number): When analysis was performed (Unix timestamp).
  • duration (number): Total call duration in seconds.
  • talkTime (number): Active conversation time in seconds.
  • waitTime (number): Time customer spent waiting in seconds.
  • silenceTime (number): Total silence duration in seconds.
  • holdTime (number): Time on hold in seconds.
  • assistantSpeakingTime (number): Time assistant spoke in seconds.
  • userSpeakingTime (number): Time user spoke in seconds.
  • talkRatio (number): Assistant to user talk ratio.
  • interruptions (number): Number of interruptions.
  • interruptionRate (number): Interruptions per minute.
  • interruptedBy (string): Who interrupted more (assistant, user, balanced).
  • responseTime (number): Average assistant response time in seconds.
  • firstResponseTime (number): Time to first assistant response in seconds.
  • sentiment (string): Overall call sentiment (positive, neutral, negative).
  • sentimentScore (number): Sentiment score (-1 to 1).
  • sentimentTrend (string): How sentiment changed (improving, declining, stable).
  • emotionalTone (string[]): Detected emotional tones (happy, frustrated, confused, etc.).
  • satisfactionScore (number): Customer satisfaction score (0-100).
  • npsCategory (string): Net Promoter Score category (promoter, passive, detractor).
  • callOutcome (string): Call result (resolved, escalated, callback, abandoned).
  • resolution (string): How issue was resolved (self-service, assistant, human-handoff).
  • resolutionTime (number): Time to resolution in seconds.
  • firstCallResolution (boolean): Whether issue was resolved in first call.
  • transferOccurred (boolean): Whether call was transferred.
  • transferCount (number): Number of transfers.
  • escalated (boolean): Whether call was escalated.
  • escalationReason (string): Reason for escalation.
  • toolsUsed (string[]): Tools executed during call.
  • toolExecutionCount (number): Total tool executions.
  • toolSuccessRate (number): Percentage of successful tool executions (0-100).
  • averageToolExecutionTime (number): Average tool execution time in seconds.
  • intents (object[]): Detected user intents with confidence scores.
  • topics (object[]): Conversation topics with relevance scores.
  • keywords (object[]): Extracted keywords with frequency.
  • actionItems (number): Number of action items identified.
  • questionsAsked (number): Number of questions asked by user.
  • questionsAnswered (number): Number of questions answered.
  • unansweredQuestions (number): Number of unanswered questions.
  • audioQuality (number): Audio quality score (0-100).
  • transcriptionAccuracy (number): Transcription accuracy (0-100).
  • speechRecognitionErrors (number): Number of recognition errors.
  • latencyAverage (number): Average latency in milliseconds.
  • latencyP95 (number): 95th percentile latency in milliseconds.
  • latencyMax (number): Maximum latency in milliseconds.
  • costTotal (number): Total call cost in cents.
  • costPerMinute (number): Cost per minute in cents.
  • costBreakdown (object): Cost breakdown (llm, tts, transcription, telephony).
  • complianceFlags (string[]): Compliance issues detected.
  • qualityFlags (string[]): Quality issues detected.
  • improvementOpportunities (string[]): Identified areas for improvement.
  • tags (string[]): Analytics tags for categorization.
  • metadata (object): Custom key-value pairs for additional data.
  • created (number): Timestamp when analytics was created (Unix timestamp).

Actions

create

Create analytics for a call.

Input: [[AnalyticsRequest]]
Output: [[CallAnalytics]]

retrieve

Retrieve analytics details.

Input: [[CallAnalytics]]
Output: [[CallAnalytics]]

update

Update analytics metadata.

Input: [[CallAnalytics]]
Output: [[CallAnalytics]]

delete

Delete analytics record.

Input: [[CallAnalytics]]
Output: [[CallAnalytics]]

analyze

Perform comprehensive call analysis.

Input: [[Call]]
Output: [[CallAnalytics]]

compareCalls

Compare analytics across multiple calls.

Input: [[ComparisonRequest]]
Output: [[ComparisonResult]]

aggregateMetrics

Aggregate metrics across time period.

Input: [[AggregationRequest]]
Output: [[AggregatedMetrics]]

identifyTrends

Identify trends in call metrics.

Input: [[TrendRequest]]
Output: [[TrendAnalysis]]

detectAnomalies

Detect unusual patterns or outliers.

Input: [[AnomalyRequest]]
Output: [[Anomaly]][]

generateInsights

Generate AI-powered insights.

Input: [[InsightRequest]]
Output: [[Insight]][]

exportReport

Export analytics report.

Input: [[ReportRequest]]
Output: [[URL]]

visualize

Generate visualization data.

Input: [[VisualizationRequest]]
Output: [[ChartData]]

Events

  • created: Triggered when analytics is created.
  • updated: Triggered when analytics is modified.
  • deleted: Triggered when analytics is deleted.
  • analyzed: Triggered when analysis completes.
  • Anomaly.detected: Triggered when anomaly is detected.
  • Threshold.breached: Triggered when metric exceeds threshold.
  • Trend.identified: Triggered when trend is identified.
  • Insight.generated: Triggered when new insight is generated.
  • Quality.flagged: Triggered when quality issue is flagged.
  • Compliance.flagged: Triggered when compliance issue is flagged.