Autenticación y tokens de la Public API
Envía un token de API personal (CLI token) o un token de usuario virtual como token Bearer. Usa usuarios virtuales a diario y el token personal para la cuenta.
Última actualización
La Public API de Chatfuel autentica cada solicitud con un token en el encabezado Authorization: Bearer <token>. Hay dos tipos de tokens: tu token de API personal, que en el panel se llama CLI token, y los tokens de usuarios virtuales, que pertenecen a miembros de un solo bot que solo usan la API. Usa tokens de usuarios virtuales para el trabajo diario de integración y reserva el token de API personal para las pocas operaciones que requieren a una persona real.
Cómo enviar un token
Envía el token en el encabezado Authorization de cada solicitud HTTP:
POST /graphql HTTP/1.1
Host: panel.chatfuel.com
Authorization: Bearer 3c9e5f…
Content-Type: application/jsonPara las suscripciones de GraphQL por WebSocket, pon el mismo valor en el payload de inicio de la conexión como authToken:
{ "authToken": "Bearer 3c9e5f…" }Los tokens son cadenas opacas de 64 caracteres hexadecimales. No los analices ni dependas de su formato. Una solicitud sin un token válido igual puede llegar a la API, pero toda operación que necesita un usuario falla con Unauthorized.
Token de API personal vs. token de usuario virtual
| Token de API personal (CLI token) | Token de usuario virtual | |
|---|---|---|
| Pertenece a | Ti, un usuario real de Chatfuel | Un usuario virtual dentro de un bot |
| Ve | Todos los bots y espacios de trabajo de los que eres miembro | Solo su propio bot |
| Permisos | Tu propio rol en cada bot | El rol Editor o Agent del usuario virtual |
| Cuántos | Uno por cuenta | Uno por usuario virtual, hasta 20 usuarios virtuales por bot |
| Dónde se crea | Panel → menú de la cuenta → CLI token | La mutación createVirtualUser |
| Vigencia | 10 años, hasta que se revoque | 10 años, hasta que se regenere o se elimine el usuario virtual |
Ambos tokens llaman al mismo endpoint y a las mismas operaciones. Una operación que funciona dentro de un bot da el mismo resultado con cualquiera de los dos tokens, siempre que el rol lo permita. La diferencia es el alcance: un token de API personal filtrado expone toda tu cuenta, mientras que un token de usuario virtual filtrado expone un solo bot con un rol limitado.
Cómo crear, regenerar y revocar el token de API personal
El token de API personal se gestiona solo en el panel de Chatfuel, nunca a través de la API:
- Abre el menú de la cuenta (tu nombre o avatar) y selecciona CLI token, o ve a
https://panel.chatfuel.com/integration/auth/token. - Haz clic en Create token y cópialo. Chatfuel muestra el token de API personal una sola vez.
- Para reemplazar un token perdido o expuesto, haz clic en Regenerate token. El token anterior deja de funcionar de inmediato y el nuevo se muestra una sola vez.
- Para desactivar el token, haz clic en Revoke token. Todo lo que lo usa pierde el acceso de inmediato.
Cada cuenta tiene exactamente un token de API personal a la vez. Los usuarios virtuales no pueden crear un token de API personal para sí mismos.
Cómo obtener y rotar el token de un usuario virtual
createVirtualUser devuelve el token de un usuario virtual una sola vez. Para rotarlo, llama a regenerateVirtualUserToken con el ID de miembro del usuario virtual: el token anterior deja de funcionar y la respuesta contiene el nuevo. Para revocar el acceso por completo, elimina el usuario virtual con removeMemberFromBot o con Delete API user en los miembros del equipo del bot. Las tres operaciones necesitan el token de API personal de un Admin del bot. Usuarios virtuales muestra cada llamada.
Operaciones que necesitan el token de API personal
Un usuario virtual solo funciona dentro de su bot y solo con el rol Editor o Agent. Las operaciones que cambian la cuenta, el equipo, las conexiones de canales o los espacios de trabajo rechazan los tokens de usuarios virtuales con NotEnoughPermissions y necesitan un token de API personal. Las páginas de referencia las marcan como Solo token personal (Personal token only). Son las siguientes:
- Equipo:
createVirtualUser,regenerateVirtualUserToken,removeMemberFromBot,changeBotMemberRoleV2,createBotInviteV2,botInviteDelete,leaveBot - Bot:
renameBot,deleteBot,createWorkspaceAndBot,botUpdateRolesConfig,botResetAPIToken,botSetOpenAIModel,botUnsetOpenAIModel,updateUserOpenedBotDate - Configuración del bot que requiere el rol Admin:
botUpdateTimezone,botUpdateCountryCode,botUpdateIndustry,botSetLivechatAutoClosingConfig - Conexiones de canales:
botConnectFacebookPage,botConnectInstagramAccount,botConnectTikTokAccount,botDisconnectContactScope, las mutacionesbotPlatformConnectionLink*ybotPlatformAccessRefreshLink*y los camposBot.activePlatform*Links,fbPagesSyncForBusiness,fbPageSyncLatestPosts,whatsAppEntitiesStartRefetch,whatsAppPhoneSyncBizAppData,whatsAppPhoneSetProfileImageFile - Espacios de trabajo y facturación: todas las mutaciones
workspace*,currentUser.workspaceycurrentUser.workspaces,Workspace.subscription,Workspace.usageStats, la suscripciónbillingSubscriptionUpdated - Tu propia cuenta:
setUserDashboardLocale,availableGoogleCalendars
Cómo mantener los tokens seguros
- Guarda los tokens en tu servidor, en un gestor de secretos o en variables de entorno cifradas. Nunca los envíes a un navegador, a una app móvil ni a un repositorio público.
- Crea un usuario virtual distinto para cada integración o para cada uno de tus clientes, para que una filtración afecte a un solo bot y a una sola integración.
- Registra de tu lado qué usuario virtual pertenece a cada uno de tus usuarios. Chatfuel no sabe cómo asocias los usuarios virtuales con tus clientes.
- Rota el token de un usuario virtual con
regenerateVirtualUserTokencuando alguien que tenía acceso se vaya, y regenera el token de API personal en el panel si pudo quedar expuesto. - No pongas tokens en URL ni en registros.
Problemas comunes
"Unauthorized"
Falta el token, está mal escrito, se regeneró o se revocó, o el usuario virtual fue eliminado. Comprueba que el encabezado sea exactamente Authorization: Bearer <token>.
"NotEnoughPermissions"
El token es válido, pero su propietario no puede ejecutar esta operación: un usuario virtual llamó a una operación de la lista de token personal de arriba, o el rol del usuario virtual no lo permite. Por ejemplo, un Agent no puede editar flujos. Cambia al token de API personal o cambia el rol del usuario virtual.
"A token already exists for your account. Regenerate it to get a new one."
Cada cuenta tiene un solo token de API personal. El anterior no se puede volver a mostrar; haz clic en Regenerate token para obtener uno nuevo.
Guía de inicio rápido de la Public API de Chatfuel
Crea un token de API personal, encuentra el ID de tu bot, crea un usuario virtual y haz tu primera consulta y mutación en la Public API en unos diez minutos.
Usuarios virtuales en la Public API de Chatfuel
Un usuario virtual es un Editor o Agent solo para la API en un bot, con su propio token. Créalo, rótalo, cambia su rol o elimínalo con tu token de API personal.