Overview
What PeridotID is and what it provides
PeridotID is a Gaming Identity Platform for the Peridot ecosystem. It provides Authentication, Identity, and Profile so every Peridot product shares a single user account.
What you get
- Authentication — provider sign-in with secure, rotating sessions
- Identity — a permanent PID for each user across the Antigane ecosystem (
<handle>@pid, e.g.ifal@pid) — user-chosen once, never changeable, reused, or reassigned - Profile — per-user mutable labels (
displayName,avatarUrl,locale) - Wallet — a Solana wallet address associated with the PID (record-only custody, one per PID)
- Fiat — an IDR balance per identity: DOKU Checkout top-up, internal fiat ledger, and sends to any identity (escrow/payouts)
- Apps — third-party apps with their own
client_id, origins, backend secret, fees, and escrow account
Key facts
| Fact | Value |
|---|---|
| API versioning | All endpoints are under /v1 |
| Identity ID | <handle>@pid (e.g. ifal@pid) — permanent, never changes, never reused |
| Login credentials | (provider, providerUserId) is unique; a non-null email is unique per account |
| Authentication | HttpOnly cookies (JWT access token + rotating refresh token) |
| Access token lifetime | 15 minutes |
| Refresh token lifetime | 30 days (rotated on every use) |
| Wallet | One per PID; Solana smart account + EVM counterfactuals; no key material |
| Fiat balance | Internal IDR ledger per identity; money in via DOKU Checkout |
| Fees | Global 0.1% (min Rp100, no cap) + optional per-app fee (stacks) |
| Machine auth | POST /v1/auth/token (client credentials) for app backends |
| Spec | OpenAPI 3.0 — also served by the API at GET /v1/openapi.yaml |
Next steps
- Getting started — base URLs and your first request
- Authentication — how login, refresh, and logout work
- SDK — the JavaScript SDK
- Fiat & payments — balances, top-up, sends, fees
- Apps & workspace — register apps, fees, escrow, machine token
- API reference — every endpoint, schema, and example