Question about difference between Transcript(Final...
# support
a
Hi, I am making a voice AI agent that sends the transcript of the entire completed call to AWS S3 Bucket using a Server URL. The workflow is VAPI calls the user -> VAPI sends the transcript to AWS Lambda function via Server URL -> The function saves the transcript to S3 Bucket. In the Server Messages section, I see there are 2 options. One is "Transcript (Final)" and the other is "transcript". Can someone please help me understand the difference between the two and how to use them? You can find the Server Messages section if you go into an already created VAPI Assistant, then click on "Advanced", click on "Messaging", and click on "Server Messages". I really appreciate your time and energy. https://cdn.discordapp.com/attachments/1444991681857323068/1444991682104918016/image.png?ex=69427f5f&is=69412ddf&hm=ea5bb893f8e10c9835f4746457f052dbe56bcfda2c9be9d2bba1aa13353dfa63&
v
For your use case—saving the entire completed call transcript to AWS S3—**select "Transcript (Final)" in the Server Messages section**. This option is intended to send the full, finalized transcript to your server URL after the call ends, making it ideal for archiving or post-processing workflows. Example payload structure you might receive:
Copy code
json
{
  "type": "transcript",
  "transcriptType": "final",
  "transcript": "Full call transcript here...",
  // ...other metadata
}
This ensures your Lambda function receives the complete transcript for storage. For more details, see the [Server Message API reference](https://docs.vapi.ai/api-reference/webhooks/server-message?explorer=true). Source: - [Server Message API reference](https://docs.vapi.ai/api-reference/webhooks/server-message?explorer=true)
t
Hey @Ash2520 “transcript” gives you live, streaming text as the caller speaks, while “Transcript (Final)” sends the clean, finalized utterance once VAPI finishes processing it. If you're saving to S3, Final is usually the one you want for accuracy, while the live transcript is useful for real-time logic. I’ve set up VAPI → Lambda → S3 pipelines before and can assist you end-to-end. Are you planning to store full-call transcripts or each finalized segment?
a
Thank you for your response. I appreciate you taking the time to write the message. I have changed my plan a bit and now I’m planning on using the Structured Output feature in VAPI. The voice agent’s job is to call people and ask them questions. My initial plan was to store the transcript in S3 and process it using an AI and parse out the answers. I found out that the structured output feature can do that for me quite easily. What are your thoughts on that?
t
Structured Output is actually a great move for your use case. Instead of saving the whole transcript and running another AI to extract answers, VAPI can give you clean, structured data right during the call. It’s faster, cheaper, and more accurate. If you want, I can help you set up the schema so the agent captures each answer clearly even when callers speak imperfectly. @Ash2520
a
Thank you for your offer @Tremix . I would be happy to learn more about how to capture the answers clearly
t
Sure, capturing answers clearly comes down to setting a solid Structured Output schema and guiding the agent with the right prompting. The key steps are: define each field the agent must extract, give examples of the expected answer style, and add fallback logic so the agent asks again when a response is unclear. Once that’s done, VAPI consistently returns clean, usable data. If you’d like, I can walk you through the setup and help you fine-tune it — we can continue the conversation privately anytime. @Ash2520
c
The
transcript
server message sends live, partial transcription as the caller speaks. It updates continuously and may change as recognition improves. The
Transcript (Final)
server message only sends finalized, high-confidence text after each utterance is fully processed. It won’t change once delivered and is best for storing or post-processing. If you need the transcript of the entire call, use the end-of-call report, which includes the full call transcript along with every other call data point.
a
Thank you very much Kyle, your comment was really helpful to get the full call transcript
c
Glad I could help!