Regions
TrueTick runs in two regions today: NA (North America) and EU (Europe). You pick a region per server so players connect to nearby hardware for low latency.
| Region | Code |
|---|---|
| North America | na |
| Europe | eu |
Every server's game hostname is <id>.truetick.gg, regardless of region — the address itself no
longer tells you where the server runs. region (in the API response, and the region badge in the
dashboard) stays the honest way to see placement. Servers created before this address form shipped
keep resolving on their older <slug>.<region>.truetick.gg address too.
Choosing a region
Set region when creating a server (defaults to NA if omitted):
await client.servers.create({
name: "EU SMP",
ramMb: 4096,
type: "PAPER",
version: "1.21.1",
region: "eu",
});truetick servers create --name "EU SMP" --ram 4096 --type PAPER --region euPlayers in the EU connect directly to eu-smp.truetick.gg:25565 — game traffic goes straight to the
EU box, it doesn't hairpin through NA. Billing, account, and admission control stay centralized.
Reading capacity
Because TrueTick doesn't oversell, a region can be at capacity — and the API tells you honestly rather than failing a create with a cryptic error. Query per-region capacity before placing a server:
curl -H "x-api-key: $TRUETICK_API_KEY" \
https://api.truetick.gg/v1/regionsGET /v1/regions (scope servers:read) aggregates each region's available capacity — free slots,
cores, RAM headroom. GET /v1/capacity returns the node-wide snapshot. If a region is full, creating
or starting a server there returns a 429-style "at capacity" response with the count of free slots, so
you (or your agent) can fall back to the other region or retry later.
At-capacity is a feature, not a bug. An honest "no room right now" is the flip side of the no-overselling guarantee: every server that is placed gets its full reserved RAM and CPU. See Errors for handling the at-capacity response.