Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

generic_oauth

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

generic_oauth

generic_oauth makes it extremely simple to use any OAuth v2 API purely from the command line.

  • 0.1
  • PyPI
  • Socket score

Maintainers
1

Generic Oauth

Description

generic_oauth makes it extremely simple to use any OAuth v2 API purely from the command line. With any of the provided implementations you can get an access token in just 2 lines of code.

Typically browsers are a required component of the Oauth flow—APIs use html pages to allow users to grant permisson to third party apps to make requests on their behalf. This makes it easy for web-apps to use oauth apis, but difficult and clunkly for command-line apps to use these services.

With generic_oauth you can synchronosly generate access_tokens for any oauth api with just a few lines of code.

Implementations included:

  • Google
  • Github
  • Facebook
  • Spotify

Sample Usage

import secrets
import requests
from generic_oauth import SpotifyOAuth

# Get a spotify access_token in just 2 lines. 
o = SpotifyOAuth(secrets.client_id, secrets.client_secret, secrets.redirect_uri, secrets.scope_string)
access_data = o.get_access_code()

headers = {'Authorization': 'Bearer ' + access_data['access_token']}
r = requests.get('https://api.spotify.com/v1/me', headers=headers)
print r.json()

Documentation

OAuthWebFlowController is an abstract class responsible for handling the bulk of the oauth 2.0 web flow. To implement a handler for an OAuth api not already included, you will need to make a subclass of this class and override the authorization_url() and parse_temp_code() methods.

OAuthWebFlowController creates a temporarly local HTTP server to accept data sent to the redirect_uri. The default redirect_uri supported is http://localhost:5555. If you would like to use a different url, you will need to change the port param in the __init__ method. For example if you use http://localhost:4321, you would set port=4321.

How to include in project

TODO

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc