API et intégrations

Intégrez Xcellerate RMM à vos outils PSA, plateformes de documentation et workflows personnalisés via l'API REST.

Vue d'ensemble

Xcellerate RMM expose une API REST complète qui vous permet de lire et d'écrire par programmation presque toutes les ressources de la plateforme : endpoints, groupes, correctifs, scripts, alertes, utilisateurs, etc. L'API utilise JSON sur HTTPS et suit les conventions REST standard.

En plus de l'API brute, Xcellerate intègre des connecteurs d'intégration pour les outils PSA (Professional Services Automation) et de documentation les plus répandus. Ces connecteurs synchronisent les données dans les deux sens : vous n'avez donc pas à développer d'intégrations sur mesure pour les workflows courants.

1,24798.2%
Le navigateur de documentation de l'API avec la liste des points de terminaison et le panneau d'essai

Concepts clés

  • API key — un jeton servant à authentifier les requêtes API. Généré par utilisateur depuis la page Administration. Incluez-le dans l'en-tête Authorization: Bearer <key>.
  • REST endpoint — un chemin d'URL associé à une ressource (par ex. GET /api/v1/endpoints renvoie tous les endpoints, POST /api/v1/scripts/{id}/run exécute un script).
  • Webhook — une URL de rappel que Xcellerate appelle lorsqu'un événement précis se produit (par ex. alerte déclenchée, correctif installé, endpoint inscrit). Utilisez les webhooks pour déclencher des workflows externes en temps réel.
  • Integration connector — une passerelle prête à l'emploi vers un outil tiers (ConnectWise, Autotask, HaloPSA, IT Glue, Hudu). Se configure avec des identifiants et des règles de synchronisation.
  • Rate limit — l'API applique une limite de 60 requêtes par minute et par clé API. Au-delà, elle renvoie une réponse 429 Too Many Requests.

Pas à pas

1

Générer une clé API

Allez dans Administration → API keys → New key. Nommez la clé (par ex. "PSA sync"), sélectionnez l'utilisateur auquel elle appartient et choisissez la portée des autorisations (accès complet ou lecture seule). Cliquez sur Generate. Copiez la clé immédiatement : elle n'est affichée qu'une seule fois.

2

Explorer la documentation de l'API

Allez dans Administration → API → Documentation (ou ouvrez https://your-server/api/docs). La documentation interactive liste chaque point de terminaison avec des exemples de requête et de réponse, ainsi qu'un bouton Try it.

3

Effectuer votre premier appel API

Utilisez n'importe quel client HTTP (curl, Postman, votre langage préféré). Exemple : curl -H "Authorization: Bearer YOUR_KEY" https://your-server/api/v1/endpoints renvoie un tableau JSON de tous les endpoints.

4

Configurer un webhook

Allez dans Administration → Webhooks → New webhook. Saisissez l'URL de destination, sélectionnez les événements auxquels vous abonner (par ex. alert.created, endpoint.enrolled) et ajoutez éventuellement un secret pour la vérification de signature. Enregistrez.

5

Configurer un connecteur PSA

Allez dans Administration → Integrations. Cliquez sur le connecteur de votre outil PSA (par ex. ConnectWise Manage). Saisissez l'URL de l'API, les identifiants et les règles de correspondance (quels champs Xcellerate correspondent à quels champs PSA). Cliquez sur Test connection, puis sur Enable sync.

Configuration d'un webhook avec sélection des événements et journal de livraison

Exemple : créer un endpoint via l'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"]
  }'

Conseils et bonnes pratiques

  • Créez des clés API distinctes pour chaque intégration ou script : si l'une est compromise, vous pouvez la révoquer sans toucher aux autres.
  • Utilisez la portée lecture seule pour les clés qui doivent uniquement récupérer des données (rapports, tableaux de bord).
  • Mettez en place la vérification de signature des webhooks côté réception pour empêcher les événements usurpés.
  • Respectez la limite de débit (60 req/min). Pour les opérations en masse, utilisez les points de terminaison de traitement par lots ou ajoutez un délai entre les requêtes.
  • Testez les correspondances du connecteur PSA dans un environnement sandbox/de test avant d'activer la synchronisation en production, afin d'éviter les tickets en double.
  • Surveillez le journal de livraison des webhooks pour repérer les échecs : ils peuvent indiquer que le serveur de réception est hors service ou rejette les payloads.
L'API prend en charge la pagination via les paramètres de requête ?page=1&per_page=50. Paginez toujours lorsque vous récupérez de gros volumes de données afin d'éviter les délais d'expiration.