loading...
Manuales API

API

API KEY

Acerca de la API

La API UVox proporciona una interfaz simple pero potente que le permite integrar sus propias aplicaciones con los servicios UVox. Se puede realizar un conjunto extenso de acciones utilizando esta API, como enviar SMS, Consultar Balance, Consultar tarifas de llamadas, Aprovisionamiento de Códigos QR para Softphone, Integración CRM Vtiger y otros datos operativos. Como tal, esta interfaz es la herramienta ideal para crear cuadros de mandos alternativos, desarrollar aplicaciones móviles y automatizar aplicaciones front-end y back-end.

La API de UVox es una implementación totalmente compatible de la especificación de la API de JSON, que define como una aplicación debe solicitar que se recuperen o modifiquen los recursos, y cómo un servidor debe responder a esas solicitudes. Esta interfaz REST (Representational State Transfer) proporciona un conjunto fácil de usar de puntos finales HTTP que le permiten acceder a nuestros servicios utilizando los métodos GET, PUT, POST.

ESTE DOCUMENTO ASUME QUE ES FAMILIAR CON LOS CONCEPTOS DE PROGRAMACIÓN WEB, LOS FORMATOS DE DATOS WEB Y CON LA ESPECIFICACIÓN DE LA API DE JSON. INFORMACIÓN ADICIONAL SOBRE JSON ESTÁ DISPONIBLE EN SU SITIO WEB OFICIAL.

Claves de API

Para usar la API UVox en el entorno de producción, debe registrarse y recibir una clave API que será utilizada por su aplicación.

Para generar su clave API inicie sesión en su cuenta UVox en https://my.unityvox.com/sign_in y acceda a la sección en el menú lateral “API”. Si no tiene una cuenta con UVox, regístrese de forma gratuita en https://my.unityvox.com/sign_up.

Haga clic en "Crear nueva API KEY", coloque una descripción para su nueva API KEY.

Tiene posibilidad de crear hasta 3 API KEY y usarlas en distintas aplicaciones.

Debe incluir esta clave después del prefijo apikey junto al accountnumber en sus solicitudes de API como se muestra en el siguiente ejemplo:

curl -H 'Accept: application/vnd.api+json' \
-H 'Api-Key: 4D41E00J6KMXABS' \
'https://my.unityvox.com/api/get-api/v1/

Puntos finales

Los puntos finales para las peticiones via API es el siguiente:

https://my.unityvox.com/api/get-api/v1/

SMS

HTML API


Los mensajes SMS se envían haciendo llamadas HTTPS a la API.
Este comando le permite enviar uno o más mensajes SMS haciendo llamadas HTTPS directamente a la API. Para enviar varios mensajes a su base de datos de números móviles, puede llamar a este comando en un bucle.

Comenzar es rápido y fácil - todo lo que necesita hacer es copiar y pegar la URL directamente en su navegador web para enviar un mensaje! El servidor responderá con un identificador único para cada mensaje (denominado ID de mensaje del API). Este ID de mensaje de API se puede utilizar para rastrear y supervisar el estado de su mensaje.

Para mensajes de gran volumen, recomendamos el uso de conexiones HTTPS persistentes (keep-alive). También se pueden utilizar varias conexiones HTTPS simultáneas para obtener un rendimiento adicional.

https://my.unityvox.com/api/get-api/v1/sms-api?accountnumber={account-number}&apikey={apikey}&from=13779999999&to=13058888888&text=Este%2es%2un%2mensaje%2de%2prueba

Este comando le permite enviar uno o más mensajes SMS. El servidor responderá con un identificador único para cada mensaje. También puede enviar a varios teléfonos en una sola solicitud HTTPS (hasta 200 mensajes). Esto es útil si está enviando el mismo texto de mensaje a varios teléfonos.

 <form action="https://my.unityvox.com/api/get-api/v1/sms-api" method="POST" name="form-send-sms">
     <input name="accountnumber" type="hidden" value="{account-number}" />
     <input name="apikey" type="hidden" value="{apikey}" />
      <input name="from" type="text" size="35" placeholder="De (ej: Cod Pais + Cod Area + Telf)"/>
     <input name="to" type="text" size="35" placeholder="Para (ej: Cod Pais + Cod Area + Telf)"/>
     <textarea name="text" cols="50" rows="4" id="text" placeholder="Message" maxlength="160">
     </textarea>
     <input name="Submit" type="submit" value="Submit">
 </form>

