API · /duolingo-api

Duolingo Profile & Streak API

healthy 4,628 Subscribers

Live public profile and language-learning stats from Duolingo, the world's largest language-learning platform — no key, nothing stored. This is the gamified-learning social view: a learner's XP, daily streak, courses and progress, distinct from every other social platform in the catalogue. The user endpoint returns a profile summary — display name, bio, location, join date, total XP, the current daily streak, the language being learned and the from-language, the current course, Super/Plus status and a course count. The courses endpoint returns the per-language breakdown: every course the learner studies with its title, learning and from languages, XP earned and crown count. The streak endpoint returns the streak detail — the current streak length and, when the learner makes it public, the streak start date and longest streak. Lookup is by username; the official mascot account "duo" is always available. Build streak widgets, learning-accountability bots, language-club leaderboards and profile cards on top of real Duolingo data. Private or non-existent usernames return a clean 404.

api.oanor.com/duolingo-api
Get an API key Try in playground → Contact provider

Machine-readable spec so AI agents can integrate this API.

/api/duolingo-api/openapi.json
/api/duolingo-api/llms.txt

Discovery: GET /api/index.json lists every API.

API health

healthy
Uptime
100.00%
Server probes · 24h
Avg latency
853 ms
Server probes · 24h
Subscribers
4,628
active
Total calls
0
last 7 days
status Full status page → · 4 probes/24h

Pricing

Pick a tier — billed monthly, cancel anytime.

Free

Free

  • 18,000 calls / month
  • 3 requests / second
  • Hard cap (429 above quota, no overage)
  • 18k calls/month
  • 3 req/sec
  • All endpoints
  • No credit card
Sign in to subscribe

Starter

€6.50 /month

  • 260,000 calls / month
  • 10 requests / second
  • Hard cap (429 above quota, no overage)
  • 260k calls/month
  • 10 req/sec
  • Email support
Sign in to subscribe

Pro

€18.90 /month

  • 1,050,000 calls / month
  • 25 requests / second
  • Hard cap (429 above quota, no overage)
  • 1.05M calls/month
  • 25 req/sec
  • Priority support
Sign in to subscribe

Scale

€42.00 /month

  • 3,800,000 calls / month
  • 55 requests / second
  • Hard cap (429 above quota, no overage)
  • 3.8M calls/month
  • 55 req/sec
  • Dedicated SLA
Sign in to subscribe

Built by

Related APIs

Other APIs with overlapping tags.

ProtonDB Steam Deck & Linux Compatibility API

Live Linux and Steam Deck compatibility plus popularity for Steam games, from the public ProtonDB and Steam feeds — no key, nothing stored. The "can I play it on Linux / Steam Deck, and is anyone playing it" view of a game: the crowd-sourced ProtonDB compatibility tier together with the live concurrent-player count, distinct from the other game and platform APIs in the catalogue. The game endpoint returns a full picture for a title — its Steam name, genres and release date, the ProtonDB compatibility tier (platinum, gold, silver, bronze or borked) with the community confidence, score and report count, the trending and best-reported tiers, and the live player count. The search endpoint resolves a game name to its Steam app id and other matches, so you can find the id to query. The players endpoint returns just the live concurrent-player count for a game. Build Steam Deck compatibility checkers, Linux gaming dashboards, "is it playable" widgets and game-popularity trackers on top of real ProtonDB and Steam data. Look up a game by Steam app id (appid=1245620) or by name (name=elden ring); ProtonDB tiers run from platinum (flawless) down to borked, and player counts are live.

api.oanor.com/protondb-api

MyAnimeList Community Stats API

Live anime community stats from MyAnimeList, the world's largest anime and manga community, via the public Jikan feed — no key, nothing stored. The MAL community view: a title's MAL score, member counts, ranking and the full engagement breakdown of how the community is watching it, distinct from the other anime platforms in the catalogue — MyAnimeList has its own score, its own millions-strong community and its own rankings. The anime endpoint returns a title snapshot: the MAL score, how many users scored it, its rank and popularity rank, total members, favourites, airing status, episode count and year. The stats endpoint returns the community engagement breakdown — how many users are watching, completed, on-hold, dropped or plan-to-watch — plus the full 1–10 score distribution with vote counts and percentages, and computed completion and drop rates. The top endpoint returns the top-ranked anime, by score or filtered by airing, upcoming, popularity or favourites. The season endpoint returns the anime airing this season ranked by member count. Build anime trackers, recommendation widgets, seasonal-airing dashboards and community-sentiment tools on top of real MyAnimeList data. Look up a title by its MAL id (try id=52991, Frieren).

