Authy API Client

authy, two, factor, authentication
pip install authy==2.2.6


PyPI version Build Status

Python Client for Twilio Authy Two-Factor Authentication (2FA) API

Documentation for Python usage of the Authy API lives in the official Twilio documentation.

The Authy API supports multiple channels of 2FA:

  • One-time passwords via SMS and voice.
  • Soft token (TOTP via the Authy App)
  • Push authentication via the Authy App

If you only need SMS and Voice support for one-time passwords, we recommend using the Twilio Verify API instead.

More on how to choose between Authy and Verify here.

Authy Quickstart

For a full tutorial, check out either of the Python Authy Quickstarts in our docs:

Authy Python Installation

Install with pip:

$ pip install authy


Download the source code and run the following command from your terminal:

$ python install

Note that you may need admin permissions to run the above commands.


To use the Authy client, import AuthyApiClient and initialize it with your production API Key found in the Twilio Console:

from authy.api import AuthyApiClient
authy_api = AuthyApiClient('your_api_key')

authy api key in console

2FA Workflow

  1. Create a user
  2. Send a one-time password
  3. Verify a one-time password


  1. Create a user
  2. Send a push authentication
  3. Check a push authentication status

Phone Verification

Phone verification now lives in the Twilio API and has Python support through the official Twilio helper libraries.

Legacy (V1) documentation here. Verify V1 is not recommended for new development. Please consider using Verify V2.


Install development dependencies with pip:

sudo pip install -r requirements.txt

To run tests:

make test


make testfile tests/<test_case_file>


Copyright (c) 2011-2020 Authy Inc. See LICENSE for further details.