skillfed

warrant

Python class to integrate Boto3's Cognito client so it is easy to login users. With SRP support.

warrant v0.6.1 96.7K downloads/30d#13,200 on PyPI473
Permissive license Apache License 2.0 Abandoned released

What it is and what it does

Warrant is a Python wrapper around AWS Cognito user management, designed to simplify common authentication and user administration tasks. It provides a Cognito class that encapsulates operations like user registration, login (with SRP support), password reset, profile updates, and token handling, alongside an AWSSRP utility for Secure Remote Password authentication.

The package has no runtime dependencies and installs cleanly, but it is no longer maintained. Its last release was in December 2017 and the repository shows no commits since November 2022. It explicitly targets Python 2.7 and 3.6, both of which reached end-of-life years ago. While the code may still run on newer Python versions, there is no active support or testing to confirm compatibility, and any breaking changes in boto3 or AWS Cognito's API would not be addressed.

Use it for:

  • Build a Python web application that needs to authenticate users against an AWS Cognito user pool without writing raw boto3 calls.
  • Implement user self-service operations like password reset, profile updates, and email verification in a legacy Python 2.7 or 3.6 codebase.
  • Perform admin operations on Cognito user pools, such as listing users or groups, from a Python backend.
  • Integrate Cognito SRP authentication into a client application to avoid sending passwords in plain text.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Warrant wraps AWS Cognito user management operations into a Python class, handling user registration, authentication, password reset, profile updates, and token management.

No. While the package has no known vulnerabilities and installs without friction, it is abandoned and targets obsolete Python versions (2.7, 3.6). Modern AWS Cognito development should use boto3 directly or a maintained wrapper. Only consider it if you are maintaining legacy code already locked to Python 2.7 or 3.6 and cannot migrate.

Install

warrant on PyPI

pip

pip install warrant

uv

uv add warrant

poetry

poetry add warrant

Installing warrant

Before you install

Installation is frictionless with no runtime dependencies. However, the package is abandoned—last commit was 2022-11-07 and latest release 2017-12-11. It targets Python 2.7 and 3.6, both long out of support, so compatibility with modern Python versions is uncertain.

License in practice

Licensed under Apache License 2.0 (permissive), which allows commercial and private use with minimal restrictions, though you must include a copy of the license and state significant changes.

Quickstart

pip install warrant

from warrant import Cognito

u = Cognito('your-user-pool-id', 'your-client-id', username='bob')
u.authenticate(password='bobs-password')

Requires AWS Cognito user pool and client credentials; package targets Python 2.7 and 3.6, which are no longer supported.

Verify before relying

  • Whether the package works reliably with Python versions newer than 3.6
  • Current compatibility with modern versions of boto3 or AWS SDK dependencies
  • Whether SRP authentication still functions with current AWS Cognito API

Package facts

License Apache License 2.0 (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance abandoned — 3,168 days since the last release
Last repo commit
First released
Downloads 96,697/month — #13,200 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: warrant-0.6.1-py2.py3-none-any.whl

Keywords: aws

Environment :: Web EnvironmentProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.6Topic :: Software Development :: Libraries :: Python Modules

Tags

aws cognito python wrappercognito user authenticationaws cognito client librarycognito srp authenticationpython cognito integrationaws identity management pythoncognito user pool management
aws-cognitoabandonedlegacy-python

More Python Modules packages