Kadens logoKadens logoKadens
  • Descubrir
  • Precios
Iniciar sesiónComenzar
Kadens logoKadens logoKadens

Enseñanza

  1. Primeros pasos
  2. Academia
  3. Certificados
  4. Aprendizaje
  5. Cursos

Dinero

  1. Suscripciones
  2. Finanzas
  3. Entradas

Agenda

  1. Eventos
  2. Trabajo

Personas

  1. Comunidad
  2. Mailing
  3. Formularios
  4. Solicitudes
  5. Comunidades

Plataforma

  1. Mi sitio
  2. Descubrir
  3. Cuenta

Desarrolladores

  1. Resumen
  2. Claves API y permisos
  3. Widgets para sitios web
  4. Webhooks
  5. Asistentes de IA (MCP)
  6. API REST
¿No encuentras lo que buscas?Busca de nuevo··Habla con nosotros
Kadens logoKadens logoKadens

Tu éxito es nuestra misión. Kadens ayuda a los profesionales del movimiento a darse a conocer, gestionar su día a día y crecer con confianza. Todo en un solo sitio.

Producto

  • Descubrir
  • Cursos
  • Eventos
  • Comunidades
  • Mentoría

Para negocios

  • Kadens para enseñar
  • Kadens para eventos
  • Kadens para formularios
  • Kadens para certificados
  • Crea tu sitio
  • Precios
  • Reserva una demo en directo

Recursos

  • Centro de ayuda
  • Novedades
  • Desarrolladores
  • Soporte

Empresa

  • Contacto
  • Instagram
  • Política de privacidad
  • Condiciones de servicio
  • Política de cookies
Centro de ayudaContacto
Explorar la documentación · API REST

Enseñanza

  1. Primeros pasos
  2. Academia
  3. Certificados
  4. Aprendizaje
  5. Cursos

Dinero

  1. Suscripciones
  2. Finanzas
  3. Entradas

Agenda

  1. Eventos
  2. Trabajo

Personas

  1. Comunidad
  2. Mailing
  3. Formularios
  4. Solicitudes
  5. Comunidades

Plataforma

  1. Mi sitio
  2. Descubrir
  3. Cuenta

Desarrolladores

  1. Resumen
  2. Claves API y permisos
  3. Widgets para sitios web
  4. Webhooks
  5. Asistentes de IA (MCP)
  6. API REST
  1. Centro de ayuda
  2. Desarrolladores
  3. API REST

API REST

La API REST es lo que Zapier, Make, n8n y tu propio código llaman para leer los eventos de tu cuenta y suscribirse a ellos. Habla JSON sobre HTTPS y cada petición lleva una clave API.

·10 min
En esta página
  1. Resumen
  2. Autenticación
  3. Errores
  4. Límites de peticiones
  5. Endpoints
  6. REST hooks para integraciones
  7. ¿Y ahora qué?

Resumen

Cada endpoint vive bajo la URL base de abajo, seguida de la versión, por ejemplo /v1/me.

Los ejemplos de esta página leen la URL base de KADENS_API_URL y tu clave de KADENS_API_KEY, así que puedes pegarlos tal cual.

Las peticiones y respuestas son JSON. Envía Content-Type: application/json con cada petición que tenga cuerpo.

La versión forma parte de la ruta. Cada evento también lleva la versión de su formato en su campo version, actualmente 2026-10-01, para que tu código pueda saber qué forma recibió.

Autenticación

Cada petición necesita una clave API en la cabecera Authorization como un token Bearer. Cada endpoint indica el permiso que necesita.

Claves API y permisos

Errores

Los errores usan códigos de estado HTTP estándar y un cuerpo JSON con el estado, un mensaje, la ruta y un id de petición que puedes citar a soporte.

EstadoSignificado
400La consulta o el cuerpo no pasó la validación. Comprueba los campos contra esta referencia.
401Falta la clave, tiene un formato incorrecto, está revocada o ha caducado.
403La clave es válida pero le falta el permiso que necesita este endpoint.
429Demasiadas peticiones. Espera el tiempo indicado en la cabecera Retry-After y vuelve a intentarlo.
Respuesta de error
1
2
3
4
5
6
7
{
  "statusCode": 401,
  "message": "Missing or invalid API key",
  "timestamp": "2026-10-01T10:00:00.000Z",
  "path": "/api/v1/events",
  "requestId": "req_7c1e0b"
}