JavaScript API


var xhr = new XMLHttpRequest();
var url = https://my.unityvox.com/api/get-api/v1/sms-api
xhr.open("POST", url+"?accountnumber={account-number}&apikey={apikey}&from=13779999999&to=13058888888&text=Este%2es%2un%2mensaje%2de%2prueba", true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4 && xhr.status == 200) {
    console.log(’success’);
  }
};
xhr.send();

CURL API


  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://my.unityvox.com/api/get-api/v1/sms-api?accountnumber={account-number}&apikey={apikey}&from=13779999999&to=13779999999&text=Este%2es%2un%2mensaje%2de%2prueba");
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_exec($ch);
  curl_close($ch);

Variables para envio de sms

  • Variable
    Concepto
  • apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.
  • text
    Contenido del mensaje de texto a enviar.
  • from
    Número de teléfono que envía el SMS, algunas operadoras y equipos móviles aceptan texto como destinatario, puede colocar su nombre, Ej from=”UVox”, si coloca un texto y el operador no lo acepta el destinatario será un numero genérico. Algunos paises no soportar etiquetas asi que el remitente sera un numbero generico.
  • to
    Número de teléfono de destino.

Respuestas de Sistema en Envío

  //Respuesta Error//
    {
      "version":"1.00",
      "code":"003",
      "status":"error",
      "resultstring":"Failure",
      "statusmessage":"Invalid or empty text"
    }

  //Respuesta exitosa
    {
      "version":"1",
      "code":"005",
      "resultstring":"Success",
      "status":"success",
      "to":"+345735375",
      "id":"48",
       "statusmessage":"Message sent successfully"
    }

    {
      "version":"1",
      "code":"009",
      "resultstring":"Success",
      "status":"no_plan",
      "to":"+345735375",
      "id":{id_message},
       "statusmessage":"No Plan or Balance in account (SMS queued)"
    }

Variables para verificación de sms

  • Variable
    Concepto
  • apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.
  • messageId
    Numero de ID único de cada mensaje, al momento de realizar el envío de un SMS el sistema le entregara dicha variable en su respuesta.

Respuestas de Sistema en verificación de Status

  //Respuesta Error//
    {
      "version":"1.00",
      "code":"010",
      "status":"error",
      "resultstring":"Failure",
       "statusmessage":"Error validating SMS, please verify ID"
     }

  //Respuesta exitosa
     {
       "version":"1",
      "code":"011",
      "status":"success",
       "resultstring":"Success",
       "statusmessage":"To send"
     }

    {
      "version":"1",
      "code":"012",
      "status":"success",
       "resultstring":"Success",
       "statusmessage":"No plan available to send or Credit"
     }

     {
      "version":"1",
      "code":"013",
      "status":"success",
      "resultstring":"Success",
      "statusmessage":"SMS Sent"
     }

SMS OTP (2factor)

OTP Authentication Solution


El sistema de autenticación de un solo uso le da seguridad a sus clientes, solo se deberá colocar el usuario o correo electrónico que utiliza para iniciar sesión en su portal y el resto será una clave de uso único que genera nuestro sistema.

La primera petición que se realiza es para solicitar el código único y el envío del SMS con dicho código.

https://my.unityvox.com/api/get-api/v1/OTP-api?accountnumber={account-number}&apikey={apikey}&ref_id={ref_id}&phone_number=1305xxxxxxxx

Esta peticion genera un código aleatorio de 6 dígitos el cual se podrá validar 1 sola vez y tiene una duración de 10 minutos, si el código vence o se valida se tendrá que solicitar otro nuevo ejecutando la misma petición.

 <form action="https://my.unityvox.com/api/get-api/v1/OTP-api" method="POST" name="request_otp">
     <input name="accountnumber" type="hidden" value="{account-number}" />
     <input name="apikey" type="hidden" value="{apikey}" />
      <input name="ref_id" type="hidden" size="35" value={ref_id}"/>
     <input name="phone_number" type="text" size="35" placeholder="Para (ej: Cod Pais + Cod Area + Telf)"/>
     <input name="Submit" type="submit" value="Submit">
 </form>

