How to get email from twitter user using OAuthTokens


how to get email from twitter user using OAuthTokens

How to get email from Twitter Api

The API won’t return an email address to you. If you’re interested in a user’s email address, you’ll have to ask the user for it within your own application as a completely distinct act.


Are there any plans to support the requesting of the email of the user in the future?

I know it’s currently a distinct act, but that’s a royal pain. It means developers have to build a lot of facilities for each application (set email address, activate it, change it), and the biggest problem: making sure the activation email survives the complicated mine field that is the spam filters of several email services, each behaving differently.

Other popular signin APIs, like that of Facebook and Google, do support asking for the user’s email as a seperate permission. Given the pain of building this ourselves, and given that we want to provide a consistent signin experience (for those apps allowing multiple login methods), I think there’s a strong case for this in the Twitter API, in the end it’s a user choice to allow it or not.

What do you think? Any plans to include this?


There are no plans at this time to include it.

Both Facebook and Google are predicated on actual identity – email address makes a lot of sense there. Twitter is less firmly attached to real-world identity – once could say the email address associated with an account is more of a formality than anything else, not a piece of information that’s necessarily attached to the identity of the account or its owner.


This is a sad problem especially for my website logins. This is the solem reason why I don’t put “Login with Twitter” among Facebook, Windows Live and Google Logins. I need my website users to be real, not some spammer account who has not got an email verified and checkable. No, I don’t really care if they are real Identities, I just want a human is controlling them after they register. I don’t send emails to my users but it is yet another way for a controlled enviroment.

If I just put “Login with Twitter” and request email on my application, that would be “Login Twitter” -> Go check your email -> Verify it first to “register”… Even though it is possible, much longer process and not different than normal login… Also since they will be unverified member, I will not store their profile picture also.

Also I can not be sure if the same email used for registration to Twitter to prevent double registration etc.

It’s too much pain, add Oauth 1.0 registration pains instead of Oauth 2.0 “code” queries, its definitely raises question “worth the effort?”

Would be sweet if email_verified and email sections in API ofcourse with permission of user on Authentication dialog…


Perhaps twitter could supply a hash of the user’s password, which could then be checked against existing the hash of emails belonging to existing accounts. This would at least solve that part of the problem (identifying users who login in multiple ways).


Sorry, I meant “hash of the user’s email”


I like your suggestion, it kind of solves the uniqueness limbo, but it still leaves the sites with a separate process to get user’s email - and then get it verified too.
Why cannot Twitter do what FB does - just ask the user if they are willing to share the email or not?


I agree With @seetharama–>" Why cannot Twitter do what FB does - just ask the user if they are willing to share the email or not?"


What’s the point of allowing a user to Sign into a webapp using twitter if you can’t even have his email address.
In my opinion the main point of any “Signin process” is to get the user’s email address.
All Saas based services need email to communicate with their users.
In that case it’s better to ‘force’ users to fill a classic Sign up form than logging in with twitter.


Pure stupidity not allowing this feature… They could say this from the very beginning instead of making developpers losing time!!


Yes, obviously what’s the point to have a single sign on using twitter if we are not going to get user email address, in case if we would like to communicate with user after he logs in to my website :frowning:


Very dissapointed about this - it will probably be a deal breaker for us regarding integration, and we’ll end up supporting only Google and Facebook.


i put twitter out of my login support.
that’s what we have to do.


without email address access, I too have to take out twitter integration.


I dont know why they are providing this facility with out permission to access the user mail…twitter…can you hear me???


How have developers solved the problem of someone creating an account through normal sign in procedures (not through OAuth) and then that same individual signing in with Facebook (and the Facebook account is using a different e-mail address from the e-mail address they originally signed up the account with) Wouldn’t that then create duplicate accounts creating the same problem with the Twitter OAuth API?


Like many others we require email as it’s the only common notification system across oAuth providers.

Please could we get an extended permission to return an email address like all of the other providers do (Facebook, Live, Yahoo)?

We’re going to have to go out of our way to code an additional page and bother the user to type in their email on Twitter auth otherwise. This will put our Twitter integration back a little (and probably lower conversion rates when authorising with Twitter).

Many thanks,
Tom Gallagher


It is not a problem with those trying to hack, but a problem with the service providers and others who claim they have made it and are yet stealing from the down trodden. Let’s leverage the internet world to make it a clean place to do business. The world is losing out just because of the greed of a few in the advanced countries. The social media is an individual issue and therefore any attempt to try to monopolise anything will trigger off;.


1 day wasted integrating Twitter just to find out I have to ask the Twitter user to verify a twitter verified email adress! EPIC FAIL! :double_facepalm: