Una clave API permite que tu propio código, un script o una herramienta como Zapier actúen sobre tu cuenta de Kadens. La creas en el panel, eliges exactamente qué puede hacer, y la envías con cada petición.
Una clave es un secreto que pertenece a una cuenta. Cada petición hecha con ella actúa como esa cuenta y solo puede hacer lo que autorizan sus permisos.
Cada clave empieza por kad_ seguido de 43 caracteres aleatorios. El prefijo hace que una clave sea fácil de reconocer si acaba en algún sitio donde no debería estar.
Claude y ChatGPT no necesitan una clave: se conectan iniciando sesión desde la página de asistentes de IA. Usa una clave para scripts, herramientas de automatización y cualquier otra cosa que envíe una cabecera.
Envía la clave en la cabecera Authorization de cada petición, como un token Bearer.
Authorization: Bearer kad_...Mantén la clave fuera de tu código: guárdala en una variable de entorno como KADENS_API_KEY. Todos los ejemplos de esta documentación la leen de ahí.
La forma más rápida de comprobar que una clave funciona: pregúntale a la API a quién pertenece.
{
"entity": {
"id": "6f1c2d3e-4b5a-4c7d-8e9f-0a1b2c3d4e5f",
"name": "Barcelona Salsa Studio"
},
"apiKeyId": "9a8b7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d",
"scopes": [
"webhooks.read",
"webhooks.write"
]
}Un permiso controla una acción concreta de la API. Una clave solo puede hacer lo que permiten sus permisos, así que dale a cada clave los menos permisos posibles que necesite. Un permiso de escritura nunca incluye el permiso de lectura correspondiente.
| Permiso | Descripción |
|---|---|
site.read | Leer el contenido del sitioVer las páginas, bloques y ajustes de tus sitios. |
site.design_reference.submit | Enviar referencias de diseñoSubir capturas y maquetas para que el constructor de sitios las use como guía de estilo. |
site.generate | Generar borradores del sitioCrear nuevas páginas y bloques en borrador con el constructor de sitios con IA.Solo clave API |
site.compose | Componer la estructura del sitioAñadir, reordenar y quitar bloques de un borrador. |
site.theme.configure | Configurar el tema del sitioCambiar los colores, las fuentes y el espaciado con los que se estiliza un borrador.Solo clave API |
site.preview.read | Ver vistas previas del sitioAbrir la vista previa de un borrador antes de publicarlo. |
site.publish | Publicar sitiosPublicar un borrador en tu sitio público. |
embed.read | Ver widgets incrustadosVer tus widgets incrustables, sus estadísticas, los sitios web donde se han visto y los dominios autorizados a mostrarlos. |
embed.write | Gestionar widgets incrustadosCrear, editar y archivar widgets incrustables, y añadir o quitar los dominios autorizados a mostrarlos. |
| Permiso | Descripción |
|---|---|
catalog.read | Leer tu catálogoConsultar tus cursos, sus ediciones y los planes y precios con los que los vendes. |
catalog.course.write | Crear cursosAñadir un curso a tu catálogo, con su título, su resumen y sus lecciones. |
catalog.plan.write | Fijar precios de planesCrear o cambiar los precios de un plan de suscripción que te pertenece. |
media.import | Importar contenidoTraer un vídeo desde una URL pública a tu biblioteca de contenido. |
schedule.write | Definir tu disponibilidadCrear o sustituir el horario semanal desde el que se ofrecen las reservas. |
events.read | Ver eventosConsulta tus eventos, sus sesiones y tipos de entrada. |
events.write | Gestionar eventosCrea y cambia tus eventos, sus sesiones y tipos de entrada. |
schedule.read | Ver tu horarioConsulta el horario de tus clases, sus sesiones y los calendarios que publicas. |
schedule.manage | Gestionar tu horarioCrear, cambiar y cancelar las clases, sesiones y calendarios publicados de tu horario. |
| Permiso | Descripción |
|---|---|
orders.read | Ver pedidosConsulta tus pedidos, pagos y reembolsos. |
subscriptions.read | Ver suscripcionesConsulta las suscripciones a tus planes y su estado. |
bookings.read | Ver reservasConsulta las reservas de tus clases y sesiones. |
payouts.read | Ver pagosConsulta tus pagos y tu saldo. |
pricing.write | Gestionar precios y descuentosCrea y cambia descuentos, extras, ofertas y las reglas que deciden quién puede comprar qué. |
orders.write | Gestionar pedidos y reembolsosCambia pedidos y emite reembolsos. Un reembolso devuelve dinero al comprador. |
payments.write | Gestionar pagosCambia la configuración de pagos, los monederos y el cobro de tu cuenta. Puede mover dinero. |
insights.read | Ver estadísticasConsulta tus estadísticas y las cifras de tu panel. |
| Permiso | Descripción |
|---|---|
attendees.read | Ver asistentesConsulta quién tiene entradas para tus eventos y sus accesos. |
enrollments.read | Ver inscripcionesConsulta quién está inscrito en tus cursos y su progreso. |
people.read | Ver datos personalesAccede a los nombres, correos electrónicos y otros datos personales de tus clientes. Sin este permiso quedan ocultos. |
people.write | Gestionar clientesAñade y cambia las personas de tu CRM, sus accesos y sus solicitudes. |
attendees.write | Registrar asistentesRegistra la entrada y salida de los asistentes de tus eventos y sesiones. |
| Permiso | Descripción |
|---|---|
webhooks.read | Ver webhooksVer tus endpoints de webhook, su registro de entregas y el catálogo de eventos. |
webhooks.write | Gestionar webhooksCrear, editar y eliminar endpoints de webhook, rotar sus secretos y enviar, reenviar o repetir eventos. |
| Permiso | Descripción |
|---|---|
permissions.policy.read | Leer políticas de permisosVer lo que cada rol puede hacer en todo tu perfil. |
permissions.policy.write | Cambiar políticas de permisosConceder y retirar lo que cada rol puede hacer en todo tu perfil.Solo clave API |
actions.delegate | Actuar en tu nombrePermite que el asistente realice en tu nombre cualquier acción que puedas hacer en Kadens, dentro de los demás permisos que concedas. |
| Permiso | Descripción |
|---|---|
learning.read | Ver el aprendizajeConsulta exámenes, notas, certificados, prácticas entregadas y el progreso de tus alumnos. |
learning.write | Gestionar el aprendizajeCorrige exámenes, publica resultados, emite certificados y revisa las prácticas entregadas. |
| Permiso | Descripción |
|---|---|
community.read | Ver tu comunidadConsulta tu comunidad, anuncios, chats, reseñas y preguntas frecuentes. |
community.write | Gestionar tu comunidadPublica anuncios, responde chats y modera tu comunidad, reseñas y preguntas frecuentes. |
| Permiso | Descripción |
|---|---|
marketing.read | Ver marketingConsulta tus envíos de correo, recordatorios, afiliados y recompensas. |
marketing.write | Gestionar marketingCrea y envía correos, configura recordatorios y gestiona afiliados y recompensas. |
| Permiso | Descripción |
|---|---|
terms.read | Leer las condiciones de tu cuentaConsultar la comisión, los límites y el periodo de prueba acordados para tu cuenta. |
settings.read | Ver la configuraciónConsulta tu perfil, etiquetas, integraciones y la configuración de tu cuenta. |
settings.write | Cambiar la configuraciónCambia tu perfil, etiquetas, integraciones y la configuración de tu cuenta. |
| Tema | Descripción |
|---|---|
Reemitir | Crea una nueva clave con el mismo nombre, los mismos permisos y la misma caducidad. La clave antigua deja de funcionar de inmediato, así que actualízala allí donde se use. |
Revocar | Desactiva la clave de inmediato. Cualquier integración que la use deja de funcionar. Esto no se puede deshacer. |
Caducidad | Una clave creada con caducidad deja de funcionar en esa fecha. Una clave sin caducidad funciona hasta que la revoques. |
Último uso | El panel muestra cuándo se usó cada clave por última vez. Una clave que nadie ha usado en mucho tiempo es buena candidata para revocar. |
El código de estado le indica a tu integración qué hacer a continuación.
| Estado | Significado |
|---|---|
401 | Falta la clave, tiene un formato incorrecto, está revocada o ha caducado. Comprueba la cabecera Authorization, o crea una nueva clave. |
403 | La clave funciona pero le falta el permiso que necesita esta petición. Reemitir mantiene los mismos permisos, así que crea una clave con el permiso que falta. |
{
"statusCode": 403,
"message": "API key missing required scope",
"timestamp": "2026-10-01T10:00:00.000Z",
"path": "/api/v1/me",
"requestId": "req_7c1e0b"
}¿Te ha resultado útil?