Skip to contentSkip to navigationSkip to topbar
Rate this page:
On this page

Authy Dashboard API


(warning)

Warning

As of November 2022, Twilio no longer provides support for Authy SMS/Voice-only customers. Customers who were also using Authy TOTP or Push prior to March 1, 2023 are still supported. The Authy API is now closed to new customers and will be fully deprecated in the future.

For new development, we encourage you to use the Verify v2 API.

Existing customers will not be impacted at this time until Authy API has reached End of Life. For more information about migration, see Migrating from Authy to Verify for SMS(link takes you to an external page).

The Authy Dashboard API is a way to manage and view configuration, stats, and more for your Authy Applications. Features of this API are also available via the Twilio Authy console(link takes you to an external page).


Return codes

return-codes page anchor

The following are the return codes supported by the Dashboard API.

200: Request was successful.

400: When the Request was invalid.

404: When the resource was not found.

500: Internal server error.


When the API returns a status other than 200, we add an error code in the message body. For further information, please check the error codes page(link takes you to an external page) for a complete list of possible errors.


At the moment we support JSON and XML formats.

For convenience and compatibility with old http implementations we only support the POST and GET http verbs.


Most of the end points listed in this document require a signature. Please follow the next steps to successfully sign the request:

1. Create a string variable using the url without params:


_10
url = "https://api.authy.com/dashboard/application/access_keys"

2. Create a string variable with the HTTP method in upper case (GET, POST):


_10
http_method = "GET"

3. Sort the list of parameters in case-sensitive order and convert them to URL format:

Both key and value should be URL-encoded.


_10
params = {b: "val|ue&2", a: "value1"}
_10
sorted_params = "a=value1&b=val%7Cue%262"

4. Generate a unique nonce(link takes you to an external page)

Your language of choice likely has a nonce generator library, such nonce(link takes you to an external page) in Node.js.


_10
nonce = "1427849783.886085"

5. Join nonce, http_method, url and params_in_url_format together with the | character:

Note: the string should contain exactly 3 | characters.


_10
data = nonce + "|" + http_method + "|" + url + "|" + params_in_url_format
_10
"1427849783.886085|POST|https://api.authy.com/dashboard/json/application/webhooks|a=value1&b=val%7Cue%262"

6. Hash the resulting data using HMAC-SHA256, using your api_signing_key as the key:

Get your API signing key from "Webhooks API Keys" section of the application settings tab in the Twilio Console(link takes you to an external page).


_10
digest = hmac_sha256(data, api_signing_key)

7. Base64 encode the digest:

Base64 encoding should not contain line feeds. It must be encoded as described in the RFC 4648(link takes you to an external page).


_10
digest_in_base64 = encode_in_base64(digest)

8. Make the HTTP request with specified headers

Send the digest_in_base64 in the X-Authy-Signature header

Send the nonce in the X-Authy-Signature-Nonce header.


_10
request.headers["X-Authy-Signature"] = digest_in_base64
_10
request.headers["X-Authy-Signature-Nonce"] = nonce
_10
make_request(request)



End User registered in your application.

Attributes

user-attributes page anchor
NameTypeDescription
authy_idIntegerUser identifier.
used_atDatetimeThe last date the user entered a valid code.
confirmedBooleanTrue if the user has confirmed the phone number.
country_codeIntegerCountry code of the user.
cellphoneIntegerPhone number of the user.
emailStringUser email.
last_sync_atDatetimeThe last date the user synced his Authy App.
suspendedBooleanTrue if the user account is suspended.
sms_enabledBooleanTrue if the user will be able to receive authentication codes via text message (SMS).
calls_enabledBooleanTrue if the user will be able to receive authentication codes via phone call.
statusStringUser status in the application. active, inactive, suspended, blocked, or removed.
removal_dateDatetimeReturned when the user was removed from the application.

Your Application.

NameTypeDescription
app_idIntegerSerial id of the application
api_keyStringPublic api key of the application
app_api_keyStringAdmin api key of the application
nameStringName of the application
created_atTimeThe date when the application was created.
versionIntegerVersion of the application
users_countIntegerUsers count
hard_tokens_enabledBooleanTrue if the application supports hardware tokens
suspendedBooleanTrue if the application is suspended
uses_voice_recordingBooleanTrue if the application has custom voice recordings
twilio_account_sidStringTwilio account id tied to the application

API Settings of the Application.

