madoxe.te
madoxe.te2mo ago

Question about setting session expiration without code

I wanted to ask whether it’s possible to configure when a user session should expire without having to implement a custom script or code logic. Is there a built-in configuration option or setting that allows this to be handled declaratively or through an interface?
1 Reply
Tico | Voiceflow Assistant
At the moment Voiceflow doesn’t expose a “session timeout” knob in the Creator UI or in the project settings. How long a session lives is handled in three different ways, none of which can be changed declaratively inside Voiceflow: • Voice (call-in) agents – sessions terminate automatically after: – 30 minutes total call length, or – 3 minutes of complete user silence These limits are fixed (see “Troubleshooting voice – Limits”). • Web chat widget – chat state is kept entirely in the browser. You decide how long it should persist by setting the assistant.persistence property in the embed snippet:
window.voiceflow.chat.load({
verify: { projectID: 'your-project-id' },
url: 'your-runtime-url',
versionID: 'production',
assistant: {
// 'localStorage' (default) → survives tab & browser restarts
// 'sessionStorage' → survives tab reloads, cleared when all tabs close
// 'memory' → cleared on every page reload
persistence: 'sessionStorage'
}
});
window.voiceflow.chat.load({
verify: { projectID: 'your-project-id' },
url: 'your-runtime-url',
versionID: 'production',
assistant: {
// 'localStorage' (default) → survives tab & browser restarts
// 'sessionStorage' → survives tab reloads, cleared when all tabs close
// 'memory' → cleared on every page reload
persistence: 'sessionStorage'
}
});
That JavaScript flag is the only supported way to change expiry behaviour; there is no separate UI control. • Dialog Manager API (backend integrations) – a conversation’s state remains available as long as you keep using the same userID. The runtime has no configurable TTL; to "expire" a session you simply start interacting with a new userID or delete the record on your side. So, if you need a different expiration rule you would need to implement it on the client/integration side (e.g. clear the stored conversation ID after X minutes) – Voiceflow currently doesn’t offer a built-in setting to do this.

Did you find this page helpful?