Authy
Bindings for the Authy two factor web service
Usage
Please see the Documentation for more details.
You will need your API key for your application on authy.com.
Be sure to add the authy crate to your Cargo.toml
:
[dependencies]
authy = "*"
'low-level' Usage example:
extern crate authy;
use authy::{Client, AuthyError};
use authy::api::user;
fn main() {
let api_url = "https://sandbox-api.authy.com";
let api_key = "bf12974d70818a08199d17d5e2bae630";
let c = Client::new(api_url, api_key);
let country_code = 1;
let email = "user@domain.com";
let phone = "949-555-1234";
let (_, user) = user::create(&c, email, country_code, phone, true).unwrap();
println!("We have a user: {:#?}", user);
let code = "000000"; match user::verify(&c, user.id, code) {
Ok(_) => println!("Congrats on being validated!"),
Err(AuthyError::UnauthorizedKey(e)) => println!("Token provided by the user was wrong"),
Err(e) => println!("Some server error: {:?}", e),
};
user::sms(&c, user.id, true, Some("login"), Some("Authy documentation example login")).unwrap();
}
'high-level' Usage example:
extern crate authy;
use authy::{Client, User};
fn main() {
let api_url = "https://sandbox-api.authy.com";
let api_key = "bf12974d70818a08199d17d5e2bae630";
let c = Client::new(api_url, api_key);
let country_code = 1;
let email = "user@domain.com";
let phone = "949-555-1234";
let mut user = User::create(&c, email, country_code, phone, true).unwrap();
println!("We have a user: {:#?}", user);
let code = "000000"; if user.verify(&c, code).unwrap() {
println!("Congrats on being validated!");
}
user.sms(&c, true, Some("login"), Some("Authy documentation example login")).unwrap();
}