JavaScript API


var xhr = new XMLHttpRequest();
var url = https://my.unityvox.com/api/get-api/v1/OTP-api
xhr.open("POST", url+"?accountnumber={account-number}&apikey={apikey}&ref_id={ref_id}&phone_number=1305xxxxxxxx", true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4 && xhr.status == 200) {
    console.log(’success’);
  }
};
xhr.send();

CURL API


  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://my.unityvox.com/api/get-api/v1/OTP-api?accountnumber={account-number}&apikey={apikey}&ref_id={ref_id}&phone_number=1305xxxxxxxx");
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_exec($ch);
  curl_close($ch);

Variables para solicitud de código OTP

  • Variable
    Concepto
  • apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.
  • ref_id
    Valor único generado cuando creo el Témplate en https://my.unityvox.com
  • phone_number
    Número de teléfono de destino.

Respuestas de Sistema en Envío

  //Respuesta Error//
    {
      "version":"1.00",
      "code":"020",
      "status":"error",
      "resultstring":"Failure",
      "statusmessage":"Invalid or empty Message ref_id"
    }

    {
      "version":"1.00",
      "code":"021",
      "status":"error",
      "resultstring":"Failure",
      "sessionID":"{sessionID}",
      "statusmessage":"No Plan or Balance in account"
    }

  //Respuesta exitosa
    {
      "version":"1.00",
      "code":"022",
      "status":"success",
      "resultstring":"Success",
      "phone_number":{phone_number},
      "sessionID":{sessionID},
       "statusmessage":"Message sent successfully"
    }

Validación de código OTP recibido por su cliente.

Para poder realizar la verificación del código deberá enviar en su petición 2 nueva variable que es sessionID la cual recibió en la respuesta de solicitud de código y el código que recibió su cliente por SMS en su Mobil.

https://my.unityvox.com/api/get-api/v1/OTP-api/verify?accountnumber={account-number}&apikey={apikey}&sessionid={sessionID}&otp_code={otp_code}]

Esta peticion genera un código aleatorio de 6 dígitos el cual se podrá validar 1 sola vez y tiene una duración de 10 minutos, si el código vence o se valida se tendrá que solicitar otro nuevo ejecutando la misma petición.

 <form action="https://my.unityvox.com/api/get-api/v1/OTP-api/verify" method="POST" name="request_otp">
     <input name="accountnumber" type="hidden" value="{account-number}" />
     <input name="apikey" type="hidden" value="{apikey}" />
      <input name="sessionid" type="hidden" size="35" value={sessionid}"/>
     <input name="otp_code" type="text" size="35" value="{otp_code}"/>
     <input name="Submit" type="submit" value="Submit">
 </form>

JavaScript API


var xhr = new XMLHttpRequest();
var url = https://my.unityvox.com/api/get-api/v1/OTP-api/verify
xhr.open("POST", url+"?accountnumber={account-number}&apikey={apikey}&sessionid={sessionid}&otp_code={otp_code}", true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4 && xhr.status == 200) {
    console.log(’success’);
  }
};
xhr.send();

CURL API


  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://my.unityvox.com/api/get-api/v1/OTP-api/verify?accountnumber={account-number}&apikey={apikey}&sessionid={sessionid}&otp_code={otp_code}");
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_exec($ch);
  curl_close($ch);

Variables para validacion de código OTP

  • Variable
    Concepto
  • apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.
  • sessionid
    Variable enviada en la respuesta al momento de solicitar el código OTP, es una variable única y es válida únicamente con su código OTP.
  • otp_code
    Código enviado por SMS a su cliente, es código único y tiene una valides de 10 minutos y solo podrá ser usado 1 sola vez. Este código OTP se valida junto a la variable sessionid.

