Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing items/endpoints from api #1001

Open
3 of 17 tasks
jwr1 opened this issue Aug 6, 2024 · 2 comments
Open
3 of 17 tasks

Missing items/endpoints from api #1001

jwr1 opened this issue Aug 6, 2024 · 2 comments
Labels
api API related issues and pull requests enhancement New feature or request
Milestone

Comments

@jwr1
Copy link
Member

jwr1 commented Aug 6, 2024

Here's a non exhaustive list of missing items/endpoints from the API that would be quite useful.

I'll add to this list once I run into more walls.

Also, whenever I say Content, I mean: thread/microblog/post/comment.

Missing Properties

  • Tell if a user is an instance admin or global mod (should be a property in User objects): Add isAdmin and isGlobalModerator fields to user api response #1044
  • Tell if the author of Content is a mod of the magazine it was put in.
  • Tell if the signed in user has moderation capabilities over Content: Add field to all content response DTOs: canAuthUserModerate #1043
  • For single comment requests (/api/comments/{comment_id} & /api/post-comments/{comment_id}), add a property containing the original post so it can be previewed above the comment itself.
  • Get the reputation a user has (would be a property in UserResponseDto).
  • Notification id from the push notification payload

Missing Endpoints

  • List the activities of Content (meaning who upvoted and boosted)
  • Filter magazines by abandoned (this could just be another filter on the already existing /api/magazines endpoint).
  • Request to become mod of a magazine
  • Request to become owner of abandoned magazine
  • View, accept, and deny magazine mod requests
  • List the magazines a user is a mod of
  • Tell what Content a user has boosted
  • A combined overview of a person's Content, just like how Mbin profile pages combine their threads, microblogs, and comments together in one tab.
  • Retrieve threads, posts, comments, users, magazines, etc. by their ActivityPub ID (wouldn't necessarily have to include users and magazines, though, just here for completion's sake).

Current issues

  • The PUT /api/moderate/magazine/{magazine_id} route (edit magazine) does not let you provide an empty description: Fix min length issues for magazine description and rules #1245
  • The new_signup notification type is undocumented and the payload does not include the related user. Here's an example object: {notificationId: 4672484, status: new, type: new_signup}, that's it.

If you need help deciding exactly how to implement some of these, I'd be willing to give examples (also taking inspiration from Lemmy).

@jwr1 jwr1 added enhancement New feature or request api API related issues and pull requests labels Aug 6, 2024
@BentiGorlich
Copy link
Member

Could you split the list in

  1. missing items
  2. missing endpoints

Because I don't really know for which of these a dedicated endpoint might make sense

@trinitronx
Copy link

trinitronx commented Mar 1, 2025

Related idea: Implement Lemmy-compatible API endpoints for clients to use.

This would open the possibility for already existing clients to login to an Mbin instance account (e.g. Use smartphone clients like Mlem or Voyager to login to fedia.io and other Mbin instances)

Mlem has stated interest, but noted that Lemmy-compatible API would make it easier. The rationale for not giving priority on implementing this on their side is Mbin & Kbin having less active users, but it's a bit of a "chicken and egg" issue. That is to say: Mobile client support would be a precursor to more active users, but their reasoning for not working to add Mbin-specific support is based on not enough users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api API related issues and pull requests enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants