I thought that the table that Slavina inserted into the Toolhunt backend meeting document to be a useful way of visualizing what we needed to build. The ongoing question is how granular we want to make the endpoints, specifically those pertaining to the "grab bag" data tables on the Dashboard (# of tools, % of tools missing data, # of edits made using Toolhunt, etc.). This task is very closely related to T327101.
| Action | HTTP Verb | URL Path | Description | Comments | Status |
| --- | --- | --- | --- | --- | --- |
| Get tasks | GET | /api/task/ | Get a batch of (10?) tasks | | Awaiting review |
| Update task | PUT | /api/task/<task-id> | | Save this until OAuth is implemented | |
| Get leaderboard data | GET | api/contributions/top-editors | Get the top 30 contributors & scores between optional "start" and "end" date | start_date and end_date are query parameters | |
| Get all contributions | GET | api/contributions/ | All contributions made using Toolhunt | In case we ever want this. | Awaiting review |
| Get contributions by user | GET | api/contributions/<user> | Activity log: user's last 10 contributions | | Awaiting review |
| Get "high scores" | GET | api/contributions/scores | Usernames and corresponding scores | | Awaiting review |
| Get latest global contributions | GET | api/contributions/latest | Activity log: last 10 contributions globally | | Awaiting review |
| Get data for additional Dashboard tables | GET | api/metrics | | How granular do we want to make this? | |