Respuestas de Sistema en Validación código OTP

  //Respuesta Error//
    {
      "version":"1.00",
      "code":"023",
      "status":"error",
      "resultstring":"Failure",
      "sessionID":"{sessionid}",
       "statusmessage":"OTP Expired"
     }

    {
       "version":"1.00",
       "code":"024",
      "status":"error",
      "resultstring":"Failure",
      "sessionID":"{sessionid}",
       "statusmessage":"Invalid API / SessionId Combination - No Entry Exists"
    }

    {
       "version":"1.00",
       "code":"025",
      "status":"error",
      "resultstring":"Failure",
      "sessionID":"{sessionid}",
       "statusmessage":"OTP Mismatch"
    }

    {
       "version":"1.00",
       "code":"026",
      "status":"error",
      "resultstring":"Failure",
      "sessionID":"{sessionid}",
       "statusmessage":"OTP already used"
    }
  //Respuesta exitosa
     {
       "version":"1.00",
      "code":"027",
      "status":"success",
       "resultstring":"Success",
      "sessionID":"{sessionid}",
       "statusmessage":"OTP Matched"
     }

CRM Vtiger

Esta función le ofrece la flexibilidad de enviar mensajes de texto a sus clientes. Puede enviar mensajes de texto a varios registros en una sola toma. Además de enviar manualmente mensajes, también puede enviar notificaciones automáticas activadas por flujos de trabajo en Vtiger CRM.

Primero debera descargar nuestra libreria y guardar el contenido via FTP en /path CRM Vtiger/modules/SMSNotifier/providers


- Haga clic en la pestaña del notificador de SMS. Puede encontrarlo en Todos los menús desplegables en la barra de menús.
- Haga clic en el icono de llave inglesa> Configuración del servidor
- Haga clic en Nueva configuración y configure los siguientes detalles en la ventana emergente que aparece.

Completa toda la información solicitada en el formulario.

Vtiger
  • Variable
    Concepto
  • Provider
    Seleccionamos UVox de la lista desplegable.
  • Active
    Colocamos en yes la activación del servicio.
  • User Name
    Su email registrado en nuestros sistemas al momento de crear su cuenta en UVox.
  • Password
    Contraseña de su cuenta en my.unityvox.com.
  • Accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.
  • Apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • From
    Número de teléfono que envía el SMS, algunas operadoras y equipos móviles aceptan texto como destinatario, puede colocar su nombre, Ej from=”UVox”, si coloca un texto y el operador no lo acepta el destinatario será un numero genérico. Algunos paises no soportar etiquetas asi que el remitente sera un numbero generico.


Guardamos el formulario, ya tenemos configurado nuestro Gateway para enviar SMS

Vtiger

Envío de SMS


Para enviar SMS a registros en la vista de lista.

- Haga clic en el módulo deseado. Por ejemplo, contactos, contactos u organizaciones.
- Seleccione los registros deseados a los que desee enviar SMS. Puede seleccionar registros haciendo clic en las casillas correspondientes que preceden a los registros.

Vtiger

- Ahora haga clic en el menú desplegable Acciones > Enviar SMS

Vtiger

-Selecciona el campo donde está almacenado los números móviles de sus contactos.

Vtiger Vtiger

Zoiper

En UVox queremos facilitar el registro en su Softphone Zoiper, en su panel de administración tiene una sección llamada "Softphone", donde podrá crear todos los registros que desee y así poder utilizar sus servicios desde varios dispositivos.

Luego de descargado el Softphone Zoiper, y generado el QR en su panel de administración podrá escanearlo.

Desde el mismo Softphone podrá ver su saldo actual, y lista de precios según destino de llamadas.

Mi Balance

Devuelve el saldo prepago así como el crédito disponible en su cuenta.

HTML API


https://my.unityvox.com/api/get-api/v1/balance?accountnumber={account-number}&apikey={apikey}

JavaScript API


var xhr = new XMLHttpRequest();
var url = https://my.unityvox.com/api/get-api/v1/balance
xhr.open("POST", url+"?accountnumber={account-number}&apikey={apikey}", true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4 && xhr.status == 200) {
    console.log(’success’);
  }
};
xhr.send();

CURL API


  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://my.unityvox.com/api/get-api/v1/balance?accountnumber={account-number}&apikey={apikey}");
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_exec($ch);
  curl_close($ch);

Variables para solicitud

  • Variable
    Concepto
  • apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.

Respuestas del sistema

  //Respuesta exitosa
    {
      "version":"1",
      "code":"015",
      "status":"success",
      "resultstring":"Success",
      "accountnumber":"xxxxxx",
      "currency":"US$",
      "balance":"100.00",
    }