Límites de peticiones

Los límites se cuentan por clave API. Superar cualquiera de ellos devuelve 429 hasta que se reinicie la ventana.

VentanaLímite
Por segundo40 peticiones
Cada 10 segundos250 peticiones
Por minuto800 peticiones
Gestionar un 429
Lee la cabecera Retry-After, espera esos segundos y vuelve a intentarlo. El cuerpo lleva errorCode: RATE_LIMITED para que tu código no tenga que analizar el mensaje.

Endpoints

GET/v1/me

Prueba la clave: devuelve la cuenta a la que pertenece y sus permisos. Funciona con cualquier clave válida.

Bash
1
2
curl "$KADENS_API_URL/v1/me" \
  -H "Authorization: Bearer $KADENS_API_KEY"
Respuesta de muestra
1
2
3
4
5
6
7
8
9
10
11
{
  "entity": {
    "id": "6f1c2d3e-4b5a-4c7d-8e9f-0a1b2c3d4e5f",
    "name": "Barcelona Salsa Studio"
  },
  "apiKeyId": "9a8b7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d",
  "scopes": [
    "webhooks.read",
    "webhooks.write"
  ]
}
GET/v1/event-typesPermiso: webhooks.read

Lista todos los tipos de eventos a los que puedes suscribirte, con una muestra de cada uno y los campos que contienen datos personales.

Bash
1
2
curl "$KADENS_API_URL/v1/event-types" \
  -H "Authorization: Bearer $KADENS_API_KEY"
Respuesta de muestra
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
{
  "apiVersion": "2026-10-01",
  "data": [
    {
      "type": "order.paid",
      "family": "orders",
      "descriptionKey": "Webhooks.events.order_paid",
      "sample": {
        "order": {
          "id": "ord_91ac04",
          "status": "paid",
          "created_at": "2026-10-01T09:58:02Z",
          "paid_at": "2026-10-01T10:00:00Z",
          "event": {
            "id": "evt_7f3c2a",
            "name": "Salsa Congress Barcelona 2026"
          },
          "totals": {
            "gross": {
              "amount": 12000,
              "currency": "EUR"
            },
            "fees": {
              "amount": 600,
              "currency": "EUR"
            },
            "net": {
              "amount": 11400,
              "currency": "EUR"
            },
            "tax": {
              "amount": 2083,
              "currency": "EUR"
            }
          },
          "buyer": {
            "entity_id": "ent_5b21",
            "name": "Lucia Martin",
            "email": "lucia@example.com"
          },
          "lines": [
            {
              "ticket_type_id": "tt_full_pass",
              "name": "Full pass",
              "quantity": 1,
              "unit_price": {
                "amount": 12000,
                "currency": "EUR"
              }
            }
          ]
        }
      },
      "personalDataPaths": [
        "order.buyer.name",
        "order.buyer.email"
      ]
    }
  ]
}
GET/v1/eventsPermiso: webhooks.read

Lista los eventos recientes, del más nuevo al más antiguo, en el mismo sobre que las entregas de webhooks. Las integraciones lo usan para mostrar datos de muestra.

Bash
1
2
curl "$KADENS_API_URL/v1/events?type=order.paid&limit=10" \
  -H "Authorization: Bearer $KADENS_API_KEY"
