API i integracje
Integruj Xcellerate RMM z narzędziami PSA, platformami dokumentacji i własnymi przepływami pracy przez REST API.
Przegląd
Xcellerate RMM udostępnia kompleksowe REST API, które pozwala programistycznie odczytywać i zapisywać niemal każdy zasób platformy — punkty końcowe, grupy, poprawki, skrypty, alerty, użytkowników i więcej. API używa formatu JSON przez HTTPS i stosuje standardowe konwencje REST.
Oprócz surowego API, Xcellerate zawiera wbudowane konektory integracji dla popularnych narzędzi PSA (Professional Services Automation) i dokumentacji. Konektory synchronizują dane dwukierunkowo, więc nie musisz budować niestandardowych integracji dla typowych przepływów pracy.
Kluczowe pojęcia
- Klucz API — token używany do uwierzytelniania żądań API. Generowany per użytkownik ze strony administracji. Dołącz go w nagłówku
Authorization: Bearer <key>. - Endpoint REST — ścieżka URL mapowana na zasób (np.
GET /api/v1/endpointszwraca wszystkie punkty końcowe,POST /api/v1/scripts/{id}/runuruchamia skrypt). - Webhook — adres URL callback, który Xcellerate wywołuje, gdy wystąpi określone zdarzenie (np. alert wywołany, poprawka zainstalowana, punkt końcowy zarejestrowany). Używaj webhooków do wyzwalania zewnętrznych przepływów pracy w czasie rzeczywistym.
- Konektor integracji — gotowy most do narzędzia zewnętrznego (ConnectWise, Autotask, HaloPSA, IT Glue, Hudu). Konfigurowany za pomocą danych uwierzytelniających i reguł synchronizacji.
- Limit zapytań — API wymusza limit 60 żądań na minutę na klucz API. Przekroczenie zwraca odpowiedź
429 Too Many Requests.
Instrukcja krok po kroku
Wygeneruj klucz API
Przejdź do Administration → API keys → New key. Nazwij klucz (np. „PSA sync"), wybierz użytkownika, do którego należy, i zakres uprawnień (pełny dostęp lub tylko do odczytu). Kliknij Generate. Skopiuj klucz natychmiast — jest wyświetlany tylko raz.
Przeglądaj dokumentację API
Przejdź do Administration → API → Documentation (lub odwiedź https://your-server/api/docs). Interaktywna dokumentacja wymienia każdy endpoint z przykładami żądań/odpowiedzi i przyciskiem Try it.
Wykonaj pierwsze wywołanie API
Użyj dowolnego klienta HTTP (curl, Postman, Twój ulubiony język). Przykład: curl -H "Authorization: Bearer YOUR_KEY" https://your-server/api/v1/endpoints zwraca tablicę JSON wszystkich punktów końcowych.
Ustaw webhook
Przejdź do Administration → Webhooks → New webhook. Wprowadź docelowy URL, wybierz zdarzenia do subskrypcji (np. alert.created, endpoint.enrolled) i opcjonalnie dodaj sekret do weryfikacji podpisu. Zapisz.
Skonfiguruj konektor PSA
Przejdź do Administration → Integrations. Kliknij konektor dla Twojego narzędzia PSA (np. ConnectWise Manage). Wprowadź URL API, dane uwierzytelniające i reguły mapowania (które pola Xcellerate odpowiadają którym polom PSA). Kliknij Test connection, a następnie Enable sync.
Przykład: tworzenie punktu końcowego przez 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"]
}'Wskazówki i najlepsze praktyki
- Twórz osobne klucze API dla każdej integracji lub skryptu — jeśli jeden zostanie skompromitowany, możesz go unieważnić bez wpływu na inne.
- Używaj zakresu tylko do odczytu dla kluczy, które potrzebują jedynie pobierać dane (raportowanie, dashboardy).
- Implementuj weryfikację podpisu webhooka po stronie odbierającej, aby zapobiec sfałszowanym zdarzeniom.
- Przestrzegaj limitu zapytań (60 żądań/min). Dla operacji masowych używaj endpointów batch lub dodaj opóźnienie między żądaniami.
- Testuj mapowania konektora PSA w środowisku sandbox/testowym przed włączeniem synchronizacji w produkcji, aby uniknąć zduplikowanych zgłoszeń.
- Monitoruj log dostarczeń webhooków pod kątem nieudanych dostarczeń — mogą wskazywać, że serwer odbierający jest niedostępny lub odrzuca ładunki.
?page=1&per_page=50. Zawsze używaj paginacji przy pobieraniu dużych zbiorów danych, aby uniknąć przekroczenia limitu czasu.