Skip to contentNewChat and Code are in previewJoin the waitlist

EU data residency for AI

The EU AI stack.

Three products. One audit trail. Nothing leaves the EU unless you send it. You can prove it.

Registered in the Netherlands. No US parent.

Every request. Every workspace. From the first token.

One request

python

1line changed

client = OpenAI(
base_url="https://api.akumi.eu/v1",
api_key=os.environ["AKUMI_API_KEY"],
)
Routed to
mistral-large · eu-west-1
Latency
840ms · cache miss
SDKs
python · ts · php

Your client, your SDK, your code. Everything else stays where it is.

Read the docs →

firewall

this request

3entities masked

You send

Summarise the dispute for jan.devries@acme.nl, invoice NL4471, IBAN NL91ABNA0417164300.

The model sees

Summarise the dispute for «EMAIL_1», invoice «INVOICE_1», IBAN «IBAN_1».

Restored in your response, never in the model context. This is what makes routing outside the EU safe rather than forbidden.

See the firewall →

Audit trail

Today

1,284requests, 0 left the EU

  • 14:02ChatFrankfurt

    Message sent by m.devries

    PII masked

  • 14:01PlatformFrankfurt

    Completion via API key ending 4f2a

    No egress

  • 13:58CodeFrankfurt

    Repository context read, acme/billing-api

    Metadata only

  • 13:56ChatBlocked at edge

    Non-EU model requested, refused

    Egress held

Every product writes to the same record. Metadata only, never prompt content.

See the audit trail →

What you get

Nine services. Three ways in.

The Platform is the services. Chat and Code are two more doors into the same building.

  • Akumi PlatformIn service

    All nine services, over one OpenAI-compatible API.

  • Akumi ChatIn preview

    The same services, as chat for your whole team.

  • Akumi CodeIn preview

    Recall over every PR, issue and decision, for your coding agent.

Build

Get a model answering, fast.

Govern

Decide what a model may see and say.

  • Model RouterPolicy-based routing with fallback
  • FirewallPseudonymize before models see data
  • RecallMemory and documents in one knowledge graph

Prove

Show an auditor what happened.

Whichever product makes the call, the same nine services run, and the same trail records it.

Explore the platform →

Before you sign

Answers for the person who has to sign off.

Request the compliance pack →

Where does the data actually live?

Storage and the application never leave the EU. Model calls leave only with your recorded approval. Your CLOUD Act exposure is a list you can produce.

Residency report

Does a model ever see personal data?

Not with the firewall on. Personal data is replaced with tokens before any model sees it, and restored only in your own response. The firewall is a per-workspace switch, and the audit trail records which setting each request ran under.

Firewall spec

Can we prove it afterwards?

Every request records where it ran, and a metadata-only audit trail is retained on your own policy.

Audit export

Who else touches the data?

Every sub-processor is disclosed up front. The DPA is available on request.

Sub-processor list

Which regulations does this cover?

GDPR and the EU AI Act from the start, documented for DORA and NIS2. ISO 27001 is in progress, and we say so.

Article 30 ROPA

Registered in the Netherlands. No US parent.

How you start

This is the whole migration.

Keep your OpenAI client and your code. One line points it at the EU, and the record starts writing itself.

Before

Your data leaves the EU, and nothing is written down.

client = OpenAI(
api_key=os.environ["OPENAI_API_KEY"],
)

What your auditor gets

no record

You write the risk assessment yourself, from memory.

With Akumi

EU-resident by default, and a record of every call.

client = OpenAI(
base_url="https://api.akumi.eu/v1",
api_key=os.environ["AKUMI_API_KEY"],
)

What your auditor gets

  • 09:41:02chat.completionseu-west-1Logged
  • 09:41:04pii.pseudonymizeeu-west-1Logged

Hand compliance the log, not a risk assessment.

Start here

Ship the AI feature legal already approved.

Three ways in, one key, one audit trail. Pick the door that fits.

  • Akumi Platform

    In service

    An OpenAI-compatible API and nine services you switch on per request. Swap one URL and start.

    Start free →
  • Akumi Chat

    In preview

    Private AI chat for your whole team. Same platform, same audit trail.

    Join the waitlist →
  • Akumi Code

    In preview

    Recall over every PR, issue and decision, for your coding agent.

    Join the waitlist →