Coder Social home page Coder Social logo

icodein / magic-admin-python Goto Github PK

View Code? Open in Web Editor NEW

This project forked from magiclabs/magic-admin-python

0.0 2.0 0.0 68 KB

Magic admin Python SDK makes it easy to leverage Decentralized ID tokens to protect routes and restricted resources for your application.

Home Page: https://docs.magic.link/admin-sdk/python

License: MIT License

Python 98.14% Makefile 1.86%

magic-admin-python's Introduction

Magic Admin Python SDK

<MagicHQ>

The Magic Admin Python SDK provides convenient ways for developers to interact with Magic API endpoints and an array of utilities to handle DID Token.

Table of Contents

Documentation

See the Magic doc!

Installation

You can directly install the SDK with:

pip:

pip install magic-admin

conda:

conda install magic-admin

Prerequisites

  • Python 3.6

Note: This package has only been tested with Python 3.6. Python 3.7 and Python 3.8 have not been tested yet. We will get to it very soon. Support for Python 2.7+ will not be actively worked on. If you are interested using this package with earlier versions of Python, please create a ticket and let us know :)

Quick Start

Before you start, you will need an API secret key. You can get one from the Magic Dashboard. Once you have the API secret key, you can instantiate a Magic object.

from magic_admin import Magic

magic = Magic(api_secret_key='<YOUR_API_SECRET_KEY>')

magic.Token.validate('DID_TOKEN')

# Read the docs to learn more! ๐Ÿš€

Optionally if you would like, you can load the API secret key from the environment variable, MAGIC_API_SECRET_KEY.

# Set the env variable `MAGIC_API_SECRET_KEY`.

magic = Magic()

Note: The argument passed to the Magic(...) object takes precedence over the environment variable.

Configure Network Strategy

The Magic object also takes in retries, timeout and backoff_factor as optional arguments at the object instantiation time so you can override those values for your application setup.

magic = Magic(retries=5, timeout=10, backoff_factor=0.03)

Development

We would love to have you contributing to this SDK. To get started, you can clone this repository and create a virtualenv.

make development

This will create a virtualenv for all the local development dependencies that the SDK will needs.

Once it is done, you can source the virtualenv. It makes your local development easier!

source virtualenv_run/bin/activate

To make sure your new code works with the existing SDK, run the test against the current supported Python versions.

make test

To clean up existing virtualenv, tox log and pytest cache, do a

make clean

This repository is installed with pre-commit. All of the pre-commit hooks are run automatically with every new commit. This is to keep the codebase styling and format consistent.

You can also run the pre-commit manually. You can find all the pre-commit hooks here.

pre-commit run

Please also see our CONTRIBUTING guide for other information.

Changelog

See Changelog

License

See License

magic-admin-python's People

Contributors

fyjen avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.