Respuesta de muestra
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
{
  "data": [
    {
      "id": "msg_2f8a1c7e",
      "type": "order.paid",
      "version": "2026-10-01",
      "occurred_at": "2026-10-01T10:00:00Z",
      "account": {
        "id": "ent_1a0f",
        "name": "Barcelona Salsa Studio"
      },
      "subject": {
        "type": "order",
        "id": "ord_91ac04",
        "sequence": 2
      },
      "correlation_id": null,
      "livemode": true,
      "data": {
        "order": {
          "id": "ord_91ac04",
          "status": "paid",
          "created_at": "2026-10-01T09:58:02Z",
          "paid_at": "2026-10-01T10:00:00Z",
          "event": {
            "id": "evt_7f3c2a",
            "name": "Salsa Congress Barcelona 2026"
          },
          "totals": {
            "gross": {
              "amount": 12000,
              "currency": "EUR"
            },
            "fees": {
              "amount": 600,
              "currency": "EUR"
            },
            "net": {
              "amount": 11400,
              "currency": "EUR"
            },
            "tax": {
              "amount": 2083,
              "currency": "EUR"
            }
          },
          "buyer": {
            "entity_id": "ent_5b21"
          },
          "lines": [
            {
              "ticket_type_id": "tt_full_pass",
              "name": "Full pass",
              "quantity": 1,
              "unit_price": {
                "amount": 12000,
                "currency": "EUR"
              }
            }
          ]
        }
      }
    }
  ],
  "nextCursor": null,
  "hasMore": false
}
ParámetroTipoDescripción
typestringSolo eventos de este tipo.
limitintegerCuántos eventos devolver, de 1 a 100. Por defecto, 25.
cursorstringEl nextCursor de la página anterior, para leer la siguiente.
Los datos personales se ocultan por defecto
Los nombres, correos y otros campos personales se eliminan de los eventos a menos que la clave también tenga el permiso people.read.
POST/v1/webhooks/subscriptionsPermiso: webhooks.write

Crea un endpoint gestionado por la integración. Aparece como solo lectura en el panel. Devuelve 201 cuando crea la suscripción, y 200 con la existente cuando esa misma suscripción ya existe.

Bash
1
2
3
4
curl -X POST "$KADENS_API_URL/v1/webhooks/subscriptions" \
  -H "Authorization: Bearer $KADENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"targetUrl":"https://hooks.example.com/kadens","eventTypes":["order.paid","attendee.checked_in"],"integration":"zapier","externalRef":"zap_812734"}'
Respuesta de muestra
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
  "id": "3d9f2b71-8c4e-4a6f-9b1d-5e7a0c2f8d14",
  "created": true,
  "targetUrl": "https://hooks.example.com/kadens",
  "eventTypes": [
    "order.paid",
    "attendee.checked_in"
  ],
  "integration": "zapier",
  "externalRef": "zap_812734",
  "apiVersion": "2026-10-01",
  "secret": "whsec_Zk3v9QmT1rX8bLp2Wc6yHn4s",
  "createdAt": "2026-10-01T10:00:00.000Z"
}
CampoTipoDescripción
targetUrlObligatoriostringLa dirección HTTPS a la que Kadens entrega los eventos.
eventTypesObligatoriostring[]Los tipos de eventos a entregar, de 1 a 50. Lee la lista en /v1/event-types.
integrationObligatoriostringQuién gestiona la suscripción: zapier, make, n8n u other.
externalRefstringTu propio id para esta suscripción, hasta 255 caracteres.
DELETE/v1/webhooks/subscriptions/:idPermiso: webhooks.write

Elimina un endpoint creado por la integración. Devuelve 204 sin cuerpo.

Bash
1
2
curl -X DELETE "$KADENS_API_URL/v1/webhooks/subscriptions/3d9f2b71-8c4e-4a6f-9b1d-5e7a0c2f8d14" \
  -H "Authorization: Bearer $KADENS_API_KEY"

REST hooks para integraciones

Las herramientas de automatización se conectan a Kadens con el patrón REST hooks: se suscriben cuando se activa un flujo de trabajo y se dan de baja cuando se desactiva.

  1. 1

    Suscribirse

    La herramienta llama a POST /v1/webhooks/subscriptions con la dirección de entrega y los tipos de eventos que quiere. Guarda el id y el secreto de firma de la respuesta.
  2. 2

    Recibir eventos

    Kadens envía cada evento que coincide a esa dirección como un POST firmado. Verifica la firma con el secreto antes de confiar en el payload.
  3. 3

    Darse de baja

    Cuando se desactiva el flujo de trabajo, la herramienta llama a DELETE /v1/webhooks/subscriptions/:id con el id que guardó.

Las suscripciones creadas de esta forma aparecen como solo lectura en tu panel, marcadas con la integración que las gestiona.

Cómo verificar firmas

¿Y ahora qué?

Abrir en el panel

¿Te ha resultado útil?

Anterior
Asistentes de IA (MCP)

En esta página

  1. Resumen
  2. Autenticación
  3. Errores
  4. Límites de peticiones
  5. Endpoints
  6. REST hooks para integraciones
  7. ¿Y ahora qué?