Awesome Open Source
Awesome Open Source

Rinvex Authy

Rinvex Authy is a simple wrapper for Authy TOTP API, the best rated Two-Factor Authentication service for consumers, simplest 2fa Rest API for developers and a strong authentication platform for the enterprise.

Packagist Scrutinizer Code Quality Travis StyleCI License

Rinvex Authy

Table Of Contents


Usage is pretty easy and straightforward:

Prepare requirements

$apiKey = 'AuthySecretKey';
$httpClient = new \GuzzleHttp\Client();

Note: make sure to replace AuthySecretKey with your secret key from the installation steps.

Authy App

Create a new Authy app instance and interact with it:

$authyApp = new \Rinvex\Authy\App($httpClient, $apiKey);

$appStats = $authyApp->stats(); // Get app stats
$appDetails = $authyApp->details(); // Get app details

Authy User

Create a new Authy user instance and interact with it:

$authyUser = new \Rinvex\Authy\User($httpClient, $apiKey);

$user = $authyUser->register('[email protected]', '317-338-9302', '54'); // Register user
$userActivity = $authyUser->registerActivity($user->get('user')['id'], 'cookie_login', 'Test Data'); // Register user activity
$userStatus = $authyUser->status($user->get('user')['id']); // Get user status
$userDeleted = $authyUser->delete($user->get('user')['id']); // Delete user

Authy Token

Create a new Authy token instance and interact with it:

$authyToken = new \Rinvex\Authy\Token($httpClient, $apiKey);

$smsTokenSent = $authyToken->send($user->get('user')['id'], 'sms'); // Send SMS token
$callTokenStarted = $authyToken->send($user->get('user')['id'], 'call'); // Start automated call
$tokenVerified = $authyToken->verify(54321, $user->get('user')['id']); // Verify token

Intuitive Responses

Work Intuitively with Authy responses:

$body = $tokenVerified->body(); // Get all response body
$code = $tokenVerified->statusCode(); // Get response status code
$succeed = $tokenVerified->succeed(); // Check whether respose is a success
$failed = $tokenVerified->failed(); // Check whether respose is a failure
$message = $tokenVerified->message(); // Get response message
$item = $tokenVerified->get('item'); // Get response body item
$errors = $tokenVerified->errors(); // Get response errors

Note: All authy requests return authy response, with a unified interface for your convenience, so you can interact with all responses the same way as above.


  1. Install the package via composer:

    composer require rinvex/authy
  2. If you haven't already: Register an Authy account -> Sign in -> Access dashboard -> Create new application -> Copy your API Secret key

  3. Done! You can refer to Usage again.


  • Upgrading To v2.x From v1.x

    API implementation is 100% backward compatible, but sandbox API has been dropped since it's officially deprecated. Also note that PHP7 is now required.


Refer to the Changelog for a full history of the project.


The following support channels are available at your fingertips:

Contributing & Protocols

Thank you for considering contributing to this project! The contribution guide can be found in

Bug reports, feature requests, and pull requests are very welcome.

Security Vulnerabilities

If you discover a security vulnerability within this project, please send an e-mail to [email protected]. All security vulnerabilities will be promptly addressed.

About Rinvex

Rinvex is a software solutions startup, specialized in integrated enterprise solutions for SMEs established in Alexandria, Egypt since June 2016. We believe that our drive The Value, The Reach, and The Impact is what differentiates us and unleash the endless possibilities of our philosophy through the power of software. We like to call it Innovation At The Speed Of Life. That’s how we do our share of advancing humanity.



This software is released under The MIT License (MIT).

(c) 2016-2020 Rinvex LLC, Some rights reserved.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
php (15,954
sms (100
phone (77
twilio (49
two-factor-authentication (39

Find Open Source By Browsing 7,000 Topics Across 59 Categories