Conversion API

La Conversion API te permite informar a Vonage sobre la confiabilidad de tus 2FA comunicaciones. El envío de datos de conversión a Vonage permite una entrega más rápida y confiable de tus mensajes.

Nota: Si estás utilizando el Verify API Para la autenticación de dos factores (2FA), no es necesario que nos envíes datos de conversión. La API de Verify se encarga de ello automáticamente.

Vonage utiliza estos datos de conversión, junto con recibos de entrega (DLR) para facilitar el Adaptive Routing™. El algoritmo Adaptive Routing determina automáticamente las mejores rutas de transporte para la entrega de SMS y llamadas de voz en cada momento. En la mayoría de los casos, un DLR es la confirmación de que tu mensaje ha sido entregado al destinatario. Sin embargo, no todos los DLR de los operadores son fiables y algunos ni siquiera los proporcionan. Por lo tanto, los datos de conversión son nuestro mejor indicador de la calidad de la ruta.

Nota: Los datos de conversión que nos envías son confidenciales: Vonage nunca los compartirá con terceros.

Antes de enviar los datos de conversión

El acceso a la Conversion API no está habilitado de manera predeterminada cuando creas tu cuenta de Vonage. Para usar la Conversion API, primero debes solicitar acceso enviando un email a soporte.

Cuando nos envíe datos de conversión, debe diferenciar entre sus 2FA mensajes y otras comunicaciones. Por ejemplo, alertas basadas en eventos o mensajes de marketing. Para ello, utiliza uno Clave API para autenticar las solicitudes a la Conversion API para la autenticación de dos factores (2FA), y una clave de API diferente para todo lo demás.

Información sobre los datos de conversión

El siguiente diagrama muestra el flujo de trabajo de la Conversion API:

Conversion API workflow

Para enviar datos de conversión a Vonage:

  1. Inicie un flujo de trabajo 2FA enviar una solicitud de autenticación de dos factores

  2. Vonage envía un mensaje de texto o de voz a tu usuario.

  3. Tu usuario responde a tu mensaje o solicitud de verificación.

  4. Enviar inmediatamente una Conversion API solicitud con información sobre el mensaje identificado por message-id:

    //You use the information you received in response from a request to SMS API or Call API.
    
    var https = require('https');
    
    var data = JSON.stringify({
     api_key: 'API_KEY',
     api_secret: 'API_SECRET',
     message-id: message-id,
     timestamp: yyyy-MM-dd HH:mm:ss,
     delivered: true_or_false
    });
    
    var options = {
     host: 'api.nexmo.com',
     path: '/conversions/sms',
     port: 443,
     method: 'POST'
    };
    
    var req = https.request(options);
    
    req.write(data);
    req.end();
    
    var responseData = '';
    req.on('response', function(res){
     res.on('data', function(chunk){
       responseData += chunk;
     });
    
    });
    
    val client = Vonage {
        apiKey(VONAGE_API_KEY)
        apiSecret(VONAGE_API_SECRET)
    }
    
    client.conversion.convertSms(
        messageId = MESSAGE_UUID,
        delivered = true,
        timestamp = Instant.now()
    )
    
    VonageClient client = VonageClient.builder()
        .apiKey(VONAGE_API_KEY)
        .apiSecret(VONAGE_API_SECRET)
        .build();
    
    client.getConversionClient().submitConversion(
        ConversionRequest.Type.SMS, // Conversion product type
        MESSAGE_ID,                 // ID of the message that was sent
        true,                       // Whether the message was sent successfully
        Date.from(Instant.now())    // Timestamp to associate with the conversion
    );
    
    <?php
    //You use the information you received in response from a request to SMS API or Call API.
      $url = 'https://api.nexmo.com/conversions/sms?' . http_build_query([
              'api_key' => 'API_KEY',
              'api_secret' => 'API_SECRET',
              'message-id'=> message-id,
              'timestamp'=> yyyy-MM-dd HH:mm:ss,
              'delivered'=> true_or_false
          ]);
    
      $ch = curl_init($url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      curl_setopt($ch, CURLOPT_HEADER, 1);
      $response = curl_exec($ch);
      $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
      $header = substr($response, 0, $header_size);
      if (strpos($header, '201')){
        echo ("Success");
      }
    }
    
    from vonage import Auth, Vonage
    
    client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
    
    client.sms.submit_sms_conversion(
        message_id='MESSAGE_ID',
        delivered=True,
        timestamp='2020-01-01T12:00:00Z',
    )
    
    require "net/http"
    require "uri"
    
    #You use the information you received in response from a request to SMS API or Call API.
    
    uri = URI.parse("https://api.nexmo.com/conversions/sms?")
    params = {
        "api_key" => 'API_KEY',
        "api_secret" => 'API_SECRET',
        "message-id" => THE_ID_FROM_THE_RESPONSE,
        "timestamp" => IN_UTC_yyyy-MM-dd HH:mm:ss,
        "delivered" => true_or_false
    }
    
    response = Net::HTTP.post_form(uri, params)
    
    puts response.body
    

    Importante: Siempre debe enviar estas solicitudes lo antes posible después de que su usuario haya respondido a su invitación 2FA y no esperar a enviarlas por lotes. El enrutamiento adaptativo se basa en datos de conversión oportunos para tomar las mejores decisiones de enrutamiento.