tumblr / docs

Tumblr's public platform documentation.
Apache License 2.0
109 stars 27 forks source link

Ability to block blogs via API #40

Closed ThisIsMissEm closed 3 years ago

ThisIsMissEm commented 3 years ago

Hi! I'm a tumblr user and developer, and one thing that would absolutely help make tumblr a safer place would be the ability to manage blocks via the API; Currently I can do this if logged in by issuing the right "internal" API calls at a reasonably rate limited speed, but I have to go one-by-one.

By allowing developers to write tools to help manage their communities on tumblr, it'll make the place safer for everyone. For instance, I've a script that blocks all blogs that follow me who lack any name/bio, lack any age in their bio (I don't wish to interact with children on tumblr), and then it'd be even helpful to be able to share and collaborate on blocklists to filter out abusive users (terfs, nazis, incels, etc).

Would it be possible to get an API to block blogs? This would enable people to take moderating their communities into their own hands, making tumblr a better place for all.

cyle commented 3 years ago

I think this is a great idea, I'll see what we can do!

ThisIsMissEm commented 3 years ago

Awesome! I think it'd be good if there was a bulk API too, e.g., block in batches;

e.g.,

POST api.tumblr.com/v2/user/block   { url: string }
POST api.tumblr.com/v2/user/unblock   { url: string }

POST api.tumblr.com/v2/user/blocks   { urls: string[] }
POST api.tumblr.com/v2/user/unblocks   { urls: string[] }

That way if someone sets up a new service to manage blocks, we're not sending N requests to block, but N/max-block-count.

ThisIsMissEm commented 3 years ago

Also curiously related: why is there no /user/followers endpoint?

cyle commented 3 years ago

Latest commit now includes the Blocks API as it currently exists: https://github.com/tumblr/docs/commit/b3b3b3842755f1f50c68353615bc70baca83f238

Awesome! I think it'd be good if there was a bulk API too, e.g., block in batches;

Yeah, this is good feedback, thanks. I can't guarantee when this'll happen, but I'll track it here and on the Changes blog.

Also curiously related: why is there no /user/followers endpoint?

🤔 I'm not sure what you mean. Users don't have followers, blogs have followers, which is why there are blog followers and blog followings endpoints.

Nmeer112 commented 3 years ago

Adding Arabic is very important. In addition to adding friends, you should make a list.

ThisIsMissEm commented 3 years ago

Adding Arabic is very important. In addition to adding friends, you should make a list.

Best to create separate issues for those ideas, instead of co-opting this issue for them.

ThisIsMissEm commented 3 years ago

🤔 I'm not sure what you mean. Users don't have followers, blogs have followers, which is why there are blog followers and blog followings endpoints.

@cyle I'm referring to these:

Screenshot 2021-03-06 at 17 10 17
cyle commented 3 years ago

Best to create separate issues for those ideas, instead of co-opting this issue for them.

☝️ please file a separate issue if you'd like, @Nmeer112

cyle commented 3 years ago

I'm referring to these:

Yeah, the /user/following endpoint is kind of just an alias for /blog/your-primary-blog.tumblr.com/following for convenience. Your "user" is not following any blogs and it doesn't have followers, your primary blog does. It's a subtle but important distinction.

ThisIsMissEm commented 3 years ago

Ah, alrighty. So, I guess I was going with a /user/blocks which is just like that /user/following endpoint; but all good!