Official Game Developer Integration
For a game's own developer or team who wants to serve their game's AyakaMods mods inside their game client, launcher, or tooling. Your key is scoped to your game only.
Getting a key
- Register your game on AyakaMods through the developer game flow (agreement -> profile -> tags -> content settings -> platforms -> submit).
- Staff review and approve it.
- On approval you are issued a game-scoped API key (read-only by default:
mod:read+game:read). Write access is a manual upgrade. - Manage the game and its key from your Developer Dashboard (edit profile, manage team, regenerate key).
Your key only ever sees your game's mods. A direct lookup of any other game's mod returns 403.
Need a player to log in or register inside your launcher (to post a review, favorite a mod, etc. as themselves)? Your API key does not do that - see OAuth2 in Authentication.
What you build vs what we provide
| You build (client side) | AyakaMods provides |
|---|---|
| Mod loader + stacking in your engine | Hosting, virus scanning, versioning |
| Entitlement / ownership check | Scoped REST API + download URLs |
| In-game mod UI | Categories, tags, reviews, updates |
There is no engine plugin to install - you call the REST API from your engine's HTTP layer. This is the same position a custom-engine developer is in on AyakaMods (their Unreal/Unity plugins do not apply to a custom engine; you use the raw API there too).
Client-side-only / live-service note
If your game is a live-service title and mods must stay client-side (cosmetics, UI, renderer tweaks - no gameplay or server-authoritative changes), that is enforced on your side: your loader whitelists mod types, and your client verifies entitlement before enabling the mod manager. See Ownership & anti-piracy.
The mod manifest (recommended)
Ship a small JSON manifest per mod so your loader knows how to stack it. This mirrors how AyakaMods recommends a per-mod manifest generated by upload tooling:
{
"id": "ember.hud.minimal",
"name": "Minimal HUD",
"version": "1.2.0",
"type": "ui",
"engine_min": "1.0.0",
"requires": ["ember.core.uikit@^1.0"],
"conflicts": ["ember.hud.classic"],
"entry": "hud/minimal.mod"
}
type(ui|cosmetic|renderer) - your loader whitelists client-safe types.requires- drives load order (a dependency loads before its dependents, recursively - same model AyakaMods uses).engine_min- gate against your engine version.
MCP
Point Claude (or any MCP client) straight at your game's mods with the MCP server.