Call recording, logging and transcribing
Deprecated: The old recordingEnabled, recordingPath, and recordingCredentials properties are deprecated. Use the new artifactPlan configuration instead for recording, logging, and transcript generation.
Overview
Vapi’s artifact plan system provides comprehensive call recording, logging, and transcription capabilities that allow you to capture, store, and analyze voice conversations for quality assurance, training, and compliance purposes.
Artifact plans enable you to:
- Record audio conversations for quality monitoring
- Generate detailed call logs for debugging and analysis
- Create transcripts for conversation analysis
- Store artifacts in custom storage or Vapi’s secure cloud
- Monitor conversation quality and assistant performance
- Ensure compliance with regulatory requirements
Use Cases
Payment Processing Flows
Protect sensitive payment information by using a middle assistant with all artifacts disabled:
This flow ensures that:
- Service conversations are recorded for quality assurance
- Payment details (credit card numbers, CVV codes) are never recorded or logged
- Confirmation conversations are recorded for compliance
Consent Gathering
For Enterprise customers, Vapi provides built-in recording consent plans that automatically create a consent assistant to request recording permission before transferring to your main assistant.
The Enterprise consent feature supports both:
- Verbal consent: Requires explicit “yes” confirmation from users
- Implicit consent: Assumes consent if users stay on the line after hearing the consent message
The system automatically tracks consent decisions and provides compliance data in the end-of-call report, including whether consent was granted and when it was obtained.
Alternatively, you can implement custom consent flows using squads:
The consent assistant runs without generating artifacts, while the main assistant records the actual conversation after consent is obtained.
Artifact Plan Configuration
Basic Configuration
Configure recording, logging, and transcript generation using the artifactPlan:
Artifact Plan Options
Configure different types of artifacts with these options:
recordingEnabled: Enable call recording (stored incall.artifact.recording) Default:truerecordingFormat: Audio format for recordings (e.g., “wav;l16”, “mp3”) Default: “wav;l16”loggingEnabled: Enable detailed call logs (stored incall.artifact.logUrl) Default:truepcapEnabled: Enable SIP packet capture for phone calls (stored incall.artifact.pcapUrl) Default:truetranscriptPlan: Configure transcript generation with speaker names
Storage Configuration
Default Storage
By default, Vapi stores artifacts securely in the cloud:
- Recordings, logs, and transcripts are encrypted at rest and in transit
- Access is controlled through your API credentials
- Artifacts are automatically cleaned up based on your retention policy
Custom Storage
Configure custom storage for different artifact types:
Storage Control Options
Control where each artifact type is stored:
recordingUseCustomStorageEnabled: Use custom storage for recordings (default: true)loggingUseCustomStorageEnabled: Use custom storage for logs (default: true)pcapUseCustomStorageEnabled: Use custom storage for SIP packet capture (default: true)recordingPath: Custom path for recording storageloggingPath: Custom path for log storagepcapS3PathPrefix: S3 path prefix for PCAP files
Squad and Transfer Behavior
Dynamic Artifact Control
In squads with multiple assistants, artifact generation (recording, logging, transcripts) can be controlled per assistant. When assistants are swapped or transferred during a call:
- Recording: Pauses when
recordingEnabled: falseassistant is active, resumes whenrecordingEnabled: trueassistant takes over - Logging: Pauses when
loggingEnabled: falseassistant is active, resumes whenloggingEnabled: trueassistant takes over - Transcripts: Pauses when
transcriptPlan.enabled: falseassistant is active, resumes whentranscriptPlan.enabled: trueassistant takes over
Transcript Configuration
Automatic Transcription
Configure transcript generation using the transcriptPlan:
Transcript Plan Options
enabled: Enable or disable transcript generationassistantName: Name to use for assistant messages in transcriptsuserName: Name to use for user messages in transcripts
Transcript Features
- Real-time transcription: Transcripts are generated during the call
- Speaker identification: Distinguishes between assistant and user messages
- Timestamps: Each message includes timing information
- OpenAI formatting: Available in
call.artifact.messagesOpenAIFormatted
Transcript Structure
Logging Configuration
Detailed Call Logs
Enable comprehensive logging for debugging and analysis:
Log Features
- Debug information: Detailed logs for troubleshooting
- Performance metrics: Call timing and performance data
- Error tracking: Comprehensive error logs and stack traces
- Workflow execution: Step-by-step workflow node execution
Accessing Logs
Logs are available through:
- Dashboard: View logs in the call details page
- API: Access via
call.artifact.logUrl - Custom storage: Store logs in your S3/GCP bucket
Accessing Artifacts
Via Dashboard
- Navigate to Calls in your Vapi dashboard
- Select a specific call from the list
- View artifacts in the Artifacts section:
- Recording: Play or download the audio recording
- Transcript: View the full conversation transcript
- Logs: Access detailed call logs for debugging
- PCAP: Download SIP packet capture (phone calls only)
Via API
Retrieve artifact URLs programmatically:
Privacy and Compliance
Legal Considerations
Important: Call recording laws vary by jurisdiction. Ensure compliance with:
- Consent requirements - Inform participants about recording
- Data protection regulations (GDPR, CCPA, etc.)
- Industry standards (PCI DSS, HIPAA, etc.)
Built-in Consent Management
For Enterprise customers, Vapi provides automated consent management through recording consent plans. This feature automatically:
- Creates a consent assistant that requests recording permission
- Handles both verbal and stay-on-line consent types
- Only begins recording after consent is granted
- Maintains audit trails of consent decisions
Best Practices
- Inform callers about recording at the start of conversations
- Secure storage with encryption and access controls
- Retention policies to automatically delete old recordings
- Access logs to track who accesses recordings
Always comply with local laws regarding call recording. Some jurisdictions require explicit consent from all parties before recording.
Recording Analysis
Call Artifacts
Use the comprehensive artifact data for analysis:
Analysis Use Cases
Use artifact data for comprehensive insights:
- Conversation flow analysis using
artifact.nodes - Response quality evaluation using
artifact.messages - Customer satisfaction metrics from transcript analysis
- Assistant performance tracking using logs and recordings
- Workflow optimization using node execution data
- Variable tracking using
artifact.variableValues
FAQ
How do I enable recording, logging, and transcripts?
Use the artifactPlan configuration in your assistant or call settings. Set recordingEnabled, loggingEnabled, and configure transcriptPlan.enabled to true to enable all three features.
Where are artifacts stored?
By default, artifacts are stored securely in Vapi’s cloud storage. You can configure custom storage using S3 or Google Cloud Storage with the recordingPath, loggingPath, and storage control options.
How do I access artifacts after a call?
Artifacts are available through the API via call.artifact.recording, call.artifact.transcript, call.artifact.logUrl, and other properties. You can also view them in the Vapi dashboard.
What's the difference between transcript and messages?
The transcript includes timing information and is optimized for conversation analysis. The messages property contains the same content but in a simpler format, while messagesOpenAIFormatted is structured for OpenAI API compatibility.
How do I configure speaker names in transcripts?
Use the transcriptPlan configuration with assistantName and userName properties to customize how speakers are identified in the transcript output.
Can I disable recording for specific calls?
Yes, you can configure artifact plans at both the assistant level and per individual call. This gives you granular control over what artifacts are generated for each conversation.
What is PCAP and when is it available?
PCAP (Packet Capture) is available for phone calls and contains SIP packet data for debugging telephony issues. It’s stored in call.artifact.pcapUrl when pcapEnabled is set to true.
How long are artifacts stored?
Default retention is 30 days for all artifacts. You can configure custom retention policies and use custom storage for longer-term archival.
How do artifacts work with squad transfers?
In squads, each assistant can have different artifact settings. Recording, logging, and transcripts pause when an assistant with disabled artifacts is active, and resume when an assistant with enabled artifacts takes over. This allows for privacy-conscious flows like consent collection.
Next Steps
- Call Analysis - Analyze recorded conversations for insights
- Recording Consent Plans - Automated consent management for Enterprise customers
- Privacy Compliance - Ensure GDPR and privacy compliance
- API Reference - Explore recording configuration options