# Regions

Jers runs in regions. Each region is a whole Jers: the API, every subject's memory and the GPU engine, in the same
part of the world, so a decision does not cross an ocean.

| Region | API | Status |
|---|---|---|
| `us`, United States (East) | `https://us.api.getjers.com` (also `https://api.getjers.com`) | live |
| `eu`, Europe | `https://eu.api.getjers.com` | planned |

`GET /v1/regions` on any Jers API returns this list as it is now.

## A key belongs to one region

You choose the region when you create your account at [app.getjers.com](https://app.getjers.com/#register). The key carries it (`jj_live_eu_...`), and your tenant's keys,
memories, usage and ledger stay in that region: nothing about your subjects is copied to another one. That is also
why a key works only in its own region; sent to another, the API answers `421 wrong_region` with the right address.

The SDKs and the Claude plugin read the region from the key and call the right address, so setting `JERS_API_KEY`
is enough. Set `JERS_BASE_URL` only to override that. Keys made before regions existed (`jj_live_` and 32 hex
characters) are `us` keys.

Serving users on several continents: take one key per region and send each user's decisions to the region
nearest to them. Memories do not move between regions.

## Speed

Measured in the `us` region on 2026-09-24: 71 ms end to end for a three-question decision from a server in Boston
(median of 50), of which 27 ms is the engine on its GPU. From farther away, the network adds the round trip to the
region, which is what the regions are for.
