16.14.1 EN

Patch & language

Developers

The LeagueOfDataBase API

A REST JSON API over the site's community data: public summoner profiles, shared builds and consultation trends. Free to try, priced for real workloads.

Sign in, generate the free key, call the API — under a minute.

Authentication

Every /v1 request carries your key — format lodb_ followed by 40 hexadecimal characters — in one of two headers. Only its SHA-256 fingerprint is stored server-side: a lost key is regenerated, never recovered.

Authorization: Bearer lodb_…
X-Api-Key: lodb_…

Base URL (v1, development): http://localhost:8090 — production access will be exposed through the site's own domain via the TLS edge.

Endpoints

GET /healthz

Service health — the only route without authentication.

GET /v1/profiles/{username}

Public profile of a member: favorites and number of public builds (404 if the profile is private).

GET /v1/champions/{championId}/builds

Public builds for a champion (Data Dragon id), newest first — paginated with page and per_page (max 50).

GET /v1/trends/{type}

Most-viewed entities on the site: champions, items, runes or summoners — range=7d (default) or 30d, top 25.

GET /v1/usage

Live consumption of the calling key — authenticated and rate-limited, but never counted against the quota.

curl -H "Authorization: Bearer lodb_votrecle…" \
  "http://localhost:8090/v1/trends/champions?range=30d"

curl -H "X-Api-Key: lodb_votrecle…" \
  "http://localhost:8090/v1/usage"
{
  "plan": "free",
  "monthly_quota": 500,
  "used_this_month": 137,
  "remaining_this_month": 363,
  "credits_balance": 0,
  "rate_limit_per_min": 10
}

Quotas & rate limiting

Each request is charged to the monthly quota of your plan, then to prepaid credits; when both are exhausted the API answers 429 quota_exceeded.

Token bucket per key: every /v1 response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset; beyond the limit, 429 rate_limited.

Quotas reset with the calendar month. Annual plans carry their volume as a monthly quota (20 000 or 60 000 requests per month).

Errors

Uniform envelope on every error. Codes: unauthorized (401), forbidden (403, revoked key), not_found (404), rate_limited and quota_exceeded (429), invalid_request (400), internal (500/503).

{ "error": { "code": "rate_limited", "message": "rate limit exceeded, retry after X-RateLimit-Reset" } }

Pricing

Offer Price Volume Rate limit
Free 0 € 500 req/month 10 req/min
Pack S 5 € 5 000 requests 60 req/min
Pack M 10 € 10 000 requests 60 req/min
Pack L 20 € 20 000 requests 60 req/min
Monthly 5 €/month 15 000 req/month 120 req/min
Monthly+ 15 €/month 45 000 req/month 120 req/min
Annual 48 €/year 20 000 req/month 300 req/min
Annual+ 144 €/year 60 000 req/month 300 req/min

Credit packs: 1 € per 1,000 requests, spent after the monthly quota of the active plan, valid 12 months. Annual plans carry their volume as a monthly quota, billed yearly.

Billing & key management

Keys are created and managed from your profile; credit packs and subscriptions are paid through Stripe Checkout — the API itself never touches payment data.