osu-api-extended
osu-api-extended copied to clipboard
3.0.0 rewrite
Checklist of this PR
REDO: API Endpoints
- [x] GET /beatmaps/packs
- v2.beatmaps.packs.list()
- [x] GET /beatmaps/packs/{pack}
- v2.beatmaps.packs.details()
- [x] GET /beatmaps/lookup (difficulty)
- [x] GET /beatmapsets/lookup (set)
- [x] POST /beatmaps/{beatmap}/attributes (attributes)
- [x] GET /beatmaps (difficulties)
- v2.beatmaps.lookup
- [x] GET /beatmaps/{beatmap} (difficulty)
- [x] GET /beatmapsets/{beatmapset} (set)
- v2.beatmaps.details
- [x] GET /beatmapsets/discussions/posts
- v2.beatmaps.discussions.posts
- [x] GET /beatmapsets/discussions/votes
- v2.beatmaps.discussions.votes
- [x] GET /beatmapsets/discussions
- v2.beatmaps.discussions.list
- [x] GET /beatmapsets/events
- v2.beatmaps.events.list
- [x] GET /beatmapsets/{beatmapset}/download (set)
- [x] GET /osu/{beatmap} (difficulty)
- v2.beatmaps.download
- [x] POST /beatmapsets/{beatmapset}/favourites
- v2.beatmaps.actions
- [x] GET /changelog (all)
- [x] GET /changelog/{changelog} (lookup)
- v2.changelog.list
- [x] GET /changelog/{stream}/{build}
- v2.changelog.details
- [x] GET /comments
- v2.comments.list
- [x] POST /comments (create)
- [x] PUT PATCH /comments/{comment} (edit)
- [x] DELETE /comments/{comment} (delete)
- [x] POST /comments/{comment}/vote (vote)
- [x] DELETE /comments/{comment}/vote (unvote)
- v2.comments.actions
- [x] GET /comments/{comment}
- v2.comments.details
- [x] GET /forums/topics/{topic}
- v2.forums.topics.details
- [x] POST /forums/topics (create)
- [x] POST /forums/topics/{topic}/reply (reply)
- [x] PUT PATCH /forums/topics/{topic} (edit) (title)
- [x] PUT PATCH /forums/posts/{post} (edit) (body)
- v2.forums.actions
- [x] GET /search (site)
- [x] GET /beatmapsets/search (beatmaps)
- v2.search
- [x] GET /seasonal-backgrounds
- v2.assets.backgrounds
- [x] GET https://data.ppy.sh/
- v2.assets.dataFiles
- [x] GET /news
- v2.news.list
- [x] GET /news/{news}
- v2.news.details
- [x] GET /notifications
- v2.notifications.list
- [x] POST /notifications/mark-read (readed)
- v2.notifications.actions
- [x] GET /rankings/kudosu
- [x] GET /rankings/{mode}/{type}
- v2.rankings.list
- [x] GET /spotlights
- v2.spotlights.list
- [x] GET /beatmaps/{beatmap}/scores
- [x] GET /beatmaps/{beatmap}/scores/users/{user}
- [x] GET /beatmaps/{beatmap}/scores/users/{user}/all
- [x] GET /users/{user}/scores/{type}
- [x] GET /beatmaps/{beatmap}/solo-scores
- v2.scores.list
- "beatmap_leaderboard" | "beatmap_user_all" | "beatmap_user_best" | "top_scores" | "first_places" | "recent"
- v2.scores.list
- [x] GET /scores/{score}/download
- [x] GET /scores/{rulesetOrScore}/{score}/download
- v2.scores.download
- [x] GET /scores/{rulesetOrScore}/{score?}
- [x] GET /scores/{rulesetOrScore}
- v2.scores.details
- [x] GET /users/{user}/kudosu
- v2.users.kudosu.history
- [x] GET /users/{user}/beatmapsets/{type}
- v2.users.beatmaps.list
- [x] GET /users/{user}/recent_activity
- v2.users.activity.list
- [x] GET /users/{user}/{mode?}
- v2.users.details
- [x] GET /events
- v2.users.events
- [x] GET /users
- v2.users.list
- [x] GET /wiki/{locale}/{path}
- v2.wiki.details
- [x] GET /me/{mode?}
- v2.me.details
- [x] GET /friends
- v2.me.friends
- [x] GET /me/download-quota-check
- v2.me.download_quota
- [x] GET /matches
- v2.matches.list
- [x] GET /matches/{match}
- v2.matches.details
- [x] POST /chat/new (create_pm)
- [ ] POST /chat/channels (create) the same?
- [x] POST /chat/ack (keepalive)
- [x] POST /chat/channels/{channel}/messages (send)
- [x] PUT /chat/channels/{channel}/users/{user} (join)
- [x] DELETE /chat/channels/{channel}/users/{user} (leave)
- [x] PUT /chat/channels/{channel}/mark-as-read/{message} (readed)
- v2.chat.actions
- [x] GET /chat/updates
- v2.chat.updates
- [x] GET /chat/channels/{channel}/messages
- v2.chat.messages
- [x] GET /chat/channels
- v2.chat.channels.list
- [x] GET /chat/presence
- v2.chat.list
- [x] GET /chat/channels/{channel}
- v2.chat.details
- [x] POST /session/verify (verify)
- [x] POST /session/verify/reissue (reissue)
- [x] DELETE /oauth/tokens/current (delete)
- v2.session.actions
- [x] GET /rooms
- v2.rooms.list
- [x] GET /rooms/{room}
- v2.rooms.details
- [x] GET /rooms/{room}/leaderboard
- v2.rooms.leaderboard
- [ ] POST /rooms
- [x] GET /rooms/{room}/playlist/{playlist}/scores/users/{user}
- [x] GET /rooms/{room}/playlist/{playlist}/scores
- [x] GET /rooms/{room}/playlist/{playlist}/scores/{score}
still underdevelopment
- [x] PUT /rooms/{room}/users/{user}
- [x] DELETE /rooms/{room}/users/{user}
dont want to add
- [x] POST /rooms/{room}/playlist/{playlist}/scores
- [x] PUT /rooms/{room}/playlist/{playlist}/scores/{score} | PATCH /rooms/{room}/playlist/{playlist}/scores/{score}
- [x] POST /beatmaps/{beatmap}/solo/scores
- [x] PUT /beatmaps/{beatmap}/solo/scores/{token}
- [x] POST /reports
TODO: Document each function via JSDoc
Checklist:
- [x] All documentation links are valid.
- [x] All type links are valid.
- [x] All functions have a usage example.
TODO: Things to do before merging
- [x] Add user auth requirement to all
v2.chatendpoints. - [x] Remove duplicates in
v2.chat- [x]
v2.chat.listorv2.chat.channels.list
- [x]
- [x] Remove
v2.chat.listas it has been deprecated since 2022.