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: https://api.league-of-data-base.com

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…" \
  "https://api.league-of-data-base.com/v1/trends/champions?range=30d"

curl -H "X-Api-Key: lodb_votrecle…" \
  "https://api.league-of-data-base.com/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

OfferPriceVolumeRate limit
Free0 €500 req/month10 req/min
Pack S5 €5 000 requests60 req/min
Pack M10 €10 000 requests60 req/min
Pack L20 €20 000 requests60 req/min
Monthly5 €/month15 000 req/month120 req/min
Monthly+15 €/month45 000 req/month120 req/min
Annual48 €/year20 000 req/month300 req/min
Annual+144 €/year60 000 req/month300 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.

Create my key