duolingo-dart / api-design

This is a repository of the research I've done on the Duolingo API. Analyzing and reverse engineering the Duolingo API communication.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Overview

Auth Required Method Endpoint Resource Query Parameter Body
Manifest GET https://www.duolingo.com /manifest.json - -
Version Info GET https://www.duolingo.com /api/1/version_info - -
Login POST https://www.duolingo.com /login ?login={username or email}&password={password} -
Users GET https://www.duolingo.com /2017-06-30/users /{userId} -
Overview GET https://www.duolingo.com /vocabulary/overview - -
Switch Language POST https://www.duolingo.com /switch_language - from_language, learning_language
Dictionary GET https://www.duolingo.com /api/1/dictionary_page ?lexeme_id={lexemeId} -
Subscriptions GET https://www.duolingo.com /2017-06-30/users/{userId}/subscriptions - -
Subscribers GET https://www.duolingo.com /2017-06-30/users/{userId}/subscribers - -
Follow PUT https://www.duolingo.com /2017-06-30/users/{userId}/subscriptions/{targetUserId} - csrfToken
Unfollow DELETE https://www.duolingo.com /2017-06-30/users/{userId}/subscriptions/{targetUserId} - csrfToken
Shop Items GET https://www.duolingo.com /2017-06-30/shop-items - -
Purchase POST https://www.duolingo.com /2017-06-30/users/{userId}/shop-items - itemName, learningLanguage
Friend Search POST https://www.duolingo.com /users/search - per_page, q
Hints GET https://d2.duolingo.com /words/hints/{learningLanguage}/{formLanguage} ?sentence={sentence} -
Leaderboard GET https://duolingo-leaderboards-prod.duolingo.com /leaderboards/7d9f5dd1-8423-491a-91f2-2532052038ce/users/{userId} ?client_unlocked=true -
Alphabets GET https://www-prod.duolingo.com /2017-06-30/alphabets/courses/{learningLanguage}/{fromLanguage} - -
Stories GET https://stories.duolingo.com /api2/stories ?fromLanguage={fromLanguage}&learningLanguage={learningLanguage}&illustrationFormat={svg OR png OR pdf} -
Achievements GET https://duolingo-achievements-prod.duolingo.com /users/{userId}/achievements ?fromLanguage={fromLanguage}&learningLanguage={learningLanguage} -
Forum Topics GET https://forum-api.duolingo.com /api/1/topics/list/users - -
Forum Topic GET https://forum-api.duolingo.com /topics/{topicId} - -
Forum Comment GET https://forum-api.duolingo.com /comments/{commentId} - -
Forum Comments GET https://forum-api.duolingo.com /comments ?page={page}&sort_by={new OR hot OR followed}&topic_id=null -
Search Forum GET https://forum-api.duolingo.com /api/1/searchables ?q={searchWord}&page=0&limit=20 -
Follow Forum Discussion POST https://forum-api.duolingo.com /comments/{commentId}/watch - -
Unfollow Forum Discussion POST https://forum-api.duolingo.com /comments/{commentId}/unwatch - -
Friend Recommendation GET https://friends-prod.duolingo.com /users/{userId}/recommendations - -

About

This is a repository of the research I've done on the Duolingo API. Analyzing and reverse engineering the Duolingo API communication.

License:BSD 3-Clause "New" or "Revised" License