Upnify Documentación API
Inicia aquí · /integraciones/:token

Integraciones

Recibir un contacto desde una integración

POST/integraciones/:token

Recibe un contacto y aplica la configuración de la integración. Debes enviar al menos correo o movil. Si el contacto ya existe, puede registrar una nueva solicitud y ejecutar las acciones de recurrencia; no equivale a reemplazar todos sus datos. Si hay un mapeo configurado se aplica antes de procesar el cuerpo. La operación puede asignar etiquetas, distribuir el contacto y activar notificaciones o automatizaciones. Usa trid para reconocer reintentos ya registrados. Si faltan correo y movil puede devolver HTTP 200 y code: 0, pero el contacto no se inserta: verifica que la respuesta incluya details y tkContacto. El alias POST /integracion recibe el token de integración en el cuerpo o la consulta.

Rutas alternativas

  • /integracion

Parámetros

NombreTipoValidaciónDescripción
triduniqueidentifierCuerpo: UUID de la solicitud. Reutiliza el mismo valor al reintentar una solicitud: si ya existe en el historial de la cuenta, devuelve action: duplicated sin volver a procesarla. No lo reutilices para solicitudes distintas.
gbraidvarcharCuerpo: Identificador de clic publicitario. Hasta 512 caracteres.
wbraidvarcharCuerpo: Identificador de clic publicitario. Hasta 512 caracteres.
tokenStringRequeridoURL (obligatorio): Token completo de la integración, incluido su prefijo si lo tiene. Conserva el valor proporcionado por Upnify.
nombreStringCuerpo: Nombre del contacto. Se conservan hasta 128 caracteres.
apellidosStringCuerpo: Apellidos del contacto. Se conservan hasta 128 caracteres.
correoStringCuerpo: Correo del contacto. Debes enviar correo o movil para que se procese el contacto.
movilStringCuerpo: Móvil del contacto. Debes enviar movil o correo; incluye el prefijo internacional cuando lo conozcas.
telefonoStringCuerpo: Teléfono del contacto.
telefono2StringCuerpo: Teléfono adicional.
empresaStringCuerpo: Nombre de la compañía del contacto.
puestoStringCuerpo: Puesto del contacto.
comentariosStringCuerpo: Comentario de la solicitud. Hasta 8000 caracteres.
tkUsuarioStringCuerpo: Identificador del ejecutivo que recibirá el contacto. Si se omite se aplica la configuración y distribución de la integración.
tkFaseStringCuerpo: Identificador de la fase inicial.
faseStringCuerpo: Nombre o identificador de una fase. tkFase tiene prioridad para un contacto nuevo.
tkOrigenStringCuerpo: Identificador del origen del contacto; tiene prioridad sobre origen.
origenStringCuerpo: Nombre o identificador del origen.
tkEtiquetaStringCuerpo: Identificadores de etiquetas separados por comas.
etiquetaStringCuerpo: Nombre o identificador de la primera etiqueta.
etiqueta2StringCuerpo: Nombre o identificador de una segunda etiqueta.
etiqueta3StringCuerpo: Nombre o identificador de una tercera etiqueta.
idPaisStringCuerpo: Código del país. Si se omite o no es válido se aplica el país de la cuenta o del ejecutivo.
paisStringCuerpo: Nombre del país para resolver su código.
idEstadoStringCuerpo: Código del estado.
pestadoStringCuerpo: Nombre del estado para resolver su código.
ciudadStringCuerpo: Ciudad del contacto.
pciudadStringCuerpo: Texto complementario de ciudad.
idMunicipioStringCuerpo: Identificador del municipio.
direccion1StringCuerpo: Dirección principal.
calleStringCuerpo: Calle que se agrega a la dirección principal.
direccion2StringCuerpo: Dirección complementaria.
codigoPostalStringCuerpo: Código postal.
refiereStringCuerpo: Persona o referencia de origen del contacto.
sexoStringCuerpo: Valor de sexo del contacto.
esClienteIntegerCuerpo: 1 para crear como cliente; 0 para crear como prospecto.
webStringCuerpo: Sitio web del contacto.
paginaWebStringCuerpo: Texto de sitio web adicional.
urlStringCuerpo: URL de origen de la solicitud. Hasta 512 caracteres.
referrerStringCuerpo: Página de referencia. Hasta 512 caracteres.
cpStringCuerpo: Objeto JSON serializado con los campos personalizados. Sus claves dependen de los campos configurados en la cuenta.
datosAdicionalesStringCuerpo: Objeto JSON serializado con datos adicionales del contacto.
firmaStringCuerpo: Firma asociada al contacto.
tkEventoStringCuerpo: Identificador de un evento para registrar el contacto.
tkWidgetStringCuerpo: Identificador del widget desde el que se registra.
tkWidgetActivacionStringCuerpo: Identificador de la activación del widget.
tkPlantillaCorreoStringCuerpo: Identificador de una plantilla que se enviará al contacto cuando corresponda.
gclidStringCuerpo: Identificador de clic publicitario. Hasta 512 caracteres.
fbclidStringCuerpo: Identificador de clic publicitario. Hasta 512 caracteres.
utm_sourceStringCuerpo: Fuente de campaña. Hasta 512 caracteres.
utm_mediumStringCuerpo: Medio de campaña. Hasta 512 caracteres.
utm_campaignStringCuerpo: Campaña. Hasta 512 caracteres.
utm_termStringCuerpo: Término de búsqueda. Hasta 512 caracteres.
utm_contentStringCuerpo: Contenido de campaña. Hasta 512 caracteres.
utm_dateStringCuerpo: Fecha de atribución. Hasta 512 caracteres.
customfield1StringCuerpo: Valor adicional de atribución 1. Hasta 512 caracteres.
customfield2StringCuerpo: Valor adicional de atribución 2. Hasta 512 caracteres.
customfield3StringCuerpo: Valor adicional de atribución 3. Hasta 512 caracteres.
customfield4StringCuerpo: Valor adicional de atribución 4. Hasta 512 caracteres.
customfield5StringCuerpo: Valor adicional de atribución 5. Hasta 512 caracteres.

Respuesta

NombreTipoDescripción
codeInteger0 en las respuestas ordinarias. La respuesta de una solicitud duplicada puede omitirlo.
msgStringMensaje de resultado; revísalo junto con details.
detailsArray<Object>Resultado del contacto. No aparece cuando falta correo y movil.
details[].tkContactoStringIdentificador del contacto creado, localizado o actualizado.
details[].actionStringAcción realizada: created, updated o duplicated.

Solicitud

Enviar un contacto con un identificador de solicitud

curl --request POST \
  --url https://api.upnify.com/integraciones/P01AP00000000-0000-4000-8000-000000000001 \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{
  "nombre": "Persona de ejemplo",
  "correo": "persona@example.com",
  "comentarios": "Solicitud desde el formulario",
  "trid": "00000000-0000-4000-8000-000000000001"
}'

Respuesta

Contacto procesado (HTTP 200)

JSON
[
  {
    "code": 0,
    "msg": "Ok",
    "details": [
      {
        "tkContacto": "P-00000000-0000-4000-8000-000000000001",
        "action": "created"
      }
    ]
  }
]

Reintento ya registrado (HTTP 200)

JSON
[
  {
    "msg": "Ok",
    "details": [
      {
        "tkContacto": "P-00000000-0000-4000-8000-000000000001",
        "action": "duplicated"
      }
    ]
  }
]

Solicitud sin correo ni móvil (HTTP 200)

JSON
[
  {
    "code": 0,
    "msg": "El contacto no se insertó, el correo o móvil es requerido por favor vuelva a intentarlo"
  }
]