New REST API endpoints for Mute functionality


Hi Developers,

We’re happy to announce that several new API endpoints are available to you, working with the new Mute feature.

The Mute API endpoints are somewhat analogous to the /blocks/ methods already available, but have quite different results. The function enables a particular user to be “muted” from the timelines of the authenticating user, rather than unfollowing or blocking them.

To mute or unmute a user you would use the POST mutes/users/create and POST mutes/users/destroy endpoints respectively. To find out whether an authenticated user is muting other users you can use the GET mutes/users/ids and GET mute/users/list endpoints. In addition, GET friendships/show and GET friendships/lookup will also now include information about whether one user is muting another. Some new error responses specific to mute have been added to Error Codes & Responses.

The Twitter web and mobile clients are starting to support this new feature, and we are excited to share these new API endpoints with the developer community for use in your own apps and tools.

We’re rolling this change out to users this week, so please try the endpoint within a few days if you do not initially have access. User-facing support information can be found on the Help Center


What impact, if any, will mutes have on site/user streams?


Looks like those documentation pages are still private, I get Access Denied.

Will the tweets be filtered API-side or just decorated in the status itself?


currently this is a REST API feature. I will check on the impact on streams and update if there are any changes.


Hopefully the docs are showing up for you now?

the tweets are filtered out/muted within the timeline i.e. API side.


Not getting the muting info from the friendships call.


Having similar gaps in returned data.
I was able to successfully mute someone I was following but nothing was returned in either friendships/show or in the user object within statuses/user_timeline to allow me to highlight people to unmute them.
I did find muting in friendships/lookup but it seems unnecessary to make a third api call.


This is being rolled out through this week so you should start to see the info (which is just the one additional “muting” field) returned shortly.


You’ll currently get the muting field in the User objects returned from the mutes API calls, and in friendships/show. I’ll clarify with the team whether we should expect to see it in all instances of the User object like statuses/user_timeline.


I’d expect a cached user object in statuses/user_timeline so it’s not a huge problem if it wasn’t there. Just not seeing it at all in friendships/show will wait a week before pushing the code live.


I get access denied for those documentation pages.


Still locked out as well


Will mute prevent receipt of retweets of muted users?


sorry! caching issue… should (!) be sorted now.


mute will filter tweets from a user from your home and mentions timelines. It will not stop someone else retweeting them and having that show up in one of those timelines.


"the tweets are filtered out/muted within the timeline i.e. API side. "

I’m not sure if i’m interpreting this correctly, does this mean we don’t need to grab a list of muted users manually just like we do with blocked users to filter them client-side? (as mentioned in ). So, for some reason streams can exclude muted users, but can’t exclude blocked ones? I’m probably wrong, since the other announcement seems to suggest this is a client-side feature.


this is not a streaming API feature at this stage, REST API only.


Does an event fire in user or site streams when a mute is created or destroyed so that we can automatically add a mute without calling the REST API for updates?


not at present. We are looking at features around mutes and streams for a future revision.


I know it’s not a week but still nothing in friendships/show apigee snapshot of someone who is currently muted