v1.0

Referencia API

Todo lo que necesitas para integrar Reviewlee en tu aplicación. Gestiona reseñas, formularios, webhooks y más a través de la API REST.

Introducción

La API de Reviewlee es una API RESTful que te permite gestionar programáticamente todos los aspectos de tu infraestructura de reseñas. Todos los endpoints están versionados bajo /api/v1/ y devuelven respuestas JSON.

  • Endpoints RESTful con cuerpos de solicitud/respuesta JSON
  • Autenticación con clave API con alcances granulares (lectura, escritura, admin)
  • Endpoints de lista paginados con formato meta consistente
  • Soporte de webhooks para notificaciones de eventos en tiempo real

URL base

Todas las solicitudes API deben realizarse a la siguiente URL base. Todos los endpoints requieren el prefijo /api/v1/.

https://api.reviewlee.com/api/v1

La API está versionada mediante la ruta URL. La versión actual es v1. Anunciaremos la descontinuación de versiones anteriores con anticipación.

Autenticación

Autentica las solicitudes API usando autenticación Bearer con tu clave API de organización. Las claves comienzan con rk_ y están asociadas a una sola organización.

Nunca expongas las claves API en código del lado del cliente. Usa solicitudes del lado del servidor o variables de entorno. Las claves se generan en Panel → Claves API.

curl -X GET https://api.reviewlee.com/api/v1/reviews \
  -H "Authorization: Bearer rk_your_api_key_here"

Alcances de clave API

  • read Acceso de solo lectura a reseñas, formularios y datos de organización
  • write Crear y modificar reseñas, formularios, exportaciones y webhooks
  • admin Acceso completo incluyendo facturación, gestión de miembros y rotación de claves

Límites de velocidad

Las solicitudes API tienen límites de velocidad por clave API. Las cabeceras de límite se incluyen en cada respuesta para ayudarte a controlar el uso.

CabeceraDescripción
X-RateLimit-LimitMáximo de solicitudes permitidas por ventana
X-RateLimit-RemainingSolicitudes restantes en la ventana actual
X-RateLimit-ResetMarca de tiempo Unix cuando se reinicia la ventana actual

Paginación

Todos los endpoints de lista soportan paginación mediante los parámetros page y limit. Las respuestas incluyen un objeto meta con el total y la información de página.

// Paginated response format
{
  "data": [...],
  "meta": {
    "total": 47,
    "page": 1,
    "limit": 20,
    "totalPages": 3
  }
}

// Query parameters
GET /api/v1/reviews?page=2&limit=10

Reseñas

Las reseñas son el recurso principal. Lista, consulta, modera y envía reseñas. Las reseñas no se pueden eliminar — solo ocultar mediante moderación con registro de auditoría.

GET/api/v1/organizations/:orgId/reviewsListar todas las reseñas (paginadas, filtrables)
GET/api/v1/organizations/:orgId/reviews/:idObtener una reseña por ID
PATCH/api/v1/organizations/:orgId/reviews/:id/moderateOcultar o mostrar una reseña (moderación)
POST/api/v1/reviewsEnviar una nueva reseña (público, sin auth)

Ejemplo de respuesta

{
  "id": "cm...",
  "rating": 5,
  "title": "Excellent service",
  "content": "Great experience with the product!",
  "reviewer_name": "Jane Doe",
  "reviewer_email": "[email protected]",
  "verification_status": "verified",
  "is_hidden": false,
  "created_at": "2026-01-15T12:00:00Z",
  "form_id": "cm..."
}

Formularios de reseñas

Los formularios definen cómo se recopilan las reseñas. Configura modos de verificación, campos personalizados y enlaces públicos de envío.

GET/api/v1/organizations/:orgId/review-formsListar todos los formularios
POST/api/v1/organizations/:orgId/review-formsCrear un nuevo formulario
GET/api/v1/organizations/:orgId/review-forms/:idObtener detalles del formulario
PATCH/api/v1/organizations/:orgId/review-forms/:idActualizar configuración del formulario
DELETE/api/v1/organizations/:orgId/review-forms/:idEliminar un formulario

Organizaciones

Gestiona la configuración de la organización, miembros del equipo e invitaciones. Todos los datos están asociados a la organización de tu clave API.

GET/api/v1/organizations/:orgIdObtener detalles de la organización
PATCH/api/v1/organizations/:orgIdActualizar configuración de la organización
GET/api/v1/organizations/:orgId/membersListar miembros del equipo
POST/api/v1/organizations/:orgId/invitationsInvitar a un miembro del equipo

Exportaciones

Exporta datos de reseñas como CSV o JSON. Las exportaciones se ejecutan de forma asíncrona — crea un trabajo y luego descárgalo cuando esté listo.

POST/api/v1/organizations/:orgId/exportsCrear un trabajo de exportación
GET/api/v1/organizations/:orgId/exportsListar trabajos de exportación
GET/api/v1/organizations/:orgId/exports/:idObtener estado del trabajo de exportación
GET/api/v1/organizations/:orgId/exports/:id/downloadDescargar archivo de exportación
// Create an export job
POST /api/v1/organizations/:orgId/exports
{
  "format": "csv",   // "csv" or "json"
  "filters": {
    "startDate": "2026-01-01",
    "endDate": "2026-02-01"
  }
}

Webhooks

Recibe notificaciones en tiempo real cuando ocurren eventos en tu organización. Los payloads de webhooks están firmados con HMAC-SHA256 para verificación.