NameTypeDescription
welcome_message_enabledBooleanIf true a welcome message will be sent to the user when he/she is registered with Authy. True by default.
force_smsBooleanIf true the request SMS end point will always try to send the message. False by default.
force_callBooleanIf true the request Call end point will always try to start the phone call. False by default.
force_verificationBooleanIf true the user tokens are always verified even if he/she hasn't confirmed his/her phone number. True by default.
sms_enabledBooleanTrue when the application has text messages enabled. True by default.
calls_enabledBooleanTrue when the application has phone calls enabled. True by default.
call_requires_inputBooleanWhen true the phone calls asks the user to press 1 before reading the security code. True by default.
otp_lengthIntegerWithin 6 and 8. Length of the OTP code for your application.
onetouch_callback_urlStringThe url for the OneTouch callback if any.
onetouch_callback_methodStringThe http method used by the OneTouch call back (post | get) if any.
allow_custom_messagesBooleanTrue if custom messages are allowed for your application when sending SMS for OTP or Phone Verification.
tts_app_nameStringSpecify a phonetic spelling Text-to-speech (TTS) for your application name when delivering a code via phone call.
sdk_push_apn_enabledBooleanTrue when push credentials for iOS have been uploaded to let Authy manage push notifications for the TwilioAuth SDK.
sdk_push_gcm_enabledBooleanTrue when push credentials for Android have been uploaded to let Authy manage push notifications for the TwilioAuth SDK.
push_send_to_authyBooleanWhen False, OneTouch requests will not be visible in the Authy app.
push_send_to_sdkBooleanWhen False, Twilio will not send OneTouch push notifications to your app, but you can still deliver OneTouch requests and show them in your app.

UI Settings of the Application.

NameTypeDescription
custom_assetsBooleanTrue when the application has custom assets.
timer_colorHex ColorColor of the timer
circle_colorHex ColorColor of the circle timer
circle_backgroundHex ColorColor of the circle background.
background_colorHex ColorBackground color
labels_colorHex ColorLabels color
labels_shadow_colorHex ColorLabels shadow color
token_colorHex ColorColor of the security code

Key to access the dashboard API.

NameTypeDescription
_idStringId of the access key
valueString32 bytes access key (protected)
user_idIntegerId of the user
statusStringStatus of the access key. options: active, pending, suspended

Stats of your Application.

NameTypeDescription
monthStringMonth and year formatted like this: ""
api_calls_countIntegerNumber of requests performed on the API.
users_countIntegerUsers count
auths_countIntegerAuthentications count
sms_countIntegerText Messages requested.
calls_countIntegerPhone calls requested.
request_phone_info_countIntegerNumber of phone info requests.
sms_verification_countIntegerNumber of SMS verifications.
call_verification_countIntegerNumber of phone calls verifications.
check_verification_countIntegerNumber of phones verified.

User activities.

NameTypeDescription
created_atTimeThe date when the activity was created.
action_nameStringName of the action. The supported actions are: verify_token, request_sms and request_call.
user_emailStringEmail of the user that performed the activity.
user_phoneStringPhone of the user that performed the activity.

User Device like iPhone, Android, iPad.

NameTypeDescription
nameStringThe name of the device. Default name is "Default".
device_typeStringThe type of the device. The value is either: "sms", "android", "android_tablet", "ipad", "ipod", "iphone", "authy_chrome" or "unknown"
needs_health_checkBooleanWhether the Device requires health check or not.
countryStringGeolocalization's country. This can be empty.
regionStringGeolocalization's region. This can be empty.
cityStringGeolocalization's city. This can be empty.
registeredBooleanWhether the Device is registered or not.
tokenTokenThe token information.

Token information associated to the Device.

NameTypeDescription
created_atTimeThe date when the token was created.
lockedBooleanWhether the token is locked. This means the token was confirmed by the user.
last_health_check_resultBooleanWhether the health check was successful or not.
health_checked_atTimeThe date when the token was checked.

