Desarrolladores
Esta sección es para quien programa la integración de una marca o agencia: un TPV, una tienda online, un CRM o una web propia.
Qué puedes integrar
| Quiero… | Usa | Página |
|---|---|---|
| Consultar socios y movimientos de puntos desde mi TPV o backend | API pública /api/v1 | API pública |
| Crear y administrar programas, niveles, campañas, recompensas y cupones por API | API de gestión | API de gestión |
| Obtener tokens de corta duración en lugar de enviar la clave | OAuth2 client credentials | OAuth2 |
| Automatizar tareas del panel con una clave | Ámbitos de administración | Ámbitos de administración |
| Recibir un aviso en mi sistema cuando pasa algo en el programa | Webhooks salientes | Webhooks |
| Recibir los eventos en mi cola SQS o en un fichero diario en mi bucket | Cola SQS y export S3 | Eventos a tu cola o bucket |
| Desarrollar sin enviar mensajes ni mover dinero reales | Modo pruebas y claves mk_test_ | Modo pruebas |
| Probar la API desde Postman | Colección Postman | Colección Postman |
| Construir mi propia landing o portal con JavaScript | SDK de JavaScript | SDK JavaScript |
| Mostrar una campaña dentro de mi web y leer su ranking | Embed y ranking público | Embed de campaña |
| Publicar un juego HTML5 propio en el portal del socio | Juegos externos | Inicio rápido |
Autenticación con clave API
Las llamadas a /api/v1 van con una clave API de tu cuenta. Se envía en la cabecera Authorization:
Authorization: Bearer mk_xxxxxxxxxxxxxxxx
Las claves solo existen en cuentas de cliente: una clave de la cuenta anfitriona recibe 403.
Si prefieres no enviar la clave en cada llamada, cámbiala por un token de corta duración con OAuth2.
Crear una clave
- Entra en Administración › Claves API. Necesitas el permiso Claves API (
Pages.Administration.ApiKeys). - Pulsa Crear nueva clave de API.
- Rellena Nombre, Descripción y, si quieres, la fecha de caducidad (déjala vacía para que no caduque).
- Ajusta Límite de peticiones por hora. Por defecto son 1000.
- Opcional: limita IPs permitidas y Orígenes Permitidos (vacíos = cualquiera).
- Pulsa Guardar.

La clave completa solo se muestra una vez, al crearla. Si la pierdes, usa Regenerar: la anterior deja de funcionar al instante.
Ámbitos (scopes)
La API comprueba estos ámbitos. Una clave sin ámbitos tiene acceso completo.
| Ámbito | Permite |
|---|---|
read | Buscar socios, saldos, historial y validar cupones |
transactions:write | Registrar compras, acciones, canjes y ajustes de puntos |
coupons:write | Canjear cupones en caja |
El selector Ámbitos del formulario ofrece hoy otros valores (documents:read, credits:write…). La API pública solo reconoce los tres de la tabla: con una clave que lleve solo esos otros valores, cada llamada devuelve 403. Si no necesitas limitar la clave, deja Ámbitos vacío.
Los ámbitos de la API de gestión (programs:*, campaigns:*, rewards:*, coupons:read, coupons:manage, raffles:read) y los de administración (admin:*) no los recibe una clave sin ámbitos: hay que concederlos expresamente, y el formulario tampoco los ofrece (se asignan con la API de administración).
Límites
- Cada clave tiene topes por ráfaga (por segundo), por minuto y por hora, además de la cuota mensual de API de tu cuenta. Al superar cualquiera recibes
429conRetry-After: los segundos hasta que se reinicia la ventana que rechazó la petición (no siempre una hora). - Los errores devuelven
application/problem+jsoncon uncodeestable (y, por compatibilidad,errorcon el texto).
Entornos
Usa la misma clave y la misma ruta en cada entorno; solo cambia la dirección base. Pide a tu administrador la dirección de tu plataforma y no la escribas fija en el código.