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.

1,24798.2%
Przeglądarka dokumentacji API z listą endpointów i panelem testowania

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/endpoints zwraca wszystkie punkty końcowe, POST /api/v1/scripts/{id}/run uruchamia 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

1

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.

2

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.

3

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.

4

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.

5

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.

Konfiguracja webhooka z wyborem zdarzeń i logiem dostarczeń

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.
API obsługuje paginację za pomocą parametrów ?page=1&per_page=50. Zawsze używaj paginacji przy pobieraniu dużych zbiorów danych, aby uniknąć przekroczenia limitu czasu.