Cómo autenticarte en la API REST de AppBO, pedir los alcances correctos y leer y escribir los recursos principales desde tu propio código.
Trae tus herramientas a una llamada: lo conectamos, probamos cada campo en ambas direcciones y te lo entregamos documentado.
Agenda una llamadaLa API REST es la superficie programática de casi todo lo que guarda una cuenta de AppBO: los contactos y sus campos personalizados, las conversaciones y los mensajes, las oportunidades y los pipelines, los calendarios y las citas, los formularios y sus envíos, los flujos de trabajo y la estructura de subcuentas que usa una agencia para mantener separados a sus clientes. De un lado de la conexión está tu propio código. Un servicio de backend, un proceso nocturno, una app móvil, una herramienta interna de administración o un pipeline de datos. Del otro lado está una sola cuenta, o un conjunto de cuentas autorizadas juntas bajo una misma instalación de app a nivel de agencia.
Recurres a la API cuando el comportamiento que necesitas no se puede expresar como un paso de un flujo de trabajo ni con un conector nativo. Casos típicos: tu sistema de registro principal es un sistema externo y AppBO tiene que reflejarlo; necesitas cargar miles de registros históricos; quieres el historial de conversaciones dentro de tu propia consola de soporte; necesitas calcular algo (una puntuación, una verificación de elegibilidad, un nivel de precio) en tu propio código y escribir el resultado de vuelta en el contacto para que las automatizaciones de BO puedan ramificarse con base en él.
La API también es la base de todas las demás integraciones de esta biblioteca. Las plataformas de automatización, los webhooks salientes y el código personalizado insertado terminan llamando a los mismos endpoints con los mismos tokens y los mismos límites, así que los hábitos de autenticación y manejo de errores que formes aquí se trasladan directamente. Trata la referencia publicada de la API como la fuente de verdad para las rutas exactas, los nombres de campos y los identificadores de alcance, y trata esta guía como la forma del trabajo, no como un sustituto de esa referencia.
Authorization de tipo bearer, un encabezado Accept de JSON y el encabezado de versión de la API que indica la referencia. Omitir el encabezado de versión es una causa común de respuestas que se ven sutilmente mal.429 y 5xx, y registra el identificador de solicitud que devuelve la plataforma para que las conversaciones con soporte tengan algo concreto de donde partir.401 sostenidos (token roto), 429 sostenidos (estás por encima del presupuesto) y para las fallas de renovación: esas pasan en silencio hasta que algo visible para el usuario se rompe.Escenario: una app externa de onboarding es dueña del registro del cliente, y AppBO tiene que reflejar a cada cliente nuevo para que pueda correr la automatización de seguimiento.
201 con el identificador del contacto nuevo. El proceso escribe ese identificador de vuelta en su propia fila del cliente, y se convierte en la clave de unión para cada actualización posterior.Plan mejorado.La API aplica tanto un límite de ráfaga como una cuota de ventana más larga, y superar cualquiera de los dos devuelve 429. Revisa las cifras vigentes publicadas en la referencia de la API en lugar de fijar en el código un número sacado de un blog, y lee los encabezados de límite de uso en las respuestas reales. Son la vista confiable de tu presupuesto restante. Diseña pensando en el presupuesto: agrupa en lotes donde el endpoint lo permita, guarda en caché los metadatos de la cuenta que casi no cambian y prefiere los webhooks al sondeo.
Supón que no hay eliminación automática de solicitudes duplicadas, a menos que la referencia documente un mecanismo de idempotencia para el endpoint que estás llamando. Una llamada de creación que vence por tiempo bien pudo haber funcionado, así que un reintento a ciegas es como terminas con contactos duplicados. El patrón seguro es buscar y luego crear, o guardar tu propio identificador externo en un campo personalizado y buscarlo antes de escribir. Reintenta solo con 429 y 5xx; un 4xx distinto de 429 va a fallar igual para siempre.
Los campos personalizados se referencian por identificador, no por la etiqueta que ves en la interfaz, y cambiarle el nombre a un campo en la interfaz no cambia su identificador. Trae las definiciones de campos de la cuenta al iniciar y asigna por identificador. Cuidado con la conversión de tipos: un campo desplegable rechaza un valor que no esté entre sus opciones, las fechas piden el formato que indica la referencia y los teléfonos conviene enviarlos en E.164 para que tanto la eliminación de duplicados como la mensajería funcionen bien.
Las cuentas difieren en qué tan agresivamente fusionan por email o teléfono. No dependas de que la plataforma elimine duplicados por ti. Elige una sola clave, hazla cumplir de tu lado y guarda el identificador de contacto de la plataforma en el momento en que lo recibes.
Haz las pruebas contra una subcuenta de prueba dedicada y no contra una de producción, y mantén credenciales separadas por entorno. El riesgo es que una cuenta de prueba con flujos de trabajo activos y un número de teléfono conectado va a enviar mensajes reales a cualquier número que hayas escrito en tus datos de prueba.
Los tokens de acceso duran poco, y los tokens de renovación se pueden revocar cuando un usuario desconecta la app, cambia su contraseña o se elimina la instalación. Trata una falla de renovación como un evento de reautorización que necesita a una persona, no como un error pasajero para reintentar para siempre, y configura una alerta, porque si no la integración simplemente se queda callada.
403 solo en el único endpoint que llamas pocas veces.Conectamos la integración, mapeamos los campos, probamos ambas direcciones y te la entregamos con los procedimientos (SOP) que tu equipo necesita para operarla.
Agenda una llamada