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 mutes/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 https://support.twitter.com/articles/20171399
Replies
What impact, if any, will mutes have on site/user streams?
currently this is a REST API feature. I will check on the impact on streams and update if there are any changes.
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.
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?
Hopefully the docs are showing up for you now?
the tweets are filtered out/muted within the timeline i.e. API side.
I get access denied for those documentation pages.
Still locked out as well
sorry! caching issue... should (!) be sorted now.
@andypiper still can't view the pages.
are you able to read them if you are logged out of dev.twitter.com? are you seeing a permission issue? This is really odd... will ask the site team again.
Will mute prevent receipt of retweets of muted users?
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 https://dev.twitter.com/docs/streaming-apis/streams/user ). 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.
Not getting the muting info from the friendships 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.
Update? Still not receiving the 'muting' value in the relationship JSON response.
Hi Dennis, very sorry for the delay. Can you confirm whether you are getting the right values in the response data now? we should be available to all at this point.
Finally getting them here, but wasn't when @dennisl commented before.
ok thanks for confirming, and apologies for the issue!
Yes, it's finally working now. Thank you!
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.
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 know it's not a week but still nothing in friendships/show apigee snapshot of someone who is currently muted
https://snap.apigee.com/1owJRjq
I understand that this isn't completely useful as a response, as obviously I do have mute available to my account at the moment... but here's what I see:
twurl "/1.1/friendships/show.json?source_screen_name=artesea&target_screen_name=KirstieMAllsopp"
Response:
{
},
}
}
}
(obviously showing null instead of false/true here, because I'm not one of the users in the relationship). I also validated that it works for me with ids instead of screen_names.
We've done a small amount of work around the API this week so bear with us as we make it available to everyone, it may take a few days more.
Edited the original post to add information on Error Codes & Responses and GET friendships/lookup.
Hi! Why is the mute function not working the last couple of weeks? FYI I'm still seeing tweets from tweeps I've muted on my @connect page AFTER I've mute them/even after I've refreshed the page or log-out/re-logged in. HELP!! I don't want to block too many tweeps, as I understand Twitter discourages that.. Thanks for troubleshooting this problem for me! Cheers!
Hmm. Funny! Now it's working! ;-) Thanks! Whatever you or @twittersupport did! Cheers!