Connecting with Vapi
Voice agents support is experimental and may be unstable. For more information, visit our Discord.
Connecting to Letta Cloud
Add your LETTA_API_KEY
Add Letta Cloud as an integration by entering your LETTA_API_KEY into the “Custom LLM” field at https://dashboard.vapi.ai/settings/integrations.

Create an assistant
Create a Vapi assistant at https://dashboard.vapi.ai/assistants/ and use the “Blank Template”.

Connect your Letta agent
Select “Custom LLM” for the model, and enter in the chat completions endpoint: https://api.letta.com/v1/chat/completions
In the request body, set the “model” field to your agent ID in the format agent-{AGENT-ID}.

/v1/voice-beta/{AGENT-ID} endpoint has been deprecated. Use /v1/chat/completions with the agent ID specified in the “model” field instead.Connecting to a self-hosted Letta server
To connect to a self-hosted server, you will need to have a internal accessible endpoint for your Letta server and add any authentication tokens (if they exist) instead of LETTA_API_KEY. We recommend using ngrok to expose your Letta server to the internet.
Setting up ngrok
If you are self-hosting the Letta server locally (at localhost), you will need to use ngrok to expose your Letta server to the internet:
- Create an account on ngrok
- Create an auth token and add it into your CLI
- Point your ngrok server to your Letta server:
Now, you should have a forwarding URL like https://{YOUR_FORWARDING_URL}.ngrok.app.
Create an assistant
Create a Vapi assistant at https://dashboard.vapi.ai/assistants/ and use the “Blank Template”.

Connect your Letta agent
Select “Custom LLM” for the model, and enter in the chat completions endpoint: https://{YOUR_FORWARDING_URL}.ngrok.app/v1/chat/completions
In the request body, set the “model” field to your agent ID in the format agent-{AGENT_ID}.
/v1/voice-beta/{AGENT_ID} endpoint has been deprecated. Use /v1/chat/completions with the agent ID specified in the “model” field instead.