To start using the Dashboard API you first need to create an Application (if you don't have one yet) using this end-point.
It'll return you the app_api_key once and you should store it in your database since there's no way to get it later.
It'll also return the access key for the owner of the Application.
The application api key and the access key are needed to access the rest of the dashboard API end-points.
This end point doesn't require to sign the request.


_10
POST /dashboard/:format/applications


NameTypeDescription
nameStringThe name of the new Application.
integration_api_keyStringIntegration API key. Please contact sales@authy.com to get one.
emailStringThe email of the user that's creating the application.
country_codeIntegerThe country code of the user that's creating the application.
phone_numberStringThe phone number of the user that's creating the application.

NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
api_signing_keyStringKey to sign the requests.
access_keyStringAccess key of the owner User
app_idIntegerSerial id of the application.


_10
curl -d name="My New App" \
_10
-d phone_number="650-345-2233" \
_10
-d country_code=1 \
_10
-d email="sample@authy.com" \
_10
-d integration_api_key="2b132d1ec7707a5c74e42427e996b848" \
_10
"https://api.authy.com/dashboard/json/applications"

Sample response


_10
{
_10
"app_api_key": "b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339",
_10
"api_signing_key": "3xhQiaC87dlUdOGbCmCeMYSBhtUt4vtc2DaCqI1WGBvhJo",
_10
"access_key": "d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f",
_10
"api_key": "16e8a9f4ccc6982ab2b79f5d470f384a",
_10
"app_id": 13234,
_10
"name": "My New App",
_10
}


Endpoint to list all applications.
This end point doesn't require a signature.


_10
GET /dashboard/:format/applications

NameTypeDescription
integration_api_keyStringIntegration API key. Please contact sales@authy.com to get one.
include_current_statsString"true" or "false". When "true", response will include for each application "current_stats" attribute with Stats Objects of the current month.
NameTypeDescription
applicationsArrayList of application objects.

Listing all applications associated with the integration.


_10
curl "https://api.authy.com/dashboard/json/applications?integration_api_key=2b132d1ec7707a5c74e42427e996b848"

Sample response


_17
{
_17
"applications": [
_17
{
_17
"app_id": 13234,
_17
"api_key": "public_api_key",
_17
"app_api_key": "application_admin_api_key",
_17
"name": "Dashboard Test",
_17
"version": 8,
_17
"users_count": 1324,
_17
"hard_tokens_enabled": false,
_17
"suspended": false,
_17
"uses_voice_recording": false,
_17
"twilio_account_sid": "twilio_account_id"
_17
}
_17
],
_17
"count": 1
_17
}

This method doesn't require to sign the request.


Create Access Keys For Your Staff

create-access-keys-for-your-staff page anchor

This end-point is used by the admin user to add new access keys with defined privileges.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins


_10
POST /dashboard/:format/application/access_keys


NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
access_keyStringAdmin access key
roleStringRole of the access key, options: admin, collaborator, support
emailStringEmail of the user associated to the new access key.
country_codeIntegerCountry code of the user associated to the new access key.
phone_numberStringPhone number of the user associated to the new access key.

NameTypeDescription
_idStringId of the access key
valueString32 bytes access key (protected)
user_idIntegerId of the user
statusStringStatus of the access key. options: active, pending, suspended

Adding new support access key for user 23.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
-d role="support" \
_10
-d user_id="23" \
_10
"https://api.authy.com/dashboard/json/application/access_keys"

Sample response


_10
{
_10
"_id": "5081e6facaa71df429000002",
_10
"value": "02dc1efe84b1409382fd901f8b6dfd430cc9369d7e8fb0994b42aee2db2c388d",
_10
"user_id": 20,
_10
"status": "active"
_10
}


This end-point is used to see the list of access keys associated with the Application. NOTE: this end-point won't actually return the key to access the api. Basically this is used to get the id and status of the access keys.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins and collaborators


_10
GET /dashboard/:format/application/access_keys

NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
access_keyStringAdmin access key.
NameTypeDescription
access_keysArrayList of Access Key objects

Listing all access keys.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/access_keys?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_10
{
_10
"access_keys": [
_10
{
_10
"_id": "5081e6facaa71df429000002",
_10
"user_id": 20,
_10
"status": "active"
_10
}
_10
],
_10
"count": 1
_10
}


Getting a single Access Key

getting-a-single-access-key page anchor

This end-point is used to see a single access key associated with the Application. NOTE: this end-point won't actually return the key to access the api. Basically this is used to get the id and status of the access key.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins and collaborators


_10
GET /dashboard/:format/application/access_keys/:id

NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
access_keyStringAdmin access key.
idStringAccess key id.
NameTypeDescription
_idStringId of the access key
valueString32 bytes access key (protected)
user_idIntegerId of the user
statusStringStatus of the access key. options: active, pending, suspended

Get access key.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/access_keys/5081e6facaa71df429000002?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_10
{
_10
"_id": "5081e6facaa71df429000002",
_10
"user_id": 20,
_10
"status": "active"
_10
}


Used to suspend access keys preventing them from accessing the dashboard API.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins


_10
POST /dashboard/:format/application/access_keys/:id/suspend

NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
access_keyStringAdmin access key.
idStringAccess key id.
NameTypeDescription
_idStringId of the access key
valueString32 bytes access key (protected)
user_idIntegerId of the user
statusStringStatus of the access key. options: active, pending, suspended

Suspending support access key of user 23


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/access_keys/5081e6facaa71df429000002/suspend"

Sample response


_10
{
_10
"_id": "5081e6facaa71df429000002",
_10
"user_id": 20,
_10
"status": "suspended"
_10
}


Unsuspending Access Keys

unsuspending-access-keys page anchor

Used to unsuspend access keys allowing them access the API again.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins


_10
POST /dashboard/:format/application/access_keys/:id/unsuspend

NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
access_keyStringAdmin access key.
NameTypeDescription
_idStringId of the access key
valueString32 bytes access key (protected)
user_idIntegerId of the user
statusStringStatus of the access key. options: active, pending, suspended

Suspending support access key of user 23


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/access_keys/5081e6facaa71df429000002/unsuspend"

Sample response


_10
{
_10
"_id": "5081e6facaa71df429000002",
_10
"user_id": 20,
_10
"status": "active"
_10
}


Used to delete access keys (i.e. disallowing to access the API again).
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins


_10
POST /dashboard/:format/application/access_keys/:id/delete

NameTypeDescription
app_api_keyStringAPI key to access the rest of the dashboard API.
access_keyStringAdmin access key.
idStringAccess key id to be deleted.
NameTypeDescription
deletedBooleanTrue when the access key was deleted.

Deleting support access key of user 23


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/access_keys/5081e6facaa71df429000002/delete"

Sample response


_10
{
_10
"deleted": true
_10
}


Update Application Details

update-application-details page anchor

Update application general details like name and billing info.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins and collaborators


_10
POST /dashboard/:format/application/update

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
nameStringName of the application
billing_addressStringBilling address that appears in the invoice
billing_emailStringBilling email that appears in the invoice
billing_phoneStringBilling phone that appears in the invoice
NameTypeDescription
app_idIntegerSerial id of the application
api_keyStringPublic api key of the application
app_api_keyStringAdmin api key of the application
nameStringName of the application
created_atTimeThe date when the application was created.
versionIntegerVersion of the application
users_countIntegerUsers count
hard_tokens_enabledBooleanTrue if the application supports hardware tokens
suspendedBooleanTrue if the application is suspended
uses_voice_recordingBooleanTrue if the application has custom voice recordings
twilio_account_sidStringTwilio account id tied to the application

Updating name


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
-d name="New Dashboard Test" \
_10
"https://api.authy.com/dashboard/json/application/update"

Sample response


_12
{
_12
"app_id": 13234,
_12
"api_key": "public_api_key",
_12
"app_api_key": "application_admin_api_key",
_12
"name": "New Dashboard Test",
_12
"version": 8,
_12
"users_count": 1324,
_12
"hard_tokens_enabled": false,
_12
"suspended": false,
_12
"uses_voice_recording": false,
_12
"twilio_account_sid": "twilio_account_id"
_12
}


Get application general details like name and billing info.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
GET /dashboard/:format/application/details


NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
include_current_statsString"true" or "false". When "true", response will include for the application "current_stats" attribute with Stats Objects of the current month.
include_sensitive_dataString"true" or "false". When "true" (default), response will include application api keys.

NameTypeDescription
app_idIntegerSerial id of the application
api_keyStringPublic api key of the application
app_api_keyStringAdmin api key of the application
nameStringName of the application
created_atTimeThe date when the application was created.
versionIntegerVersion of the application
users_countIntegerUsers count
hard_tokens_enabledBooleanTrue if the application supports hardware tokens
suspendedBooleanTrue if the application is suspended
uses_voice_recordingBooleanTrue if the application has custom voice recordings
twilio_account_sidStringTwilio account id tied to the application

Getting application details


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/details?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_12
{
_12
"app_id": 13234,
_12
"api_key": "public_api_key",
_12
"app_api_key": "application_admin_api_key",
_12
"name": "Dashboard Test",
_12
"version": 8,
_12
"users_count": 1324,
_12
"hard_tokens_enabled": false,
_12
"suspended": false,
_12
"uses_voice_recording": false,
_12
"twilio_account_sid": "twilio_account_id"
_12
}


Get Application UI Settings

get-application-ui-settings page anchor

Get the current& UI Settings.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
GET /dashboard/:format/application/ui_settings

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
custom_assetsBooleanTrue when the application has custom assets.
timer_colorHex ColorColor of the timer
circle_colorHex ColorColor of the circle timer
circle_backgroundHex ColorColor of the circle background.
background_colorHex ColorBackground color
labels_colorHex ColorLabels color
labels_shadow_colorHex ColorLabels shadow color
token_colorHex ColorColor of the security code

Getting application UI settings


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/ui_settings?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_10
{
_10
"custom_assets": true,
_10
"timer_color": "#000000",
_10
"circle_color": "#000000",
_10
"circle_background": "#000000",
_10
"background_color": "#000000",
_10
"labels_color": "#000000",
_10
"labels_shadow_color": "#000000",
_10
"token_color": "#000000"
_10
}


Update Application UI Settings

update-application-ui-settings page anchor

Update the current UI Settings. Once this is posted the mobile phone assets are automatically synced.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins and collaborators


_10
POST /dashboard/:format/application/ui_settings/update

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
timer_colorHex ColorColor of the timer
circle_colorHex ColorColor of the circle timer
circle_backgroundHex ColorColor of the circle background.
background_colorHex ColorBackground color
labels_colorHex ColorLabels color
labels_shadow_colorHex ColorLabels shadow color
token_colorHex ColorColor of the security code
NameTypeDescription
custom_assetsBooleanTrue when the application has custom assets.
timer_colorHex ColorColor of the timer
circle_colorHex ColorColor of the circle timer
circle_backgroundHex ColorColor of the circle background.
background_colorHex ColorBackground color
labels_colorHex ColorLabels color
labels_shadow_colorHex ColorLabels shadow color
token_colorHex ColorColor of the security code

Updating background_color to red


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
-d background_color="#ff0000" \
_10
"https://api.authy.com/dashboard/json/application/ui_settings/update"

Sample response


_10
{
_10
"custom_assets": true,
_10
"timer_color": "#000000",
_10
"circle_color": "#000000",
_10
"circle_background": "#000000",
_10
"background_color": "#ff0000",
_10
"labels_color": "#000000",
_10
"labels_shadow_color": "#000000",
_10
"token_color": "#000000"
_10
}


Update Application Logos

update-application-logos page anchor

Updates the logos that are used in the mobile and desktop applications. Once this is posted the mobile phone assets are automatically synced.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
The data should be posted as a multipart form.
Accessible by: admins and collaborators


_10
POST /dashboard/:format/application/assets/update

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
main_logoStringImage data for the main logo. Supported formats: png. Maximum size: 588x214. No more than 128kb is accepted.
sidebar_logoStringImage data for the sidebar logo. Supported formats: png. Image size: 81x81. No more than 128kb is accepted.
NameTypeDescription
successBooleanWhether the request was successful or not.
original_assetsDictionaryURLs to the original logo and sidebar logo.

Updating background_color to red


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-F app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-F access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
-F main_logo="@/path/to/logo.png" \
_10
-F sidebar_logo="@/path/to/sidebar_logo.png" \
_10
"https://api.authy.com/dashboard/json/application/assets/update"

Sample response


_10
{
_10
"original_assets": {
_10
"logo_url": "<url to the original logo>",
_10
"sidebar_url": "<url to the original sidebar logo>"
_10
},
_10
"success": true
_10
}


Lists the logos that are used in the mobile and desktop applications. The response contains the original assets and the processed ones.
Accessible by: support, admins and collaborators


_10
GET /dashboard/:format/application/assets

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
successBooleantrue
assetsDictionaryIncludes the device, resolution and logos.
original_assetsDictionaryIncludes the url to the original logo and sidebar logo.

_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/assets"

Sample response


_38
{
_38
"assets": {
_38
"android": {
_38
"med": {
_38
"logo_url": "<logo url>",
_38
"sidebar_url": "<logo url>"
_38
},
_38
"high": {
_38
"logo_url": "<logo url>",
_38
"sidebar_url": "<logo url>"
_38
},
_38
"extra_high": {
_38
"logo_url": "<logo url>",
_38
"sidebar_url": "<logo url>"
_38
}
_38
},
_38
"ios": {
_38
"med": {
_38
"logo_url": "<logo url>",
_38
"sidebar_url": "<logo url>"
_38
},
_38
"high": {
_38
"logo_url": "<logo url>",
_38
"sidebar_url": "<logo url>"
_38
},
_38
"extra_high": {
_38
"logo_url": "<logo url>",
_38
"sidebar_url": "<logo url>"
_38
}
_38
},
_38
...
_38
},
_38
"original_assets": {
_38
"logo_url": "<url to the original logo>",
_38
"sidebar_url": "<url to the original sidebar logo>"
_38
},
_38
"success": true
_38
}


Get Application Logos Status

get-application-logos-status page anchor

Gets the status of the process generating the assets for recently uploaded logos. Status can be "processing" or "finished".

Accessible by: support, admins and collaborators


_10
GET /dashboard/:format/application/assets/status

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when the status is successfully retrieved.
statusStringStatus of the process.
messageStringDescription of the status.

Updating background_color to red


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/assets/status"

Sample response


_10
{
_10
"message": "Assets were processed",
_10
"status": "finished",
_10
"success": true
_10
}


Get Application API Settings

get-application-api-settings page anchor

Get the current API settings.
You need to sign this request using the api_signing_key as described in the Signing Requests section.

Accessible by: admins and collaborators


_10
GET /dashboard/:format/application/api_settings

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
welcome_message_enabledBooleanIf true a welcome message will be sent to the user when he/she is registered with Authy. True by default.
force_smsBooleanIf true the request SMS end point will always try to send the message. False by default.
force_callBooleanIf true the request Call end point will always try to start the phone call. False by default.
force_verificationBooleanIf true the user tokens are always verified even if he/she hasn't confirmed his/her phone number. True by default.
sms_enabledBooleanTrue when the application has text messages enabled. True by default.
calls_enabledBooleanTrue when the application has phone calls enabled. True by default.
call_requires_inputBooleanWhen true the phone calls asks the user to press 1 before reading the security code. True by default.
otp_lengthIntegerWithin 6 and 8. Length of the OTP code for your application.
onetouch_callback_urlStringThe url for the OneTouch callback if any.
onetouch_callback_methodStringThe http method used by the OneTouch call back (post | get) if any.
allow_custom_messagesBooleanTrue if custom messages are allowed for your application when sending SMS for OTP or Phone Verification.
tts_app_nameStringSpecify a phonetic spelling Text-to-speech (TTS) for your application name when delivering a code via phone call.
sdk_push_apn_enabledBooleanTrue when push credentials for iOS have been uploaded to let Authy manage push notifications for the TwilioAuth SDK.
sdk_push_gcm_enabledBooleanTrue when push credentials for Android have been uploaded to let Authy manage push notifications for the TwilioAuth SDK.
push_send_to_authyBooleanWhen False, OneTouch requests will not be visible in the Authy app.
push_send_to_sdkBooleanWhen False, Twilio will not send OneTouch push notifications to your app, but you can still deliver OneTouch requests and show them in your app.

Getting Application API settings


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/api_settings?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_10
{
_10
"welcome_message_enabled": true,
_10
"force_sms": false,
_10
"force_call": false,
_10
"force_verification": true,
_10
"sms_enabled": true,
_10
"calls_enabled": true,
_10
"call_requires_input": true
_10
}


Update the current API settings.
You need to sign this request using the api_signing_key as described in the Signing Requests section.

Accessible by: admins and collaborators


_10
POST /dashboard/:format/application/api_settings/update

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
force_smsBooleanIf true the request SMS end point will always try to send the message. False by default.
force_callBooleanIf true the request Call end point will always try to start the phone call. False by default.
force_verificationBooleanIf true the user tokens are always verified even if he/she hasn't confirmed his/her phone number. True by default.
welcome_message_enabledBooleanIf true a welcome message will be sent to the user when he/she is registered with Authy. True by default.
sms_enabledBooleanTrue when the application has text messages enabled. True by default.
calls_enabledBooleanTrue when the application has phone calls enabled. True by default.
call_requires_inputBooleanWhen true the phone calls asks the user to press 1 before reading the security code. True by default.
otp_lengthIntegerWithin 6 and 8. Length of the OTP code for your application.
tts_app_nameStringSpecify a phonetic spelling Text-to-speech (TTS) for your application name when delivering a code via phone call.
tts_app_name_enabledBooleanIf true, tts_app_name will be used when delivering a code via phone call.
push_send_to_authyBooleanWhen False, OneTouch requests will not be visible in the Authy app.
push_send_to_sdkBooleanWhen False, Twilio will not send OneTouch push notifications to your app, but you can still deliver OneTouch requests and show them in your app.
NameTypeDescription
welcome_message_enabledBooleanIf true a welcome message will be sent to the user when he/she is registered with Authy. True by default.
force_smsBooleanIf true the request SMS end point will always try to send the message. False by default.
force_callBooleanIf true the request Call end point will always try to start the phone call. False by default.
force_verificationBooleanIf true the user tokens are always verified even if he/she hasn't confirmed his/her phone number. True by default.
sms_enabledBooleanTrue when the application has text messages enabled. True by default.
calls_enabledBooleanTrue when the application has phone calls enabled. True by default.
call_requires_inputBooleanWhen true the phone calls asks the user to press 1 before reading the security code. True by default.
otp_lengthIntegerWithin 6 and 8. Length of the OTP code for your application.
onetouch_callback_urlStringThe url for the OneTouch callback if any.
onetouch_callback_methodStringThe http method used by the OneTouch call back (post | get) if any.
allow_custom_messagesBooleanTrue if custom messages are allowed for your application when sending SMS for OTP or Phone Verification.
tts_app_nameStringSpecify a phonetic spelling Text-to-speech (TTS) for your application name when delivering a code via phone call.
sdk_push_apn_enabledBooleanTrue when push credentials for iOS have been uploaded to let Authy manage push notifications for the TwilioAuth SDK.
sdk_push_gcm_enabledBooleanTrue when push credentials for Android have been uploaded to let Authy manage push notifications for the TwilioAuth SDK.
push_send_to_authyBooleanWhen False, OneTouch requests will not be visible in the Authy app.
push_send_to_sdkBooleanWhen False, Twilio will not send OneTouch push notifications to your app, but you can still deliver OneTouch requests and show them in your app.

Disabling welcome message


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
-d welcome_message_enabled="false" \
_10
"https://api.authy.com/dashboard/json/application/api_settings/update"

Sample response


_10
{
_10
"welcome_message_enabled": false,
_10
"force_sms": false,
_10
"force_call": false,
_10
"force_verification": true,
_10
"sms_enabled": true,
_10
"calls_enabled": true,
_10
"call_requires_input": true
_10
}


Deletes the Application associated with the application api key. The Application can only be deleted if it doesn't have pending invoices and it doesn't have users.
You need to sign this request using the api_signing_key as described in the Signing Requests section.

Accessible by: admins


_10
POST /dashboard/:format/application/delete

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
integration_api_keyStringIntegration API key.
NameTypeDescription
deletedBooleanTrue when the application was deleted.

Deleting an application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/delete"

Sample response


_10
{
_10
"deleted": true
_10
}


Suspends the Application associated with the application api key.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins


_10
POST /dashboard/:format/application/suspend

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
suspendedBooleanTrue when the application was suspended.

Suspending an application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/suspend"

Sample response


_10
{
_10
"suspended": true
_10
}


Unsuspends the Application associated with the application api key.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins


_10
POST /dashboard/:format/application/unsuspend

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
suspendedBooleanFalse when the application is not suspended.

Unsuspending an application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/unsuspend"

Sample response


_10
{
_10
"suspended": false
_10
}


Get the Application stats for the last 12 months.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins and collaborators


_10
GET /dashboard/:format/application/stats

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
yearIntegerFilter Stats Objects by year.
monthIntegerWithin 1 and 12. Filter Stats Objects by month. Use it along with year.
NameTypeDescription
statsArrayList of Stats Objects

Getting Application stats.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/stats?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_17
{
_17
"stats": [
_17
{
_17
"month": "082013",
_17
"api_calls_count": 100,
_17
"users_count": 40,
_17
"auths_count": 1000,
_17
"sms_count": 20,
_17
"calls_count": 28,
_17
"request_phone_info_count": 0,
_17
"sms_verification_count": 0,
_17
"call_verification_count": 0,
_17
"check_verification_count": 0
_17
}
_17
],
_17
"count": 1
_17
}


Get the lists of registered users.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
GET /dashboard/:format/application/users

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
pageIntegerThe page to display
per_pageIntegerThe amount of users to display per page (maximum 50)
qStringOptional query to search users by email or phone number.
statusStringOption status to filter the users by status. Available options are: confirmed, removed, all and suspended. Removed users only will be returned when filtering by removed.
phone_number_mask_levelStringOptional string within "min", "med", or "max" level to obfuscate the users's phone number.
NameTypeDescription
usersArrayList of User objects

Getting Application users.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/users?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f&
_10
phone_number_mask_level=min"

Sample response:


_20
{
_20
"users": [
_20
{
_20
"authy_id": 23,
_20
"used_at": "2013-08-18 21:10:43 UTC",
_20
"confirmed": true,
_20
"country_code": 1,
_20
"cellphone": "650-XXX-9822",
_20
"email": "sample@authy.com",
_20
"last_sync_at": "2013-08-18 21:08:25 UTC",
_20
"suspended": false,
_20
"sms_enabled": true,
_20
"status": "active",
_20
"calls_enabled": true,
_20
"removal_date": null
_20
}
_20
],
_20
"count": 1,
_20
"total_count": 1
_20
}


Get the details of a specific user.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
GET /dashboard/:format/application/users/:id

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
phone_number_mask_levelStringOptional string within "min", "med", or "max" level to obfuscate the users's phone number.
NameTypeDescription
authy_idIntegerUser identifier.
used_atDatetimeThe last date the user entered a valid code.
confirmedBooleanTrue if the user has confirmed the phone number.
country_codeIntegerCountry code of the user.
cellphoneIntegerPhone number of the user.
emailStringUser email.
last_sync_atDatetimeThe last date the user synced his Authy App.
suspendedBooleanTrue if the user account is suspended.
sms_enabledBooleanTrue if the user will be able to receive authentication codes via text message (SMS).
calls_enabledBooleanTrue if the user will be able to receive authentication codes via phone call.
statusStringUser status in the application. active, inactive, suspended, blocked, or removed.
removal_dateDatetimeReturned when the user was removed from the application.

Getting User details.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/users/23?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_15
{
_15
"authy_id": 23,
_15
"used_at": "2013-08-18 21:10:43 UTC",
_15
"confirmed": true,
_15
"country_code": 1,
_15
"cellphone": "650-344-9822",
_15
"email": "sample@authy.com",
_15
"last_sync_at": "2013-08-18 21:08:25 UTC",
_15
"suspended": false
_15
"suspended": false,
_15
"sms_enabled": true,
_15
"status": "active",
_15
"calls_enabled": true,
_15
"removal_date": null
_15
}


Get user activities like request sms/call or verify tokens of the last 3 months.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
GET /dashboard/:format/application/users/activities

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
qStringQuery to search logs by name, user email or user phone.
fromDatetimeOnly activities from this date are returned. Any format is accepted, even "yesterday" or "2 weeks ago".
toDatetimeOnly activities until this date are returned. Any format is accepted, even "yesterday" or "2 weeks ago".
pageIntegerThe page to display
per_pageIntegerThe users to display per page (maximum 50)
NameTypeDescription
activitiesArrayList of Activity objects.

Getting User activities.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/users/activities?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_11
{
_11
"activities": [
_11
{
_11
"created_at": "2014-08-18 21:44:21 UTC",
_11
"action_name": "verify_token",
_11
"user_email": "test@authy.com",
_11
"user_phone": "+1 650-324-3322"
_11
}
_11
],
_11
"count": 1
_11
}


Mark User for Health Check

mark-user-for-health-check page anchor

Marks user for health check.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
POST /dashboard/:format/application/users/:id/health_check

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user Access Key.
NameTypeDescription
successBooleanTrue when the user was marked for health check.

Marking a user for health check.


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/users/23/health_check"

Sample response


_10
{
_10
"success": true
_10
}


Suspends a given User.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
POST /dashboard/:format/application/users/:id/suspend

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when the user was suspended.

Suspending a user


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/users/23/suspend"

Sample response


_10
{
_10
"success": true
_10
}


Unsuspends a given User.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
POST /dashboard/:format/application/users/:id/unsuspend

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when the user was unsuspended.

Unsuspending a user


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/users/23/unsuspend"

Sample response


_10
{
_10
"success": true
_10
}


If you want to remove a User from your application you can use the move_to_trash API. Note : Removing a user will immediately disable token verifications. Once a user has been removed, you can recover the user for up to 30 days. After 30 days, the user will be permanently deleted from your application.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
POST /dashboard/:format/application/users/:id/move_to_trash

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when the user was marked for deletion.

Marking a user for deletion


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/users/23/move_to_trash"

Sample response


_10
{
_10
"success": true
_10
}


Removes User from trash. Meaning the user is restored.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: admins, collaborators and support agents


_10
POST /dashboard/:format/application/users/:id/remove_from_trash

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when the user was restored.

Unsuspending a user


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/users/23/remove_from_trash"

Sample response


_10
{
_10
"success": true
_10
}


Regenerates an API key given its type.
Possible API key types are:

  • api_key
  • admin_api_key
  • app_api_key
  • support_api_key
  • api_signing_key

Accessible by: admins
You need to sign this request using the api_signing_key as described in the Signing Requests section.


_10
POST /dashboard/:format/application/keys/:type/rotate

NameTypeDescription
app_api_keyStringThe API key of the application.
access_keyStringThe user access key.
typeStringEither api_key, admin_api_key, app_api_key, support_api_key or api_signing_key.
NameTypeDescription
successBooleanTrue when the API key was rotated.

Rotating an API key of an Application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/keys/api_key/rotate"

Sample response


_10
{
_10
"success": true,
_10
"new_api_key": "B89uJGW2FG9YT00a0000000KC8nArNAN",
_10
"old_api_key": "NANrAn8CK0000000a00TY9GF2WGJu98B"
_10
}


After rotating an API key it is automatically revoked after 24 hours. This end point allows you to rotate the API key before that period is over.
Possible API key types are:

  • api_key
  • admin_api_key
  • app_api_key
  • support_api_key
  • api_signing_key

Accessible by: admins
You need to sign this request using the api_signing_key as described in the Signing Requests section.


_10
POST /dashboard/:format/application/keys/:type/revoke

NameTypeDescription
app_api_keyStringThe API key of the application.
access_keyStringThe user access key.
typeStringEither api_key, admin_api_key, app_api_key, support_api_key or api_signing_key.
NameTypeDescription
successBooleanTrue when the previous API key was revoked.

Revokes the previous API key of an Application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/keys/api_key/revoke"

Sample response


_10
{
_10
"success": true
_10
}


Generate By-Pass Code For User

generate-by-pass-code-for-user page anchor

Generates a secure code that can be used as authentication token.
By-Pass Codes are only valid for 15 minutes.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: support agents


_10
GET /dashboard/:format/application/users/:id/generate_bypass_code

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
tokenStringCode to bypass the 2-factor authentication.
valid_untilFloatTimestamp indicating the expiration date.
user_idIntegerId of the user that's going to use the code.

Generating a By-Pass Code for a [user]


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/users/23/generate_bypass_code?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_10
{
_10
"token": "9084390277",
_10
"valid_until": 1429747564.5968451,
_10
"user_id": 23
_10
}


Fetches the list of user's devices.
You need to sign this request using the api_signing_key as described in the Signing Requests section.
Accessible by: support agents


_10
GET /dashboard/:format/application/users/:id/devices

NameTypeDescription
app_api_keyStringThe API key of the wanted application.
access_keyStringThe user access key.
NameTypeDescription
devicesListList of Device objects.

Getting the devices associated to the User


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
"https://api.authy.com/dashboard/json/application/users/23/devices?app_api_key=b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339&access_key=d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f"

Sample response


_20
{
_20
"devices": [
_20
{
_20
"city": "Miami",
_20
"country": "United States",
_20
"device_type": "Android",
_20
"name": "Android",
_20
"needs_health_check": false,
_20
"region": null,
_20
"registered": true,
_20
"token": {
_20
"created_at": "2016-04-14T12:59:14Z",
_20
"locked": true,
_20
"id": "278809"
_20
},
_20
"device_id": 103
_20
}
_20
],
_20
"success": true
_20
}


DEPRECATED. OneTouch is enabled by default for all applications and cannot be disabled.
Enable OneTouch in given application.
Accessible by: admins
You need to sign this request using the api_signing_key as described in the Signing Requests section.


_10
PUT /dashboard/:format/application/onetouch/enable

NameTypeDescription
app_api_keyStringThe API key of the application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when OneTouch has been enabled

Enabling OneTouch in an Application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-X PUT \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/onetouch/enable"

Sample response


_10
{
_10
"message": "OneTouch was enabled."
_10
"success": true
_10
}


DEPRECATED. OneTouch is enabled by default for all applications and cannot be disabled.
Disable OneTouch in given application.
Accessible by: admins
You need to sign this request using the api_signing_key as described in the Signing Requests section.


_10
PUT /dashboard/:format/application/onetouch/disable

NameTypeDescription
app_api_keyStringThe API key of the application.
access_keyStringThe user access key.
NameTypeDescription
successBooleanTrue when OneTouch has been enabled

Disabling OneTouch in an Application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-X PUT \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
"https://api.authy.com/dashboard/json/application/onetouch/disable"

Sample response


_10
{
_10
"message": "OneTouch was disabled."
_10
"success": true
_10
}


Set OneTouch callback url in a given application.
Accessible by: admins
You need to sign this request using the api_signing_key as described in the Signing Requests section.


_10
PUT /dashboard/:format/application/onetouch/callback

NameTypeDescription
app_api_keyStringThe API key of the application.
access_keyStringThe user access key.
callback_methodStringthe http method used by the call back (post | get).
callback_urlStringthe url for the callback.
NameTypeDescription
successBooleanTrue when callback has been set

Setting OneTouch callback in an Application


_10
curl -H "X-Authy-Signature: <signature>" -H "X-Authy-Signature-Nonce: <nonce>" \
_10
-X PUT \
_10
-d app_api_key="b58778e69678da357d25c87cf02fc5e4ae1aef837da0d9bd4dada37e0375c339" \
_10
-d access_key="d2fa7a7177a537ae8503eb5ed90c8fd98c68c5395fbf6b6748202abd71c19a9f" \
_10
-d callback_method="post" \
_10
-d callback_url="https://example.com/receive_callback" \
_10
"https://api.authy.com/dashboard/json/application/onetouch/callback"

Sample response


_10
{
_10
"message": "Callback information saved."
_10
"success": true
_10
}


Rate this page: