Documentación de la API

Información detallada sobre cómo interactuar con nuestros endpoints públicos.

Endpoints de Licencias (/api)

POST
/api/validate-license
Endpoint PRINCIPAL para validar una clave de licencia contra una aplicación específica. Devuelve todos los detalles de la licencia si es válida y activa.

POST
/api/request-demo-license
Permite a un usuario final solicitar una licencia de demostración. La aplicación debe tener configurada una duración de demo.

Endpoints de Pago (Simulado) (/api/payments)

POST
/api/payments/mercadopago/simulate-payment
Simula un proceso de pago para una licencia existente, actualizando su estado a 'active' y extendiendo su expiración.

Notas sobre Tipos de Licencia y Validación
Consideraciones importantes para la integración con el endpoint /api/validate-license.

Licencias de tipo email_authentication (Prefijo EA-)

Para estas licencias, el endpoint /api/validate-license requiere que se envíe el campo email en el cuerpo de la solicitud. La API verificará si este correo electrónico está incluido en la lista de allowedEmails de la licencia. Si la validación es exitosa (isValid: true), la respuesta incluirá el arreglo allowedEmails.

Licencias de tipo demo_user_tenant (Prefijo DT-)

Estas licencias se generan vinculadas a un userId (que es el email del solicitante de la demo) y un tenantUrl. La validación principal en /api/validate-license se basa en la licenseKey y el appId. No es necesario enviar userId o tenantUrl en la solicitud de validación. Si la licencia es encontrada, válida y activa (isValid: true), la respuesta de la API incluirá los campos userId y tenantUrl almacenados en la licencia. La aplicación cliente es responsable de usar estos datos para realizar verificaciones adicionales (por ejemplo, si el usuario actualmente logueado en la aplicación cliente coincide con el userId de la licencia, o si la URL actual del tenant coincide con tenantUrl).

Licencias con Límite Numérico (Ej. user_limit, company_limit)

Para licencias que tienen un límite numérico (como UL- o CL-), si la licencia es válida, la respuesta incluirá el campo limitValue con el valor numérico correspondiente. La aplicación cliente debe implementar la lógica para respetar este límite.

Consideraciones Generales de la API

Todas las solicitudes a los endpoints listados deben usar el método POST y un Content-Type de application/json.

Los encabezados CORS están configurados para permitir solicitudes desde cualquier origen (*) para facilitar el desarrollo. En producción, esto debería restringirse a dominios específicos.

Asegúrate de manejar adecuadamente los diferentes códigos de estado HTTP y los cuerpos de respuesta de error en tu aplicación cliente.

Los prefijos de las claves de licencia (FS-, EA-, UL-, CL-, DT-) pueden ayudar a la aplicación cliente a anticipar qué tipo de validación o datos adicionales podrían ser necesarios o devueltos.