Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Drop-in App Engine OAuth client handlers for many popular sites.

Project description

https://raw.github.com/snarfed/oauth-dropins/master/oauth_dropins/static/oauth_shiny_128.png https://circleci.com/gh/snarfed/oauth-dropins.svg?style=svg https://coveralls.io/repos/github/snarfed/oauth-dropins/badge.svg?branch=master

This is a collection of drop-in Google App Engine request handlers for the initial OAuth client flows for many popular sites, including Blogger, Dropbox, Facebook, Flickr, Google+, IndieAuth, Instagram, Medium, Twitter, Tumblr, and WordPress.com.

Quick start

Here’s a full example of using the Facebook drop-in.

  1. Install oauth-dropins into your App Engine app.
  1. Put your Facebook application’s’s ID and secret in two plain text files in your app’s root directory, facebook_app_id and facebook_app_secret. (If you use git, you’ll probably also want to add them to your .gitignore.)
  1. Create a facebook_oauth.py file with these contents:
from oauth_dropins import facebook
import webapp2

application = webapp2.WSGIApplication([
  ('/facebook/start_oauth', facebook.StartHandler.to('/facebook/oauth_callback')),
  ('/facebook/oauth_callback', facebook.CallbackHandler.to('/next'))]
  1. Add these lines to app.yaml:
- url: /facebook/(start_oauth|oauth_callback)
  script: facebook_oauth.application
  secure: always

Voila! Send your users to /facebook/start_oauth when you want them to connect their Facebook account to your app, and when they’re done, they’ll be redirected to /next?access_token=... in your app.

All of the sites provide the same API. To use a different one, just import the site module you want and follow the same steps. The filenames for app keys and secrets also differ by site; appengine_config.py has the full list.

Project details


Release history Release notifications

This version
History Node

1.12

History Node

1.11

History Node

1.10

History Node

1.9

History Node

1.8

History Node

1.7

History Node

1.6

History Node

1.5

History Node

1.4

History Node

1.3

History Node

1.2

History Node

1.1

History Node

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
oauth-dropins-1.12.tar.gz (828.2 kB) Copy SHA256 hash SHA256 Source None Mar 24, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page