Crux - Documentation
The interactive API explorer above requires JavaScript. Below is a JS-free index of the same specification, which is published at /openapi/v1.yaml.
SDK Quickstarts
- All SDKs index - Unity, Godot, JavaScript, Roblox. All MIT licensed.
- JavaScript:
npm install crux-sdk, then CruxClient.forPlayer(baseUrl, projectId, environmentId, apiKey), await crux.loginAnonymous(), await crux.setPlayerDocument(crux.playerId, "profile", value).
- Godot 4: copy the addon into
res://addons/crux/ and autoload it as Crux, then Crux.init_player(base_url, project_id, environment_id, api_key), await Crux.login_anonymous(), await Crux.set_player_document(player_id, "profile", value).
- Unity:
ServerToolkitClient.ForPlayer(baseUrl, projectId, environmentId, apiKey), await LoginAnonymousAsync(), await SetPlayerDocumentAsync(playerId, "profile", valueJson).
- Roblox (server-side):
Crux.init(projectId, serverToken, environmentId), then Crux:GetDataStore(name) or Crux:SubmitScore(...). Note that matchmaking is not usable from this SDK: the queue endpoints identify the player from the token, and this SDK authenticates as a server.
API Reference Sections
These are the sections in the published specification. Anything not listed here is not part of the documented HTTP API today.
- Player Auth - anonymous login, email register and login, token refresh, logout, guest upgrade, email verification, password reset, and Google / GitHub / Discord sign-in.
- Player Documents - per-player JSON documents by key, plus batch read and batch write. This is where saves and profiles live.
- Project Documents - environment-wide JSON shared by every player. Keys beginning
server: are readable only with a server token.
- Stats - named integer counters the backend owns, per player. Reads are open to the player; writes need a server token.
- Achievements - a catalogue, optionally bound to a stat and a threshold. Bound achievements unlock in the same transaction as the stat write that earns them.
- Leaderboards - create boards, submit scores, read top pages, read a single player's standing, and read entries. Boards are addressable by UUID or by the key you gave them.
- Economy - currencies, virtual items, per-player balances and balance adjustments.
- Social - friends, pending requests and blocks.
- Matchmaking - queue by game mode and region, poll for a match, and report a match started or completed. A formed match is placed on a live server from your registry.
- Matchmaking Admin - dashboard-credential views over the live queue and formed matches: inspect and purge queue entries, inspect, cancel or force-form a match.
- Servers - register, heartbeat, deregister, and browse. Only servers with a current heartbeat are returned.
- Runtime - upload an immutable Godot 4 Linux dedicated-server build and request an EU session. Runtime execution is currently limited to the isolated Runtime Agent rollout.
- Live Config - versioned bundles, activated per environment.
- Generators - stored world-generator specs, rendered on demand. Renders are deterministic and never stored.
- Webhooks - outbound HTTPS callbacks. Register an endpoint per environment, pick events from the catalogue, and Crux POSTs signed JSON when they happen. Verify the
Crux-Signature HMAC, reject stale timestamps, and deduplicate on Crux-Delivery; redirects are not followed and the destination must be publicly reachable.
- Projects - projects and environments.
- API Keys - issue and revoke project API keys.
- Server Tokens - issue and revoke the tokens that authenticate trusted game servers.
- Player Moderation - player status, bans and unbans.
- Project Admin - usage summary, audit log, and admin views over player data.
- Service - the unauthenticated health endpoint uptime monitors probe.
Operational Topics
- Pricing and free-tier limits: pricing page
- Data export and the no-strand commitment: guarantee
- Self-hosted vs managed: comparison guide. The SDKs and this specification are open source; the backend itself is operated by Supercraft and self-hosting is not available today.
Need a key? Sign up free - 10,000 monthly active players included on the free tier, every feature unlocked, no credit card.