Documentation
Everything you need to build, customize, and manage your LARP profile.
Getting started
From signup to a live page in a few minutes.
Create your account
Register with a username (3–20 characters, letters, numbers, and underscores) and a password of at least 6 characters. Your page goes live immediately at larp.link/yourusername.
Set your identity
In Dashboard → Overview, set a display name and bio. The display name is what visitors see; your username stays the URL.
Add links and socials
Dashboard → Links adds titled buttons in any order. Dashboard → Socials adds recognized platform icons that render automatically.
Your UID
Every account gets a permanent UID in signup order — lower numbers mean you were here earlier. It never changes and is never reused, even if an account is deleted. Hide it any time in Appearance.
Customizing your page
Appearance controls almost every pixel of your profile.
Backgrounds
Use a solid color, gradient, image, or video. Uploads go up to 50MB for backgrounds; you can also paste an external media URL instead of uploading.
Layouts and cards
Choose from centered, compact, wide, minimal, and portfolio layouts, then pick a card style — glass, solid, outline, luxury, neon, frosted, shadow, or raw.
Effects
Username effects include glitch, rainbow, typewriter, neon, glow, flicker, wave, gradient, bounce, shake, and outline. Cursor glow, particles, box tilt, and animated borders are toggled separately.
Music
Upload an audio file (up to 20MB) or embed Spotify, SoundCloud, or YouTube. Autoplay is opt-in and browsers may still require a click first.
Badges
Two kinds of badges, clearly distinguished.
Custom badges (free)
Create your own badges in Dashboard → Badges. Pick a label, an icon, and any color. They are free, instant, and cosmetic.
Awarded badges
Verified, staff, premium, OG, and similar badges are granted by administrators and cannot be self-assigned. They render distinctly from custom badges so nothing you make can imply verification.
Display options
Appearance → badge display switches between icon-only, labeled, pill, or hidden. You can also hide custom badges while keeping awarded ones visible.
Views and discovery
How your numbers are counted and where you show up.
Unique views
One view is counted per visitor location and browser fingerprint, not per page load — refreshing your own page will not inflate it.
Discover and Leaderboard
Public profiles appear on Discover, and the Leaderboard ranks by view count. Your email is never shown on either.
View counter placement
Position the counter under your name, in the footer, inside metadata, or pinned to any page corner.
Account and data
Credentials, storage, and deletion.
Passwords
Passwords are stored as salted scrypt hashes and never in plain text. Sessions use signed, HTTP-only cookies that expire after about 7 days.
Storage
Profiles persist in the configured store (Vercel Blob, Upstash Redis, or Netlify Blobs). Check /status to confirm your deployment is persisting writes.
Deleting your account
Account deletion is handled by an administrator and confirmed with a single-use token valid for 10 minutes. Contact support to start the process.
More resources
Public API
Profiles, the directory and the badge catalogue are readable as JSON. Public endpoints need no credentials; anything under /me takes a bearer token issued per account. The index lives at /api.
| GET | /api/v1/profiles/{username} | A public profile document |
| GET | /api/v1/profiles/{username}/links | The links on a profile |
| GET | /api/v1/directory | Paginated public directory |
| GET | /api/v1/leaderboard | Most-viewed profiles |
| GET | /api/v1/badges | Badge catalogue |
| GET | /api/v1/me | The token owner's account |
| PATCH | /api/v1/me/profile | Update the token owner's profile |
| GET | /api/v1/vibes | Current vibes |
Example
curl https://larp-bio.xyz/api/v1/profiles/yourname
curl https://larp-bio.xyz/api/v1/me -H "Authorization: Bearer <token>"Rate limit: 120 requests per minute, per token or IP. Errors come back as{ "error": { "code", "message" } }with the matching HTTP status.