Terms of Service acceptance
Org owners must accept the current VoiceThere Terms of Service before the CLI and most control-plane API calls work. Session join with a project client key is not blocked by this gate.
How to accept
- Sign in to the dashboard at /accept-tos.
- Review the Terms and choose Accept.
- Continue to onboarding or your projects. The public Terms page remains at /terms.
Current Terms version on this deployment: 2026-07-12.
You can also accept via POST /api/v1/account/tos (authenticated user). That route is exempt from the TOS gate so you can accept when other API calls are blocked. See the Control plane API.
What happens when Terms are not accepted
Authenticated CLI and API requests return an error that Terms must be accepted, including a link to /accept-tos. Example with @voicethere/cli:
voicethere projects list
# → Terms of Service must be accepted…
# → Open …/accept-tos in your browserWhen Terms are updated
When VoiceThere publishes a new Terms version, previously accepted accounts must accept again before org API keys and user API keys can use the control plane. Until you re-accept, the CLI and API show the same gate as a brand-new account.
Authentication cache and propagation (important)
Control-plane authentication responses are cached briefly for performance. That cache includes whether the org owner (or user-key holder) has accepted the current Terms version.
- Default cache lifetime:
30000ms (30 seconds). - After you accept (or re-accept a new Terms version), retry the CLI/API. If a recent request still used an outdated “not accepted” result, the platform refreshes auth automatically in most cases and the next call should succeed immediately.
- If a key was already authenticated as accepted and Terms state then changes (for example you must re-accept after a Terms publish, or you rotate expectations in automation), allow up to 30 seconds for the authentication cache to expire, then retry with the same API key. Creating a new API key also picks up the current acceptance state immediately.
Operators may override the TTL with API_KEY_AUTH_CACHE_TTL_MS; the default above is what shipping environments use unless that variable is set.
Checklist
- Accept at /accept-tos (or POST /api/v1/account/tos).
- Retry CLI/API with your org or user API key.
- If a call still fails after a Terms change, wait up to 30 seconds or mint a new API key, then retry.