Ian
10/19/2025, 7:24 PMChiranjeet Mishra
10/19/2025, 7:24 PMVapi Support Bot
10/19/2025, 7:25 PManalysisPlan and that your webhook endpoint is set up to receive the end-of-call-report message. In your assistant configuration, ensure you have:
js
server: {
url: "https://your-server.com",
timeoutSeconds: 20
},
serverMessages: ["end-of-call-report", "status-update"],
analysisPlan: { enabled: true, ... }
After updating, test a call and verify in the Vapi dashboard under Call Logs that the analysis summary and success evaluation are present.
For more details, see the [call analysis documentation](https://docs.vapi.ai/assistants/call-analysis.mdx).
Sources:
- [Call Analysis](https://docs.vapi.ai/assistants/call-analysis.mdx)
- [Debugging voice agents](https://docs.vapi.ai/debugging.mdx)
- [Call queue management with Twilio](https://docs.vapi.ai/calls/call-queue-management.mdx)Marcello
10/20/2025, 6:06 AMGIDEON
10/20/2025, 6:37 AMMarcello
10/20/2025, 6:38 AMMarcello
10/20/2025, 6:38 AMGIDEON
10/20/2025, 6:42 AMMarcello
10/20/2025, 6:50 AMMarcello
10/20/2025, 6:50 AMMarcello
10/20/2025, 6:51 AMMarcello
10/20/2025, 7:09 AMSteyt
10/21/2025, 4:44 PMChiranjeet Mishra
10/21/2025, 6:38 PM{"summaryPrompt": "Your custom text"}.
- **Structured Data Prompt/Schema**: Customize if specific data extraction is needed.
- **Success Evaluation Prompt/Rubric**: Define call success criteria using scales like NumericScale or Checklist.
For details, see [Call Analysis Documentation](https://docs.vapi.ai/assistants/call-analysis).
3. **Check Documentation**: Make sure your assistant’s analysisPlan is correctly configured. Incorrect configuration could prevent call analysis from being generated.
If calls are completing without analysis data, checking your API requests for proper setup or any errors might provide further insights.GIDEON
10/21/2025, 7:26 PMSteyt
10/21/2025, 10:08 PMChiranjeet Mishra
10/23/2025, 7:39 PMimport { VapiClient } from '@vapi-ai/server-sdk';
const client = new VapiClient({
token: process.env.VAPI_API_KEY!,
});
async function updateToMinimalMessages(assistantId: string) {
try {
console.log('Updating assistant to minimal server messages...');
const assistant = await client.assistants.update(assistantId, {
serverMessages: [
'end-of-call-report',
'transcript[transcriptType="final"]',
],
});
console.log('✓ Success! Server messages are now:');
console.log(' - end-of-call-report (sent when call ends)');
console.log(' - transcript[transcriptType="final"] (only final transcripts)');
console.log('\nAll other server messages are disabled.');
return assistant;
} catch (error: any) {
console.error('✗ Error updating assistant:', error.message);
throw error;
}
}
// Usage
const assistantId = 'your-assistant-id-here';
updateToMinimalMessages(assistantId);
Explanation
This script:
- Uses the Vapi Server SDK to update an existing assistant.
- Restricts serverMessages to only:
- end-of-call-report – triggered when a call completes.
- transcript[transcriptType="final"] – sends only the finalized transcript, not partials.
- Disables all other server messages to ensure minimal and stable webhook traffic.
You can replace "your-assistant-id-here" with your assistant’s actual ID and run it once to apply the configuration.Steyt
10/23/2025, 8:04 PMSteyt
10/23/2025, 8:16 PMSteyt
10/26/2025, 6:35 PMChiranjeet Mishra
10/27/2025, 7:20 PMconst assistant = await client.assistants.update(assistantId, {
serverMessages: [
'end-of-call-report',
'transcript[transcriptType="final"]',
], // dont forget the comma
clientMessages: [], // add this thing too
});
This will clear out the default client messages.
Separately, our team is investigating the issue where assistants only work properly after a manual re-publish. We’ll update you as soon as we have more information on that.Steyt
10/29/2025, 12:41 PMChiranjeet Mishra
11/06/2025, 9:58 PM