All Projects → magiclabs → magic-admin-python

magiclabs / magic-admin-python

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

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to magic-admin-python

logto
🧑‍🚀 Logto helps you build the sign-in, auth, and user identity within minutes. We provide an OIDC-based identity service and the end-user experience with username, phone number, email, and social sign-in, with extendable multi-language support.
Stars: ✭ 3,421 (+17005%)
Mutual labels:  identity, passwordless
privx-on-aws
PrivX - Just-in-time Access Management
Stars: ✭ 18 (-10%)
Mutual labels:  identity, passwordless
passport-magic
Magic is a Passport.js strategy that enables passwordless authentication middleware for any Express.js based application.
Stars: ✭ 35 (+75%)
Mutual labels:  identity, passwordless
magic-admin-js
Magic admin Node.js SDK makes it easy to leverage Decentralized ID tokens to protect routes and restricted resources for your application.
Stars: ✭ 62 (+210%)
Mutual labels:  identity, passwordless
git-identity.el
Manage multiple Git identities from inside Emacs
Stars: ✭ 22 (+10%)
Mutual labels:  identity
yoti-java-sdk
The Java SDK for interacting with the Yoti Platform
Stars: ✭ 13 (-35%)
Mutual labels:  identity
crowdfunding-backend
[DEPRECATED] A crowdfunding backend written with NodeJS, Apollo and PostgreSQL. Features an extensive data model, mult. payment integrations, passwordless auth, statistics and admin endpoints.
Stars: ✭ 23 (+15%)
Mutual labels:  passwordless
authentication
A framework agnostic authentication library based on PSR standards
Stars: ✭ 19 (-5%)
Mutual labels:  identity
syscoin
Syscoin is a crypto currency that is universally merge-mineable and offers a unique variety of services including decentralized identities, asset token issuance platform capabilities directly on the blockchain and trustless 0-counterparty interoptibility with the Ethereum blockchain
Stars: ✭ 152 (+660%)
Mutual labels:  identity
laravel-magiclink
Create link for authenticate in Laravel without password or get private content
Stars: ✭ 135 (+575%)
Mutual labels:  passwordless
RepositoryHelpers
📦 Extensions for HttpClient and Custom Repository based on dapper
Stars: ✭ 22 (+10%)
Mutual labels:  identity
ms-identity-javascript-react-tutorial
A chapterwise tutorial that will take you through the fundamentals of modern authentication with Microsoft identity platform in React using MSAL React
Stars: ✭ 100 (+400%)
Mutual labels:  identity
AspNetCore.Identity.Cassandra
Cassandra Storage Provider for ASP.NET Core Identity
Stars: ✭ 13 (-35%)
Mutual labels:  identity
pm-idm
IDM project management repository
Stars: ✭ 59 (+195%)
Mutual labels:  identity
Identity.Firebase
ASP.NET Identity Firebase Provider
Stars: ✭ 23 (+15%)
Mutual labels:  identity
graph-vl
Self hosted identity verification layer with GraphQL.
Stars: ✭ 25 (+25%)
Mutual labels:  identity
passwordless
Passwordless authentication server, supports OTP, WebAuthn, plan to implement TOTP and mobile biometric authentication
Stars: ✭ 34 (+70%)
Mutual labels:  passwordless
webauthn-demo
WebAuthn demo with Ionic/Angular and Spring Boot
Stars: ✭ 22 (+10%)
Mutual labels:  passwordless
Authl
A library for managing federated identity
Stars: ✭ 20 (+0%)
Mutual labels:  identity
blockchain-reading-list
A reading list on blockchain and related technologies, targeted at technical people who want a deep understanding of those topics.
Stars: ✭ 93 (+365%)
Mutual labels:  identity

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].