api.gradium.ai, and requests are routed to the nearest cluster.
For European customers this already means that, in practice, sessions are
processed in the EU.
EU data residency is for when “in practice” is not enough. Once enabled on
your plan, EU processing becomes a guarantee that is enforced on every
request: your sessions are never re-routed outside the EU, and every response
tells you so.
Endpoints
The base URLs for the EU endpoint are:
What is guaranteed
For an organization enrolled in EU data residency:- Inference stays in the EU. Text-to-Speech, Speech-to-Text and Speech-to-Speech sessions, over WebSocket or the one-shot REST endpoints, run on our EU clusters, located in Germany and France.
- No cross-region fallback. Under load a session may be served by another EU cluster, but never by a cluster outside the EU.
- Fail closed. If a pinned request ever reaches a non-EU cluster, it is refused rather than processed out of region (see Rejections).
- Session data is written in region. Whatever session data we retain (see Zero Data Retention to retain none) is written by the cluster that served the session.
How to opt in
EU data residency is available on our paid plans. It is enabled on your
plan by our team; there is no self-serve toggle yet.
1. Ask us to enable it
Contact support@gradium.ai with your organization name and pick one of two modes:- Explicit (default): sessions are pinned to the EU when you call
eu.api.gradium.ai. Calls toapi.gradium.aikeep today’s behaviour. Choose this if only part of your traffic needs the guarantee. - Implicit: your whole organization is pinned to the EU, whichever endpoint you call. Choose this if all of your usage is in scope.
2. Point your integration at the EU endpoint
3. Verify
Every response reports the residency the request actually got, so you can check it instead of trusting a hostname:- REST: the
x-gradium-residencyresponse header. - WebSocket: the
residencyfield of thereadymessage.
TTS ready
Rejections
A pinned request that reaches a cluster outside the EU is refused instead of being processed out of region:- REST:
403 Forbidden - WebSocket: close code
1008(policy violation)
This request must be sent to the eu region endpoint. In practice this
happens when an organization in implicit mode calls an endpoint that is
not EU-pinned; the fix is to use eu.api.gradium.ai.
Residency and Zero Data Retention
The two are independent and combine:- Data residency governs where your requests are processed.
- Zero Data Retention governs whether request and response payloads are retained at all. See the FAQ to enable it.