Reddit OAuth/API Support

pr-welcome

#1

Would be awesome to log in via a Reddit Account. Would also help user login conversion rates.

Also reddit karma (for example in a specific subreddit) would transfer to Discourse users/group trust levels.


About the idea: IDENTITY = EMAIL
Ability to connect with OAuth providers when user is registered?
(Kane York) #2

Wait, do they actually provide that?


#3

http://www.reddit.com/dev/api/oauth

I think they let you access the username but not the email adresss. Could be wrong on this.

Would still be nice if people could link their reddit accounts to discourse though.


(Jeff Atwood) #4

If they don’t provide email address, it is basically useless. Email is identity to us.


#5

Posted about this on /r/redditdev and /r/ideasfortheadmins/

After not receiving answers from any Admin, I asked again in #reddit-dev on freenode.

Transcript of the discussion:

``
Any idea what I can do so my request gets answered by a reddit admin or someone in a decision-making place? See [OAuth2] Feature/API Request: Being able to see the user’s email adress. : redditdev OAuth2 Feature/API Request: Being able to access the user’s email adress. User email adress scope. : ideasfortheadmins
A reddit user’s identity is their username, not their email.

  • [kemitche] (kemitche@reddit/admins/kemitche): Keith Mitchell
  • [kemitche] @#reddit-dev
    For a identifaction service the username is not that relevant
    e.g. for Discourse
    Discourse needs an email-adress to register/identify users
    If you want to identify a person, reddit is not the sign-in system you want
    Discourse already supports google, fb, twitter, github, yahoo OAUTH login/signup
    Just reddit not because reddit wont allow email calls
    The unique identifier to a reddit account is the redditor’s username. The same email can be used for multiple reddit accounts; it’s not unique, and thus, can’t be used as an identifier on other services.
    huh, TIL
    That kinda blows, as reddit karma could have been used for user/trust groups :confused:
    Sounds like a problem with discourse, to me
    It might be a good idea to ask Discourse to support a “unique user identifier” instead of just email
    oauth2 allows for that
    Reddit OAuth/API Support :confused:
    His argument that “email is identity” is a bit silly. On first login to discourse via reddit, you’d ask for the user’s email, then, on discourse, associate the two.
    On future logins, you’d have an association of the reddit username to the “true” email.
    (On the same lines, though: emails aren’t required for reddit, so that adds another layer of complication to your goals)
    Feel free to quote us in that thread, also.
    ``
    Note: dditthardt has no cloak but referred me to reddit’s team page.

“On first login to discourse via reddit, you’d ask for the user’s email, then, on discourse, associate the two. On future logins, you’d have an association of the reddit username to the “true” email.”

Kinda sounds like Plugin Territory to me, how does the Discourse team feel about this?


Let Leaders (trust level 3) edit older posts
#6

Wouldn’t this be similar to Twitter logins?


(Kane York) #7

So, in other words: It could work, if we had the UI to add auth options while logged in.


#8

Have there been any developments in this area? I run a community/sub Reddit and we’ve reached the need to have more power and flexibility that Reddit just cannot offer. I’m already sold on using Discourse but offering Single Sign On with the users Reddit accounts would be the icing on the cake to really increase adoption.

I have to admit that i’m not a programmer but can typically google/hack my way thorough most things but building something to prompt for email addy’s while pulling the other information from Reddit sounds a bit more involved than i’m comfortable jumping into (unless there was a tutorial somewhere haha).


(Jeff Atwood) #9

Is this something you are interested in @riking? I do think Reddit offshoot communities that are more interested in true discussion (and not down voting, ordering by votes, etc) could find good use for Discourse.


(Kane York) #10

Not really. It’s not exactly the best source of identity for things that you aren’t tying directly back to Reddit.


#11

that are more interested in true discussion (and not down voting, ordering by votes, etc

This! That’s exactly what we are going for. Reddit was nice because of the user base but it isn’t the greatest when it comes to encouraging fresh discussion, on the flip side topics can’t be too old which is horrible if you’re linking threads in the sidebar.

I understand if this isn’t something we can accomplish, we’re still going with Discourse either way because the alternative (PhpBB or something) just feels way too 1990, plus we have a ton of mobile users and want the site to look professional for everyone no matter what device they’re on.


(Roland) #12

Has anyone worked on this? or given a price on a plugin? We go after reddit users all the time for our community. They are the most active we have.


(Eli the Bearded) #13

Reddit allows you to sign up without handing over an email address.

That’s a non-starter per:


#14

I just tested the Facebook Authentication on the try.discourse.org site and Facebook still works if you disallow sharing email in the Facebook Permissions dialog.
The Discourse sign-up just asks the user for their email instead of getting the email from the OAuth provider.

Discourse could still do the same thing for Reddit where it just asks the user for their email address as when the API doesn’t return an email address.

Reddit is different in that it never returns an email address where Facebook will provide an email address unless the user decides to not share it with Discourse but otherwise the handling of an OAuth provider that doesn’t return an email address seems to already be a case that is handled by Discourse.