This library is no longer actively maintained. The Authy API has been replaced with the Twilio Verify API. Twilio will support the Authy API through November 1, 2022 for SMS/Voice. After this date, weβll start to deprecate the service for SMS/Voice. Any requests sent to the API after May 1, 2023, will automatically receive an error. Push and TOTP will continue to be supported through July 2023.
Learn more about migrating from Authy to Verify.
Please visit the Twilio Docs for:
Please direct any questions to Twilio Support. Thank you!
Ruby Client for Twilio Authy Two-Factor Authentication (2FA) API
Documentation for Ruby 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 Ruby Authy Quickstart in our docs:
Authy Ruby Installation
gem install authy
Usage
To use the Authy client, require the authy
gem and initialize it with our API URI and your production API Key found in the Twilio Console:
require 'authy'
Authy.api_uri = 'https://api.authy.com'
Authy.api_key = 'your-api-key'
Rails users can put this in config/initializers and create a new file called authy.rb
.
2FA Workflow
OR
Phone Verification
Phone verification now lives in the Twilio API and has Ruby support through the official Twilio helper libraries.
Legacy (V1) documentation here. Verify V1 is not recommended for new development. Please consider using Verify V2.
Demo
See the ./examples
directory for a demo CLI application that uses the Authy API.
Contributing
- Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
- Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
- Fork the project.
- Start a feature/bugfix branch.
- Commit and push until you are happy with your contribution.
- Add tests.
- Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit.
Notice: Twilio Authy APIβs Sandbox feature will stop working on Sep 30, 2021
Twilio is discontinuing the Authy APIβs Sandbox, a feature that allows customers to run continuous integration tests against a mock Authy API for free. The Sandbox is no longer being maintained, so we will be taking the final deprecation step of shutting it down on September 30, 2021. The rest of the Authy API product will continue working as-is.
This repo previously used the sandbox API as part of the test suite, but that has been since removed.
You will only be affected if you are using the sandbox API in your own application or test suite.
For more information please read this article on how we are discontinuing the Twilio Authy sandbox API.
Copyright
Copyright (c) 2011-2021 Authy Inc. See LICENSE for further details.