MÓDULO
Inicia aquí
Primeros pasos y conceptos relevantes para iniciar tu integración con la API de Upnify.
Bienvenida
Bienvenida
Te damos la bienvenida a la API de Upnify. Esta guía reúne los conceptos y recomendaciones que conviene conocer antes de comenzar una integración.
Conocimientos previos
Para desarrollar una integración con mayor seguridad y rapidez, te recomendamos contar con experiencia en:
- El protocolo HTTP y servicios REST. Si necesitas reforzar estos conceptos, consulta la sección REST.
- El funcionamiento del proceso y la cuenta de Upnify que integrarás.
- Un lenguaje de programación, por ejemplo Node.js, C#, Go, Python, PHP, Java, Perl o Ruby.
- Un cliente HTTP como Postman o Insomnia para explorar y probar solicitudes.
Cómo funciona la API de Upnify
La API usa un estilo REST y JSON para intercambiar información. Cada módulo documenta las rutas disponibles, los parámetros que debes enviar y el formato de sus respuestas.
Para realizar solicitudes autenticadas necesitas un token. Puedes obtenerlo con el recurso /login usando un usuario activo, aunque para integraciones de larga duración es preferible utilizar una URL de integración. Consulta las secciones Autenticación e Integraciones para elegir el mecanismo adecuado.
Trata los tokens y las credenciales como secretos: no los incluyas en código fuente, repositorios, registros de aplicación ni interfaces de usuario. Guárdalos en la configuración segura de tu aplicación y sustitúyelos si sospechas que fueron expuestos.
Consideraciones para tu integración
- Consulta los estándares del API antes de implementar. Te ayudarán a interpretar solicitudes, respuestas y códigos HTTP de forma consistente.
- Respeta el límite de 100 solicitudes por minuto. Si lo superas, la API puede responder con el código HTTP
429. Implementa espera y reintentos graduales; no repitas la solicitud de inmediato ni aumentes la frecuencia de llamadas. - Cuando estén disponibles para el evento que necesitas, utiliza webhooks en lugar de consultar periódicamente la información. Upnify puede notificar a tu sistema eventos como la creación de un prospecto, cliente o venta, evitando sincronizaciones innecesarias y acercando la integración al tiempo real.
- Prueba los flujos completos: solicitudes correctas, datos faltantes, errores de autenticación, límites de consumo y reintentos. Registra solo la información necesaria y nunca tokens, contraseñas ni datos personales completos.
Automatizaciones sin código
También puedes conectar Upnify con otras aplicaciones mediante herramientas como Integromat o Zapier. Estas plataformas pueden ayudarte a crear automatizaciones como:
- Agregar un cliente nuevo a una hoja de cálculo.
- Notificar un prospecto nuevo a un grupo de Telegram.
- Crear un cliente a partir de una venta de WooCommerce.
Antes de activar una automatización en producción, valida los campos que se comparten, los permisos del usuario o integración y el tratamiento de información sensible.
REST
REST y servicios RESTful
REST significa Representational State Transfer. Es un estilo de arquitectura para diseñar servicios web sencillos, mantenibles y escalables. Una API que sigue estos principios se conoce como API RESTful.
REST no es un protocolo ni una tecnología específica: aprovecha las convenciones de HTTP para que una aplicación cliente pueda solicitar o modificar información de un servicio web de forma predecible.
Recursos y URL
En REST, la información se organiza como recursos: por ejemplo, clientes, prospectos, ventas o productos. Cada recurso se identifica mediante una URL.
https://api.upnify.com/v4/clientes
Una URI identifica un recurso; una URL es un tipo de URI que además indica cómo localizarlo. En esta documentación usamos “URL” para referirnos a las direcciones que debes invocar.
Las rutas pueden incluir:
- Parámetros de ruta, que identifican un recurso concreto, como
/clientes/:tkCliente. - Parámetros de consulta, después de
?, para filtrar, ordenar o paginar resultados. - Un cuerpo JSON, normalmente al crear o actualizar información.
JSON: el formato de intercambio
La API intercambia datos mediante JSON (JavaScript Object Notation), un formato de texto legible por personas y fácil de procesar en la mayoría de los lenguajes.
{
"nombre": "Usuario de ejemplo",
"apellido": "Pérez",
"edad": 38,
"correo": "usuario@upnify.com"
}
Al enviar un cuerpo JSON, incluye el encabezado Content-Type: application/json. Revisa siempre la ficha del endpoint para conocer los campos requeridos, sus tipos y restricciones.
HTTP y sus métodos
HTTP define la comunicación entre tu aplicación y la API. Cada solicitud usa un método —también llamado verbo— que expresa la operación deseada sobre un recurso.
| Método | Uso habitual | Consideración |
|---|---|---|
GET |
Consultar recursos. | No debe modificar información y puede repetirse sin cambiar el resultado esperado. |
POST |
Crear un recurso o ejecutar una acción. | No suele ser idempotente: repetir una solicitud puede generar otra operación. |
PUT |
Actualizar un recurso existente. | Envía solo los campos que la ficha del endpoint permite modificar. |
DELETE |
Eliminar o desactivar un recurso. | Revisa la ficha: según el recurso, la eliminación puede ser lógica o permanente. |
Una solicitud HTTP incluye una URL, un método, encabezados y, cuando aplica, un cuerpo. La respuesta contiene un código de estado HTTP y, normalmente, datos JSON.
Códigos de respuesta
Como guía general, los códigos HTTP se agrupan así:
2xx: la solicitud se procesó correctamente.4xx: la solicitud requiere corrección, autenticación o permisos adicionales. Por ejemplo,401y403se relacionan con acceso, y429indica que superaste el límite de solicitudes.5xx: ocurrió un problema en el servidor. Conserva un identificador de seguimiento si la respuesta lo proporciona y reintenta solo cuando sea apropiado.
No supongas que todas las rutas devuelven la misma estructura. Consulta la sección Respuesta de cada endpoint antes de procesar los datos.
Recomendaciones prácticas
- Usa siempre HTTPS y conserva el token de sesión como un secreto. No lo incluyas en repositorios, registros ni URLs compartidas.
- Envía únicamente los encabezados y parámetros documentados para cada endpoint.
- Implementa tiempos de espera, manejo de errores y reintentos graduales. Ante un
429, espera antes de reintentar. - Pagina los listados y usa filtros para reducir el volumen de datos.
- Cuando un evento admita webhooks, prefírelos a consultar la API de forma repetitiva.
Continúa con Autenticación para obtener un token y con Integraciones para conocer opciones de conexión de larga duración.
Autenticación
Autenticación
Este apartado nos permitirá obtener el token de Autenticación de la sesión, el cual garantiza el acceso al API de Upnify, y es requerido para realizar las diversas operaciones permitidas por el API de Upnify
Notas generales
- Recuerda que la entrada y salida de datos en el API están en formato JSON.
- El Token identifica de manera única tu sesión dentro del CRM y es requerido para cada petición.
Consulta la documentación para conocer los métodos que te permitirán tener acceso al API de Upnify
Integraciones
Integraciones
¿Qué son las integraciones?
Las integraciones de Upnify permiten realizar operaciones comunes de una forma simplificada, como son recibir prospectos, importar facturas, así como generar u obtener un token de sesión para realizar cualquier otra operación en el API.
Para poder utilizar una integración es necesario darla de alta primero dentro de la cuenta de Upnify para obtener un URL de integración válido. Cabe señalar que este URL de integración permanecerá activo hasta que sea eliminado del sistema por un adiministrador.
Notas generales
- Recuerda que la entrada y salida de datos en el API están en formato JSON.
- El Token identifica de manera única tu sesión dentro del CRM y es requerido para cada petición.
Consulta la documentación para conocer los métodos que te permitirán tener acceso al API de Upnify.
/v4/facebookid
Inventario técnico
POST
/integraciones/webhooks
Inventario técnico
DELETE
/integraciones/webhooks/:tkWebhook
Inventario técnico
POST
/integraciones/elementor/:token
Inventario técnico
GET
/integraciones/plantillas
Inventario técnico
POST
/integraciones/plantillas
Inventario técnico
PUT
/integraciones/plantillas/:tkIntegracionPlantilla
Inventario técnico
DELETE
/integraciones/plantillas/:tkIntegracionPlantilla
Inventario técnico
POST
/integraciones
Inventario técnico
POST
/integraciones/sesion/corto
Inventario técnico
POST
/integraciones/sesionSesión
POST
/integraciones/cliengo
Inventario técnico
POST
/integraciones/cliengo/:token
Inventario técnico
POST
/integraciones/zapier/:token
Inventario técnico
POST
/integraciones/meta/facebookleads
Inventario técnico
GET
/integraciones/meta/facebookleads/obtieneTokenLargaDuracion
Inventario técnico
GET
/integraciones/meta/facebookleads/valida
Inventario técnico
GET
/integraciones/meta/facebookleads
Inventario técnico
GET
/integraciones/meta/facebookleads/auth
Inventario técnico
POST
/integraciones/valida/:token
Inventario técnico
GET
/integraciones/valida
Inventario técnico
GET
/integraciones/catalogos/:catalogo/:token
Inventario técnico
GET
/integraciones/formularios
Inventario técnico
GET
/integraciones/formularios/:tkIntegracion
Inventario técnico
PUT
/integraciones/formularios/:tkIntegracion
Inventario técnico
DELETE
/integraciones/formularios/:tkIntegracion
Inventario técnico
GET
/integraciones/html/:empresa/:tkIntegracion
Inventario técnico
GET
/integraciones
Inventario técnico
GET
/integraciones/:tkIntegracion
Inventario técnico
GET
/integraciones/:tkIntegracion/historico
Inventario técnico
POST
/integraciones/calendario
Inventario técnico
POST
/integraciones/calendario/prospecto
Inventario técnico
GET
/integraciones/widgets/:tkWidget
Inventario técnico
POST
/integraciones/calendario/cita
Inventario técnico
POST
/integraciones/:token
Inventario técnico
PUT
/integraciones/:token
Inventario técnico
GET
/integraciones/conversiones-datos/:tkIntegracion
Inventario técnico
PUT
/integraciones/:tkIntegracion/config
Inventario técnico
DELETE
/integraciones/:tkIntegracion
Inventario técnico
GET
/integraciones/trn/datos/:token
Inventario técnico