Pasar al contenido principal
You are viewing the Spanish (Mexico) site, but your language preference is set to English. Switch to English site →

API de Authy

Autenticación de dos factores, inicio de sesión sin contraseña y autorizaciones seguras, creadas para desarrolladores.
  • Crea una autenticación push

    Utiliza una notificación push en un dispositivo móvil para iniciar una autenticación segura y fácil de usar. También se puede utilizar para proteger transacciones en aplicaciones, como transferencias de dinero.

    Ver documentación
    • Curl
    • Node
    • .NET (C#)
      # $AUTHY_API_KEY is the Authy API Key
      # $AUTHY_API_FORMAT is either “xml” or “json”
      # $AUTHY_ID example:  123456
      # $COUNTRY_CODE example: 1
      # $OT_MESSAGE is the OneTouch message
      # $OT_DETAILS is a string of details
      # $OT_TTL is the time (in seconds) for verification to occur
    
      curl -X POST "https://api.authy.com/onetouch/$AUTHY_API_FORMAT/users/$AUTHY_ID/approval_requests” \
      -H "X-Authy-API-Key: $AUTHY_API_KEY" \
      -d message="$OT_MESSAGE" \
      -d details="$OT_DETAILS" \
      -d seconds_to_expire="$OT_TTL"
    
    // npm install authy
    const authy = require("authy")("APIKEY");
    
    authy.send_approval_request(
      "1337",
      user_payload,
      [hidden_details],
      [logos],
      function (err, res) {
        // res = {"approval_request":{"uuid":"########-####-####-####-############"},"success":true}
      }
    );
    
    public static async Task CreateApprovalRequestAsync()
      {
        // Create client
        var client = new HttpClient();
    
        // Add authentication header
        client.DefaultRequestHeaders.Add("X-Authy-API-Key", AuthyAPIKey);
    
        var requestContent = new FormUrlEncodedContent(new[] {
          new KeyValuePair("message", "Requesting War Room Access"),
          new KeyValuePair("seconds_to_expire", "300"),
          new KeyValuePair("details[Location]", "California, USA"),
          new KeyValuePair("details[Room]", "VR Room 1"),
        });
    
        // https://api.authy.com/onetouch/$AUTHY_API_FORMAT/users/$AUTHY_ID/approval_requests
        HttpResponseMessage response = await client.PostAsync(
          "https://api.authy.com/onetouch/json/users/5661166/approval_requests",
          requestContent);
    
        // Get the response content.
        HttpContent responseContent = response.Content;
    
        // Get the stream of the content.
        using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
          {
            // Write the output.
            Console.WriteLine(await reader.ReadToEndAsync());
          }
        }
    
  • Verifica el estado de la autenticación push

    Una vez que hayas solicitado una autenticación push, puedes establecer una devolución de llamada para el cambio de estado o sondear la API con este ejemplo.

    Ver documentación
    • Curl
    • Node
    • .NET (C#)
      # $AUTHY_API_KEY is the Authy API Key
      # $AUTHY_API_FORMAT is either “xml” or “json”
      # $UUID is the string returned after creating a OneTouch request
    
      curl "https://api.authy.com/onetouch/$AUTHY_API_FORMAT/approval_requests/$UUID" \
      -H "X-Authy-API-Key: $AUTHY_API_KEY"
    
    // npm install authy
    const authy = require("authy")("APIKEY");
    
    authy.check_approval_status(uuid, function (err, res) {
      /*
    res = {
      "approval_request": {
        "_app_name": YOUR_APP_NAME,
        "_app_serial_id": APP_SERIAL_ID,
        "_authy_id": AUTHY_ID,
        "_id": INTERNAL_ID,
        "_user_email": EMAIL_ID,
        "app_id": APP_ID,
        "created_at": TIME_STAMP,
        "notified": false,
        "processed_at": null,
        "seconds_to_expire": 600,
        "status": 'pending',
        "updated_at": TIME_STAMP,
        "user_id": USER_ID,
        "uuid": UUID
      },
      "success": true
    }
    */
    });
    
    public static async Task VerifyPhoneAsync()
      {
        // Create client
        var client = new HttpClient();
    
        // Add authentication header
        client.DefaultRequestHeaders.Add("X-Authy-API-Key", AuthyAPIKey);
    
        // https://api.authy.com/protected/$AUTHY_API_FORMAT/phones/verification/check?phone_number=$USER_PHONE&country_code=$USER_COUNTRY&verification_code=$VERIFY_CODE
        HttpResponseMessage response = await client.GetAsync("https://api.authy.com/protected/json/phones/verification/check?phone_number=5558675309&country_code=1&verification_code=3043");
    
        // Get the response content.
        HttpContent responseContent = response.Content;
    
        // Get the stream of the content.
        using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
          {
            // Write the output.
            Console.WriteLine(await reader.ReadToEndAsync());
          }
        }
    
  • Solicita un OTP por SMS

    El método más disponible a nivel mundial de 2FA, que puede utilizar cualquier persona con un teléfono celular o de línea fija, en cualquier parte del mundo.

    Ver documentación
    • Curl
    • Node
    • .NET (C#)
      # $AUTHY_API_KEY is the Authy API Key
      # $AUTHY_API_FORMAT is either “xml” or “json”
      # $AUTHY_ID example:  123456
    
      curl "https://api.authy.com/protected/$AUTHY_API_FORMAT/sms/$AUTHY_ID?force=true" \
      -H "X-Authy-API-Key: $AUTHY_API_KEY"
    
    // npm install authy
    const authy = require("authy")("APIKEY");
    
    authy.request_sms("1337", function (err, res) {
      //
    });
    
    public static async Task RequestAuthySMSAsync()
      {
        // Create client
        var client = new HttpClient();
    
        // Add authentication header
        client.DefaultRequestHeaders.Add("X-Authy-API-Key", AuthyAPIKey);
    
        // https://api.authy.com/protected/$AUTHY_API_FORMAT/sms/$AUTHY_ID?force=true
        HttpResponseMessage response = await client.GetAsync(
          "https://api.authy.com/protected/json/sms/5661166?force=true");
    
        // Get the response content.
        HttpContent responseContent = response.Content;
    
        // Get the stream of the content.
        using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
          {
            // Write the output.
            Console.WriteLine(await reader.ReadToEndAsync());
          }
        }
    
  • Solicita un OTP por voz

    El método más disponible a nivel mundial de 2FA, que puede utilizar cualquier persona con un teléfono celular o de línea fija, en cualquier parte del mundo.

    Ver documentación
    • Curl
    • Node
    • .NET (C#)
      # $AUTHY_API_KEY is the Authy API Key
      # $AUTHY_API_FORMAT is either “xml” or “json”
      # $AUTHY_ID example:  123456
    
      curl -i "https://api.authy.com/protected/$AUTHY_API_FORMAT/call/$AUTHY_ID?force=true" \
      -H "X-Authy-API-Key: $AUTHY_API_KEY"
    
    // npm install authy
    const authy = require("authy")("APIKEY");
    
    authy.request_call("1337", function (err, res) {
      //
    });
    
    public static async Task RequestAuthyVoiceAsync()
      {
        // Create client
        var client = new HttpClient();
    
        // Add authentication header
        client.DefaultRequestHeaders.Add("X-Authy-API-Key", AuthyAPIKey);
    
        // https://api.authy.com/protected/$AUTHY_API_FORMAT/call/$AUTHY_ID?force=true
        HttpResponseMessage response = await client.GetAsync(
          "https://api.authy.com/protected/json/call/5661166?force=true");
    
        // Get the response content.
        HttpContent responseContent = response.Content;
    
        // Get the stream of the content.
        using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
          {
            // Write the output.
            Console.WriteLine(await reader.ReadToEndAsync());
          }
        }
    
  • Verifica un OTP

    El método más disponible a nivel mundial de 2FA, que puede utilizar cualquier persona con un teléfono celular o de línea fija, en cualquier parte del mundo.

    Ver documentación
    • Curl
    • Node
    • .NET (C#)
      # $AUTHY_API_KEY is the Authy API Key
      # $AUTHY_API_FORMAT is either “xml” or “json”
      # $AUTHY_ID example:  123456
      # $ONECODE is the requested token
    
      curl -i "https://api.authy.com/protected/$AUTHY_API_FORMAT/verify/$ONECODE/$AUTHY_ID" \
      -H "X-Authy-API-Key: $AUTHY_API_KEY"
    
    // npm install authy
    const authy = require("authy")("APIKEY");
    
    authy.verify("1337", "0000000", function (err, res) {
      //
    });
    
    public static async Task VerifyTokenAsync()
      {
        // Create client
        var client = new HttpClient();
    
        // Add authentication header
        client.DefaultRequestHeaders.Add("X-Authy-API-Key", AuthyAPIKey);
    
        // https://api.authy.com/protected/$AUTHY_API_FORMAT/verify/$ONECODE/$AUTHY_ID
        HttpResponseMessage response = await client.GetAsync(
          "https://api.authy.com/protected/json/verify/3812001/5661166");
    
        // Get the response content.
        HttpContent responseContent = response.Content;
    
        // Get the stream of the content.
        using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
          {
            // Write the output.
            Console.WriteLine(await reader.ReadToEndAsync());
          }
        }
    
  • Verifica un TOTP generado por un teléfono inteligente

    Completa un paso de 2FA sin necesidad de que el usuario tenga un dispositivo conectado a Internet o a un teléfono celular. Simplemente verifica el token generado por la aplicación Authy, independientemente de si tu dispositivo está conectado o no.

    Ver documentación
    • Curl
    • Node
    • .NET (C#)
      #$AUTHY_API_KEY is the Authy API Key
      # $AUTHY_API_FORMAT is either “xml” or “json”
      # $AUTHY_ID example:  123456
      # $ONECODE is the requested token
    
    
      curl -i "https://api.authy.com/protected/$AUTHY_API_FORMAT/verify/$ONECODE/$AUTHY_ID" \
      -H "X-Authy-API-Key: $AUTHY_API_KEY"
    
    // npm install authy
    const authy = require("authy")("APIKEY");
    
    authy.verify("1337", "0000000", function (err, res) {
      //
    });
    
    public static async Task VerifyTokenAsync()
      {
        // Create client
        var client = new HttpClient();
    
        // Add authentication header
        client.DefaultRequestHeaders.Add("X-Authy-API-Key", AuthyAPIKey);
    
        // https://api.authy.com/protected/$AUTHY_API_FORMAT/verify/$ONECODE/$AUTHY_ID
        HttpResponseMessage response = await client.GetAsync(
          "https://api.authy.com/protected/json/verify/3812001/5661166");
    
        // Get the response content.
        HttpContent responseContent = response.Content;
    
        // Get the stream of the content.
        using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
          {
            // Write the output.
            Console.WriteLine(await reader.ReadToEndAsync());
          }
        }
    

La ventaja de Twilio

Comunícate de manera confiable

Disfruta de un acuerdo de nivel de servicio que garantiza un 99,95 % de tiempo de actividad, lo que es posible con la conmutación por error automatizada y cero ventanas de mantenimiento.

Realiza tus operaciones a escala

Extiende la misma app que desarrollaste solo una vez a nuevos mercados con funciones configurables para su localización y cumplimiento.

Muchos canales

Utiliza la misma plataforma que conoces para voz, SMS, video, chat, autenticación de dos factores, y mucho más.

Sin engaños

Sal al mercado más rápido solo pagando por tu consumo, con soporte gratuito y la libertad de escalar y desescalar sin contratos.