Tarifas

Devuelve la lista de precios de cada destino que tenemos disponible en su Plan.

[{"dialprefix":"56","destination":"Chile","rateinitial":"0.02850"},
{"dialprefix":"5611","destination":"Chile Audiotext","rateinitial":"3.15000"},
{"dialprefix":"5615","destination":"Chile Audiotext","rateinitial":"3.15000"},
{"dialprefix":"51","destination":"Peru","rateinitial":"0.00750"},
{"dialprefix":"514129","destination":"Peru High Cost","rateinitial":"0.00750"},
{"dialprefix":"514229","destination":"Peru High Cost","rateinitial":"0.00750"},
{"dialprefix":"58","destination":"Venezuela","rateinitial":"0.02025"},
{"dialprefix":"58212","destination":"Venezuela Caracas","rateinitial":"0.02025"},
{"dialprefix":"5841","destination":"Venezuela Mobile","rateinitial":"0.04410"},
{"dialprefix":"58412","destination":"Venezuela Mobile Digitel","rateinitial":"0.11820"}]

HTML API


https://my.unityvox.com/api/get-api/v1/rates?accountnumber={account-number}&apikey={apikey}

JavaScript API


var xhr = new XMLHttpRequest();
var url = https://my.unityvox.com/api/get-api/v1/rates
xhr.open("POST", url+"?accountnumber={account-number}&apikey={apikey}", true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4 && xhr.status == 200) {
    console.log(’success’);
  }
};
xhr.send();

CURL API


  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, "https://my.unityvox.com/api/get-api/v1/rates?accountnumber={account-number}&apikey={apikey}");
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_exec($ch);
  curl_close($ch);

Variables para solicitud

  • Variable
    Concepto
  • apikey
    Clave privada generada en su cuenta https:/my.unityvox.com.
  • accountnumber
    Número de cuenta, podrá encontrarlo en su panel de administración en la sección API Key.

Respuestas Generales

  //Respuesta Error//
    {
      "version":"1.00",
      "code":"001",
      "status":"error",
      "resultstring":"Failure",
      "statusmessage":"API Key Invalid or Not Available"
    }

    {
      "version":"1.00",
      "code":"002",
      "status":"error",
      "resultstring":"Failure",
      "to":"13055454xx",
      "statusmessage":"Invalid format in the destination number"
    }

    {
      "version":"1.00",
      "code":"004",
      "status":"error",
      "resultstring":"Failure",
      "statusmessage":"405, Method Not Allowed"
     }

    {
       "version":"1",
       "code":"016",
       "status":"error",
      "resultstring":"Failure",
       "statusmessage":"Missing variables in your request"
    }

    {
       "version":"1",
       "code":"500",
       "status":"error",
      "resultstring":"Failure",
       "statusmessage":"Internal problem, please tray again"
    }

Código de respuesta

  • Código
    Description
  • 001
    API Key Invalid or Not Available.
  • 002
    Invalid format in the destination number.
  • 003
    Invalid or empty text.
  • 004
    405, Method Not Allowed.
  • 005
    Message sent successfully.
  • 009
    No Plan or Balance in account (SMS queued).
  • 010
    Error validating SMS, please verify ID.
  • 011
    To send.
  • 012
    No plan available to send or Credit.
  • 013
    SMS Sent.
  • 014
    Invalid destination number.
  • 015
    Get Balance.
  • 016
    Missing variables in your request
  • 017
    404, HTTP 404 Not Found
  • 020
    Invalid or empty Message ref_id
  • 021
    No Plan or Balance in account
  • 022
    Message sent successfully
  • 023
    OTP Expired
  • 024
    Invalid API / SessionId Combination - No Entry Exists
  • 025
    OTP Mismatch
  • 026
    OTP already used
  • 027
    OTP Matched
  • 500
    Internal problem, please tray again

Se un Empresario Global



Creemos que la globalización y el espíritu empresarial son los impulsores clave para hacer de este planeta un lugar mejor.
Al empoderar a los empresarios en los rincones más remotos del mundo, con un servicio telefónico que elimina la distancia, esperamos contribuir a este progreso.

Registro

X