api.oanor.com/myanimelist-api

AtCoder Rating & Contest API

Live competitive-programming rating data from AtCoder, the largest Japanese competitive-programming platform, over its public rating-history feed — no key, nothing stored. This is the contest-rating social view for a coder: their AtCoder rating, colour tier, contest record and performance over time, distinct from the other competitive-programming and developer platforms in the catalogue — AtCoder runs its own AGC/ABC contests, its own rating system and its own community. The user endpoint returns a profile snapshot: current rating, peak rating, the AtCoder colour tier (gray, brown, green, cyan, blue, yellow, orange, red), the number of rated contests, the best placing, the best performance and the latest contest. The history endpoint returns the full per-contest rating timeline — each contest with its date, old and new rating, the rating delta, placing, performance and whether it counted as rated. The stats endpoint aggregates a coder's record: rated versus unrated contests, average and best performance, contest wins, podium finishes, the rating range and per-year activity. Build coder leaderboards, rating cards, contest-tracking bots and recruiting signals on top of real AtCoder data. Lookup is by handle; the legendary handle "tourist" is always available.

api.oanor.com/atcoder-api

Civitai AI Models API

Live data from Civitai, the largest community for sharing AI image-generation models — Stable Diffusion checkpoints, LoRAs, embeddings, VAEs and more — served from the public Civitai API, no key, nothing stored. This is the AI-art creator-platform cut: which models the community is downloading and rating, who makes them and how each one is engaged with. The models endpoint lists and searches models by name, type and base model, sorted by downloads, rating, likes or newest, each with its creator, tags and engagement (downloads, thumbs-up, comments). The model endpoint returns a single model in full — its description, full stats, tags, base models, version count and commercial-use permissions. The creators endpoint lists the platform's model creators with their model counts. By default only safe-for-work models are returned; pass nsfw=true to include adult content. Track the AI-art model meta — what the community is building and downloading right now — as live JSON. This is the AI-model-community cut — distinct from the general ML-model-hub, the image-generation and the price/market APIs in the catalogue.

api.oanor.com/civitai-api

Frequently asked questions

Quick answers about pricing, quotas, and integration.

How do I get an API key for Duolingo Profile & Streak API?
Sign up for free at oanor.com, generate an API key from the developer dashboard, and call Duolingo Profile & Streak API with the x-oanor-key header. No credit card needed for the free tier.
What's the rate limit for Duolingo Profile & Streak API?
Free tier allows 1 request per second. Paid plans scale up to 50 requests per second on the Mega tier. Hard limits return HTTP 429 above the quota — no surprise overage charges.
How much does Duolingo Profile & Streak API cost?
Duolingo Profile & Streak API has a free tier with 100 calls / month. Paid plans start at €6.50 / month with higher quotas and faster rate limits.
Can I cancel my subscription anytime?
Yes. Plans are billed monthly and you can cancel anytime from your billing dashboard. No long-term contracts and no cancellation fee.
Is Duolingo Profile & Streak API GDPR-compliant?
All requests to Duolingo Profile & Streak API go through our EU-based gateway. Your upstream API key never leaves our server and no personal data is shared with the upstream provider beyond the request you send.

Pick an endpoint from the list on the left to see its details and try it.

Code snippets

Sign up to get an API key, then call any path under your slug.

curl https://api.oanor.com/duolingo-api/SOME_PATH \
  -H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/duolingo-api/SOME_PATH", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/duolingo-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
    "https://api.oanor.com/duolingo-api/SOME_PATH",
    headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())

Ratings

Sign in to rate.

No reviews yet.

Discussion

Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.

Sign in to start a thread or reply.

Sign in

New thread

/ 4000

📌 Pinned 🔒 Locked

·

· ·

/ 4000

🔒 This thread is locked — no new replies.

  • No threads yet — start the discussion.

Support

Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.

Sign in to open a support ticket.

Sign in

Open new ticket

Describe what you need help with. The provider team gets an email and replies on the ticket page.

  • No tickets yet for this API.

Subscription active — calls can start immediately.

Send your first request —

Subscription active — copy a snippet and fire off your first call.