Empezar

Autenticación

Cómo crear una clave de API, enviarla en cada request y cambiarla sin cortar tu integración.

Todas las llamadas a la WABA API y a la API de CRM se autentican con una clave de API de tu empresa, enviada en el header Authorization:

curl https://api.whapi.chat/waba-api/phone-numbers \
  --header 'Authorization: Bearer whk_TU_CLAVE'

Una misma clave sirve para las dos APIs.

Crear una clave

  1. En Whapi, entra a Configuración de la empresa → Claves de API. Solo los administradores ven esta pestaña.
  2. Pulsa Crear clave y ponle un nombre que identifique dónde la vas a usar (por ejemplo, «CRM interno»).
  3. Copia la clave. Se muestra una sola vez: Whapi la guarda cifrada y después solo verás su prefijo.

Puedes tener hasta 5 claves activas. Usa una por integración: así puedes cambiar o revocar una sin afectar a las demás.

Si tu empresa tenía una clave antes de que existiera esta pantalla, aparece con la etiqueta «Formato anterior» y sigue funcionando hasta que la regeneres.

Regenerar una clave

Al regenerar, Whapi crea una clave nueva con el mismo nombre. Eliges qué pasa con la anterior:

OpciónQué pasa con la clave anteriorCuándo usarla
Mantener la anterior 7 díasSigue funcionando 7 días; las dos valen al mismo tiempo.Para migrar con calma.
Invalidar la anterior ahoraDeja de funcionar en el acto.Si la clave se filtró.

Mientras la clave anterior está en su período de gracia, cada respuesta incluye el header X-Whapi-Api-Key-Expires-At con la fecha en que dejará de funcionar. Si tu integración lo registra, sabrás a tiempo que falta reemplazarla.

Revocar una clave

Revocar invalida la clave de inmediato y no se puede deshacer. Antes de confirmar, Whapi te avisa si la clave se usó en las últimas 24 horas.

Errores de autenticación

Todos responden 401 con un code que indica la causa:

codeCausaQué hacer
AUTH_HEADER_MISSINGFalta el header Authorization: Bearer <clave>.Revisa que tu cliente HTTP lo envíe.
API_KEY_INVALIDLa clave no existe.Revisa que esté completa, sin espacios.
API_KEY_REVOKEDLa clave fue revocada.Crea una clave nueva.
API_KEY_EXPIREDLa clave fue regenerada y terminó su período de gracia. expiredAt indica cuándo.Usa la clave nueva.
{
  "error": "This API key was revoked",
  "code": "API_KEY_REVOKED"
}

Buenas prácticas

  • Guarda la clave en una variable de entorno o un gestor de secretos, nunca en el código ni en el navegador.
  • Llama a la API desde tu servidor. Una clave en una página web queda a la vista de cualquiera.
  • Si sospechas que una clave se filtró, regenérala con Invalidar la anterior ahora.