Developer API
The whole catalog as JSON: mods, versions, per-patch compatibility, dependencies, and builds. No key, no auth, CORS open. Build mod manager integrations, Discord bots, modlist tools, whatever the scene needs.
Endpoints
GET
/api/v1/patches Game patches, newest first, with the current patch flagged.
GET
/api/v1/mods Mod catalog. Params: cat, q (search), sort (popular | downloads | updated | name), limit (max 100).
GET
/api/v1/mods/{slug} One mod: description, versions with per-patch compatibility, dependencies, download URLs.
GET
/api/v1/builds Published modlists (curated and community), ranked by votes.
GET
/api/v1/builds/{slug} One build: ordered mod list with notes, versions, and download URLs.
GET
/feed.xml RSS feed of newly listed mods. Point a Discord webhook bot or feed reader at it.
Example
curl https://2077mods.com/api/v1/mods/cyber-engine-tweaks
{
"slug": "cyber-engine-tweaks",
"name": "Cyber Engine Tweaks",
"category": "framework",
"latest_version": "1.35.1",
"versions": [
{
"version": "1.35.1",
"compatibility": [{ "game_patch": "2.3", "status": "works" }],
"download_url": "..."
}
],
"dependencies": []
} Keys & rate limits
- Anonymous: 60 req/min per IP. Fine for testing and light tools.
- With a key: 300 req/min. Free, generated in your dashboard (sign in with Discord).
- Pass it as
Authorization: Bearer 2077_...,X-API-Key, or?key=. - Every response carries
X-RateLimit-LimitandX-RateLimit-Remaining; a 429 includesRetry-After. - Need more than 300 req/min? Message the team, limits are negotiable for real tools.
Ground rules
- Responses are cached at the edge for about 5 minutes; do not hammer past that.
- Hosted files exist only with author consent. Link people to download URLs; do not re-host.
- A link back to 2077mods.com in your tool is appreciated, not required.
- Breaking changes get a new version prefix; v1 stays stable.
- Need write access or webhooks? Message the team.