Twitter App and Authentication

DEV allows you to authenticate using Twitter. In order to use this authentication method in local development you will need to setup a Twitter App and retrieve its keys. Then you'll need to provide these keys to the Rails application.

Sign up

  1. Sign in to your Twitter account.

  2. In order to get the API keys, you will have to apply for a developer account. Click the Apply button.

    twitter-up-1

  3. Setup your Twitter account. Be sure you have your phone number and email address filled in.

    twitter-up-2

  4. Fill in your account information and give a name to your developer account.

    twitter-up-3

  5. Write down the reasons that you want to use Twitter API. Mention DEV's community and describe the issues and tests and things that you want to work on. Copy it, you might use it later ;)

    twitter-up-4

  6. Read :) and accept the Terms and Conditions.

    twitter-up-5

  7. Verify your email address once more and you will be done.

  8. You are done.

Get API keys

  1. Sign up or sign in to your Twitter developer account.

  2. From Apps dashboard, click on Create and app. twitter-1

  3. Fill in the app name, description and URL https://dev.to.

    twitter-2

  4. Check the Enable Sign in with Twitter option and fill in the Callback URL http://localhost:3000/users/auth/twitter/callback (or whatever port you run DEV on).

    twitter-3

  5. Fill in the DEV information, Terms of Service http://dev.to/terms and Privacy policy http://dev.to/privacy.

    twitter-4

  6. Write down (or paste) the things that you will work on. Press Create.

    twitter-5

  7. Review the Twitter Developer Terms and agree to do nothing sketchy.

    twitter-6

  8. The app is all set!

  9. One more change... From the app dashboard go to Permissions and check Request email addresses from users option.

    twitter-7

  10. From the same dashboard access the Keys and tokens and change them accordingly (name of Twitter key -> name of our ENV variable):

    1
    2
    3
    4
    API key -> TWITTER_KEY
    API secret key -> TWITTER_SECRET
    Access Token -> TWITTER_ACCESS_TOKEN
    Access Token Secret -> TWITTER_ACCESS_TOKEN_SECRET

    twitter-8