API e integraciones

Integra Xcellerate RMM con herramientas PSA, plataformas de documentación y flujos de trabajo personalizados a través de la API REST.

Descripción general

Xcellerate RMM expone una API REST completa que te permite leer y escribir prácticamente cualquier recurso de la plataforma programáticamente — puntos finales, grupos, parches, scripts, alertas, usuarios y más. La API utiliza JSON sobre HTTPS y sigue las convenciones REST estándar.

Además de la API directa, Xcellerate incluye conectores de integración integrados para herramientas PSA (Automatización de Servicios Profesionales) y de documentación populares. Estos conectores sincronizan datos bidireccionalmente para que no tengas que construir integraciones personalizadas para flujos de trabajo comunes.

1,24798.2%
El explorador de documentación de la API con lista de endpoints y panel de pruebas

Conceptos clave

  • Clave API — un token utilizado para autenticar solicitudes a la API. Se genera por usuario desde la página de administración. Inclúyelo en el encabezado Authorization: Bearer <key>.
  • Endpoint REST — una ruta URL que mapea a un recurso (p. ej. GET /api/v1/endpoints devuelve todos los puntos finales, POST /api/v1/scripts/{id}/run ejecuta un script).
  • Webhook — una URL de callback que Xcellerate llama cuando ocurre un evento específico (p. ej. alerta disparada, parche instalado, punto final registrado). Usa webhooks para activar flujos de trabajo externos en tiempo real.
  • Conector de integración — un puente preconstruido a una herramienta de terceros (ConnectWise, Autotask, HaloPSA, IT Glue, Hudu). Se configura con credenciales y reglas de sincronización.
  • Límite de solicitudes — la API impone un límite de 60 solicitudes por minuto por clave API. Superarlo devuelve una respuesta 429 Too Many Requests.

Guía paso a paso

1

Genera una clave API

Ve a Administration → API keys → New key. Nombra la clave (p. ej. "PSA sync"), selecciona el usuario al que pertenece y elige el alcance de permisos (acceso completo o solo lectura). Haz clic en Generate. Copia la clave inmediatamente — se muestra solo una vez.

2

Explora la documentación de la API

Navega a Administration → API → Documentation (o visita https://your-server/api/docs). La documentación interactiva lista cada endpoint con ejemplos de solicitud/respuesta y un botón Try it.

3

Realiza tu primera llamada a la API

Usa cualquier cliente HTTP (curl, Postman, tu lenguaje favorito). Ejemplo: curl -H "Authorization: Bearer YOUR_KEY" https://your-server/api/v1/endpoints devuelve un array JSON de todos los puntos finales.

4

Configura un webhook

Ve a Administration → Webhooks → New webhook. Introduce la URL de destino, selecciona los eventos a suscribir (p. ej. alert.created, endpoint.enrolled) y opcionalmente agrega un secreto para verificación de firma. Guarda.

5

Configura un conector PSA

Navega a Administration → Integrations. Haz clic en el conector de tu herramienta PSA (p. ej. ConnectWise Manage). Introduce la URL de la API, las credenciales y las reglas de mapeo (qué campos de Xcellerate corresponden a qué campos del PSA). Haz clic en Test connection, luego en Enable sync.

Configuración de webhook con selección de eventos y registro de entregas

Ejemplo: crear un punto final vía API

curl -X POST https://your-server/api/v1/endpoints \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "hostname": "WS-LONDON-042",
    "group_id": "grp_abc123",
    "os": "Windows 11",
    "tags": ["london", "sales"]
  }'

Consejos y mejores prácticas

  • Crea claves API separadas para cada integración o script — si una se ve comprometida, puedes revocarla sin afectar a las demás.
  • Usa el alcance de solo lectura para claves que solo necesitan obtener datos (informes, paneles).
  • Implementa verificación de firma de webhook en el lado receptor para evitar eventos falsificados.
  • Respeta el límite de solicitudes (60 req/min). Para operaciones masivas, usa los endpoints batch o agrega un retraso entre solicitudes.
  • Prueba los mapeos del conector PSA en un entorno sandbox/de prueba antes de habilitar la sincronización en producción para evitar tickets duplicados.
  • Monitoriza el registro de entregas de webhooks en busca de entregas fallidas — pueden indicar que el servidor receptor está caído o rechazando cargas.
La API soporta paginación mediante parámetros ?page=1&per_page=50. Siempre usa paginación al obtener grandes conjuntos de datos para evitar tiempos de espera agotados.