POST/api/v1/organizations/:orgId/webhooksRegistrar un endpoint de webhook
GET/api/v1/organizations/:orgId/webhooksListar webhooks registrados
DELETE/api/v1/organizations/:orgId/webhooks/:idEliminar un webhook
POST/api/v1/organizations/:orgId/webhooks/:id/testEnviar un evento de prueba

Eventos soportados

  • review.createdSe ha enviado una nueva reseña
  • review.moderatedUna reseña fue ocultada o mostrada
  • review.verifiedEl estado de verificación de una reseña cambió
  • export.completedUn trabajo de exportación terminó de procesarse
// Webhook payload example
{
  "event": "review.created",
  "timestamp": "2026-02-15T10:30:00Z",
  "data": {
    "id": "cm...",
    "rating": 5,
    "content": "Amazing product!",
    "reviewer_name": "John Smith"
  }
}

// Verify HMAC signature
const signature = request.headers["x-webhook-signature"];
const expected = crypto
  .createHmac("sha256", webhookSecret)
  .update(JSON.stringify(body))
  .digest("hex");

Widget embebido

Incrusta tus reseñas en cualquier sitio web con un widget JavaScript ligero. Soporta diseños de lista, cuadrícula y carrusel con temas claro y oscuro.

GET/api/v1/public/embed/:slugObtener configuración de embed para una empresa
GET/api/v1/public/reviews/:slugObtener reseñas públicas para visualización embed
<!-- Embed reviews on any website -->
<div id="reviewlee-widget" data-slug="your-business-slug"></div>
<script src="https://www.reviewlee.com/embed.js"></script>

Perfiles públicos

Los perfiles de empresa públicos son páginas indexadas por SEO que muestran reseñas con calificaciones agregadas. Gestiona la configuración del perfil y accede a datos públicos.

GET/api/v1/organizations/:orgId/public-profileObtener configuración del perfil (autenticado)
PATCH/api/v1/organizations/:orgId/public-profileActualizar configuración del perfil
GET/api/v1/public/profiles/:slugObtener datos del perfil público (sin auth)
GET/api/v1/public/profiles/:slug/reviewsObtener reseñas públicas paginadas

Claves API

Crea, lista, rota y revoca claves API para tu organización. Las claves tienen alcances de lectura, escritura o admin.

POST/api/v1/organizations/:orgId/api-keysGenerar una nueva clave API
GET/api/v1/organizations/:orgId/api-keysListar claves API activas (solo prefijo)
DELETE/api/v1/organizations/:orgId/api-keys/:idRevocar una clave API
POST/api/v1/organizations/:orgId/api-keys/:id/rotateRotar una clave (nueva clave, antigua desactivada)

La clave API completa solo se muestra una vez al crearla. Guárdala de forma segura — no se puede recuperar después.

Verificación

Verifica reseñas usando múltiples métodos. Cada formulario puede configurarse con un modo de verificación específico.

POST/api/v1/organizations/:orgId/verification/verifyVerificar una reseña (email o comprobante de compra)
POST/api/v1/organizations/:orgId/verification/approveAprobar manualmente una reseña
POST/api/v1/organizations/:orgId/verification/rejectRechazar una reseña (modo manual)

Modos de verificación

  • email Enlace de verificación automático enviado por email al reseñador
  • purchase_proof El reseñador envía ID de pedido validado contra datos del negocio
  • manual Reseña pendiente de aprobación manual del negocio
  • none Sin verificación requerida (envíos abiertos)

Solicitudes de reseñas

Automatiza la recopilación de reseñas enviando solicitudes por email a clientes. Soporte para envíos individuales y masivos con seguimiento de entrega.

POST/api/v1/organizations/:orgId/review-requestsEnviar una solicitud de reseña por email
POST/api/v1/organizations/:orgId/review-requests/bulkEnviar solicitudes masivas de reseñas
GET/api/v1/organizations/:orgId/review-requestsListar solicitudes de reseñas (paginadas)
GET/api/v1/organizations/:orgId/review-requests/:idObtener detalles y estado de entrega de la solicitud
GET/api/v1/organizations/:orgId/review-requests/statsObtener estadísticas agregadas de solicitudes

Manejo de errores

La API usa códigos HTTP convencionales. Los códigos 2xx indican éxito, 4xx errores del cliente y 5xx errores del servidor.

CódigoDescripción
200OK — Solicitud exitosa
201Creado — Recurso creado exitosamente
400Solicitud incorrecta — Cuerpo o parámetros inválidos
401No autorizado — Clave API inválida o faltante
403Prohibido — Permisos insuficientes para esta acción
404No encontrado — El recurso no existe
409Conflicto — El recurso ya existe o conflicto de estado
422Entidad no procesable — La validación falló
429Demasiadas solicitudes — Límite de velocidad excedido
500Error interno del servidor — Algo salió mal de nuestro lado
// Error response format
{
  "statusCode": 401,
  "message": "Invalid or expired API key",
  "error": "Unauthorized"
}

Explorador de API interactivo

Prueba los endpoints de la API directamente en tu navegador con nuestro explorador interactivo basado en Swagger. Autentícate con tu clave API y realiza solicitudes en vivo.

🔬

Swagger UI

Explora todos los endpoints, visualiza esquemas de solicitud/respuesta y prueba llamadas API de forma interactiva.

Abrir explorador API