snipe-it

n8n Community Node for the Snipe-IT asset management API

Package Information

Released: 1 mo ago
Downloads: 0 weekly / 0 monthly
Latest Version: 0.3.5
Author: Pascal

Documentation

n8n-nodes-snipe-it

Eine Community Node für die Integration von Snipe-IT in selbst
gehostete n8n-Instanzen.

Mit der Node können Assets, Modelle, Benutzer, Zubehör, Komponenten, Verbrauchsmaterialien,
Lizenzen und Organisationsdaten aus Snipe-IT in n8n-Workflows gelesen und verwaltet werden.
Zusätzlich kann der Snipe-IT Trigger neue Aktivitäten erkennen und dadurch Workflows
automatisch starten.

Enthaltene Nodes

Das Paket installiert genau zwei Nodes:

  • Snipe-IT – eine zentrale Aktions- und Triggernode mit auswählbaren Ressourcen und Operationen

Alle Aktionsbereiche befinden sich übersichtlich in der Resource-Auswahl der Snipe-IT-Node.
Es werden keine separaten Nodes für jede Ressource installiert.

Voraussetzungen

  • eine selbst gehostete n8n-Instanz mit aktivierten Community Nodes
  • eine erreichbare Snipe-IT-Installation mit aktivierter JSON REST API
  • ein Snipe-IT Personal Access Token
  • ausreichende Berechtigungen für die gewünschten Lese- oder Schreiboperationen

Installation über n8n

Die Installation erfolgt vollständig über die n8n-Weboberfläche.

  1. Melde dich in deiner n8n-Instanz an.

  2. Öffne links unten Settings.

  3. Öffne Community Nodes.

  4. Wähle Install a community node.

  5. Gib diesen Paketnamen ein:

    @pascalj-j/n8n-nodes-snipe-it
    
  6. Bestätige gegebenenfalls den Hinweis zur Verwendung von Community Nodes.

  7. Klicke auf Install.

  8. Warte, bis n8n die erfolgreiche Installation bestätigt.

  9. Starte n8n neu, falls die Oberfläche dazu auffordert.

Installation kontrollieren

  1. Erstelle oder öffne einen Workflow.
  2. Klicke auf Add node.
  3. Suche nach Snipe-IT.

Danach müssen folgende Einträge erscheinen:

Snipe-IT

Wenn die Nodes nach der Installation nicht angezeigt werden, lade die n8n-Seite zunächst neu.
Falls sie weiterhin fehlen, starte die n8n-Instanz neu und kontrolliere anschließend erneut die
Seite Settings → Community Nodes.

Credentials einrichten

Die Node verwendet die Bearer-Token-Authentifizierung von Snipe-IT. Der Token wird ausschließlich
im n8n Credential-System gespeichert und muss nicht als Workflow-Parameter eingetragen werden.

Personal Access Token in Snipe-IT erstellen

  1. Melde dich in Snipe-IT mit dem Benutzer an, den n8n verwenden soll.
  2. Öffne die Option API-Schlüssel Verwalten dieses Benutzers.
  3. Erstelle einen Personal Access Token.
  4. Kopiere den erzeugten Token und bewahre ihn sicher auf.

Der Token besitzt dieselben Berechtigungen wie der zugehörige Snipe-IT-Benutzer. Für eine sichere
Einrichtung empfiehlt sich ein eigener Integrationsbenutzer mit möglichst wenigen notwendigen
Rechten.

Credential in n8n anlegen

  1. Öffne in n8n Credentials.

  2. Wähle Create Credential.

  3. Suche nach Snipe-IT API.

  4. Trage unter Snipe-IT Base URL die vollständige URL deiner Snipe-IT-Installation ein.

    Beispiel:

    https://snipeit.example.com
    
  5. Trage den Personal Access Token unter API Token ein.

  6. Klicke auf Save.

  7. Führe den Credential-Test aus.

Ein abschließender Schrägstrich und ein versehentlich angehängtes /api/v1 werden von der Node
normalisiert. Beim Verbindungstest wird nur ein lesender Request ausgeführt; Snipe-IT-Daten werden
dabei nicht verändert.

Schnellstart

  1. Füge einem Workflow die Node Snipe-IT hinzu.
  2. Wähle das zuvor erstellte Credential.
  3. Wähle eine Resource, beispielsweise Asset.
  4. Wähle eine Operation, beispielsweise Search Asset.
  5. Fülle die angezeigten Felder aus.
  6. Klicke auf Execute step.

Die Ergebnisse werden als normale n8n Items ausgegeben. Listen liefern ein Item pro Datensatz und
können unmittelbar mit Nodes wie Loop Over Items, IF, Filter, Code oder
Tabellen-Nodes weiterverarbeitet werden.

Ressourcen und Operationen

Asset

  • Assets eines Benutzers abrufen
  • Asset anhand ID, Seriennummer oder Asset-Tag suchen
  • Assets nach Kategorie und Modell abrufen
  • nicht zugeordnete Assets abrufen
  • Assets nach Standort, Firma oder Abteilung abrufen
  • Asset einem Benutzer zuordnen (Checkout)
  • Asset zurücknehmen (Check-in)
  • Asset erstellen
  • Asset aktualisieren
  • Asset-Status ändern
  • Asset-Historie abrufen
  • Custom Fields lesen
  • ein oder mehrere Custom Fields setzen
  • Asset löschen

Der Asset-Tag ist beim Erstellen optional, wenn die automatische Asset-Tag-Vergabe in Snipe-IT
aktiviert ist. Ein nicht ausgefüllter Asset-Tag wird vollständig aus dem API-Request weggelassen.

Über Add Options → Include Model Information können Asset-Ergebnisse um die vollständigen
verfügbaren Modelldaten ergänzt werden. Die Node verwendet dafür einen Cache pro Ausführung: Wenn
viele Assets dasselbe Modell verwenden, wird das Modell nur einmal von Snipe-IT geladen.

Model

  • einzelnes Modell abrufen
  • Modelle nach Kategorie filtern
  • alle Assets eines Modells abrufen
  • Modell erstellen
  • Modell aktualisieren
  • Modell löschen

Über Add Options → Include Extended Information können zusätzliche, tatsächlich von Snipe-IT
gelieferte Informationen ergänzt werden, beispielsweise Hersteller, Kategorie, Modellnummer,
Fieldset-Daten und Asset-Anzahl.

Vor dem Löschen prüft die Node, ob noch Assets mit dem Modell verbunden sind. Die abschließende
Validierung und Berechtigungsprüfung erfolgt durch Snipe-IT.

User

  • Benutzer anhand ID, Name, Benutzername oder E-Mail-Adresse suchen
  • Benutzer erstellen
  • Benutzer aktualisieren
  • Benutzer löschen
  • Benutzer aktivieren
  • Benutzer deaktivieren

Bei einer Aktualisierung werden nur die ausdrücklich angegebenen Felder übertragen. Liefert eine
Suche mehrere mögliche Benutzer, wählt die Node nicht automatisch einen beliebigen Treffer aus.

Accessory

  • Zubehör suchen
  • Zubehör erstellen
  • Zubehör an einen Benutzer ausgeben
  • Zubehör von einem Benutzer zurücknehmen

Component

  • Komponenten suchen
  • Komponenten erstellen
  • Komponenten einem Asset zuordnen
  • zugeordnete Assets einer Komponente abrufen

Consumable

  • Verbrauchsmaterial und Bestand abrufen
  • Verbrauchsmaterial an einen Benutzer ausgeben

License

  • Softwarelizenzen suchen
  • Lizenz-Seats abrufen
  • Seat einem Benutzer zuweisen
  • Seat einem Asset zuweisen
  • Seat zurücknehmen

Organization

Folgende Bereiche stehen zur Verfügung:

  • Companies
  • Departments
  • Locations
  • Manufacturers
  • Categories
  • Status Labels

Companies, Departments, Locations, Manufacturers und Categories unterstützen – soweit von der
Snipe-IT API bereitgestellt und erlaubt – Abrufen, Erstellen, Aktualisieren und Löschen. Status
Labels können abgerufen und in den passenden Feldern dynamisch ausgewählt werden.

Dynamische Auswahlfelder

Die Node lädt Auswahlwerte direkt aus der verbundenen Snipe-IT-Instanz. Dazu gehören unter
anderem:

  • Kategorien
  • Modelle
  • Hersteller
  • Status Labels
  • Benutzer
  • Lieferanten
  • Standorte

Modelle werden passend zur zuvor ausgewählten Kategorie gefiltert. In der Modellauswahl erscheinen
nur Asset Models und nicht jedes einzelne Asset oder jede Seriennummer.

Bei großen Benutzerlisten verwendet die Node eine Suchauswahl, damit nicht tausende Einträge auf
einmal in die n8n-Oberfläche geladen werden müssen.

Pagination

Listenoperationen unterstützen automatische Pagination. Eine einzelne API-Anfrage respektiert die
Seitengröße der Snipe-IT API, während die Node weitere Seiten automatisch über den Offset lädt.

  • Return All = true lädt alle verfügbaren Datensätze.
  • Return All = false berücksichtigt das eingestellte Gesamtlimit.
  • Ein Gesamtlimit darf größer als die Seitengröße einer einzelnen API-Anfrage sein.
  • Jeder Datensatz wird als eigenes n8n Item ausgegeben.

Damit können auch Bestände mit deutlich mehr als 500 Assets verarbeitet werden.

Snipe-IT Trigger

Der Snipe-IT Trigger verwendet Polling auf dem Snipe-IT Activity Report. Es handelt sich nicht
um einen Webhook; neue Ereignisse werden deshalb beim nächsten konfigurierten Polling-Lauf erkannt.

Unterstützte Ereignisgruppen:

  • Any Activity
  • Asset Created
  • Asset Updated
  • Asset Deleted
  • Asset Status Changed
  • Asset Checkout
  • Asset Check-in
  • User Created or Updated
  • Model Created or Updated

Trigger verwenden

  1. Erstelle einen neuen Workflow.
  2. Füge Snipe-IT Trigger hinzu.
  3. Wähle das Snipe-IT Credential.
  4. Lege unter Poll Times das Prüfintervall fest.
  5. Wähle unter Events ein oder mehrere Ereignisse.
  6. Verbinde den Trigger mit den nachfolgenden Workflow-Nodes.
  7. Speichere und aktiviere den Workflow.

Beim ersten automatischen Lauf speichert der Trigger die neueste vorhandene Activity-ID als
Ausgangspunkt. Bereits vorhandene historische Aktivitäten lösen deshalb nicht rückwirkend neue
Executions aus. Danach werden neuere Activity-IDs verarbeitet und dasselbe Event nicht bei jedem
Polling-Zyklus erneut ausgegeben.

Asset Status Changed wertet das von Snipe-IT gelieferte Änderungsobjekt aus. Dadurch ist die
Erkennung nicht ausschließlich von einem bestimmten oder lokalisierten Action-Text abhängig.

Beispielausgabe

Ein Asset kann beispielsweise als folgendes n8n Item ausgegeben werden:

{
  "assetId": 123,
  "assetTag": "NB-00123",
  "serial": "ABC123456",
  "deviceName": "NB-MAX-01",
  "model": "Dell Latitude 5440",
  "category": "Notebook",
  "manufacturer": "Dell",
  "status": "Ready to Deploy",
  "assignedUser": "Max Mustermann",
  "assignedUserId": 77
}

Zusätzlich zu vereinheitlichten Feldern bleiben relevante Originaldaten aus der Snipe-IT API im
Item erhalten. Nicht gesetzte optionale Snipe-IT-Felder verhindern die Ausgabe nicht.

Benötigte Berechtigungen

Die erforderlichen Rechte richten sich nach den verwendeten Operationen. Typische Beispiele:

  • Benutzer anzeigen für Credential-Test, Benutzersuche und Zuordnungen
  • Assets anzeigen für Such- und Listenoperationen
  • Assets erstellen oder bearbeiten für Create, Update und Statusänderungen
  • Checkout-/Check-in-Rechte für Zuordnung und Rücknahme
  • Assets löschen für Delete Asset
  • Leserechte für Modelle, Kategorien, Hersteller und Status Labels
  • entsprechende Rechte für Accessories, Components, Consumables und Licenses
  • entsprechende Create-, Update- oder Delete-Rechte für Organisationsdaten
  • Zugriff auf Activity Reports für den Trigger

Die genaue Bezeichnung der Rechte kann sich zwischen Snipe-IT-Versionen unterscheiden. Bei
aktiviertem Full Multiple Company Support können die sichtbaren Benutzer und Assets zusätzlich
eingeschränkt sein.

Fehlerbehandlung

Die Node gibt Snipe-IT-Fehler mit dem betroffenen Vorgang, HTTP-Status und der verfügbaren
API-Meldung an n8n weiter. Typische Fehler sind:

  • ungültiger oder abgelaufener API-Token
  • fehlende Berechtigung
  • Snipe-IT nicht erreichbar
  • Benutzer, Asset oder Modell nicht gefunden
  • mehrere mögliche Suchtreffer
  • fehlendes Pflichtfeld
  • API-Validierungsfehler
  • Asset oder Modell kann nicht gelöscht werden

API-Tokens werden nicht in Node-Ausgaben oder absichtlich erzeugten Fehlermeldungen ausgegeben.
Wenn Continue On Fail aktiviert ist, wird der Fehler als n8n Item zurückgegeben; andernfalls
stoppt die Node die aktuelle Ausführung.

Häufige Probleme

Die Node erscheint nach der Installation nicht

  • n8n-Seite vollständig neu laden
  • unter Settings → Community Nodes kontrollieren, ob das Paket installiert ist
  • n8n-Instanz neu starten
  • prüfen, ob Community Nodes für die Instanz aktiviert sind

Der Credential-Test meldet 401

Der Token ist ungültig, abgelaufen oder wurde nicht vollständig kopiert. Erstelle bei Bedarf einen
neuen Personal Access Token in Snipe-IT.

Der Credential-Test meldet 403

Der Snipe-IT-Benutzer besitzt nicht die für den Test benötigte Leseberechtigung für Benutzer.

Dropdowns bleiben leer

Prüfe die Leserechte für die jeweilige Ressource, beispielsweise Categories, Models,
Manufacturers, Status Labels, Users oder Locations.

Der Trigger liefert beim manuellen Test keine Daten

Der manuelle Test benötigt mindestens eine sichtbare Aktivität im Snipe-IT Activity Report. Für
den echten Betrieb muss der Workflow gespeichert und aktiviert sein. Neue Aktivitäten werden erst
beim nächsten Polling-Lauf erkannt.

Sicherheit

  • Verwende möglichst einen eigenen Snipe-IT-Integrationsbenutzer.
  • Vergib nur die tatsächlich benötigten Rechte.
  • Speichere den Token ausschließlich im n8n Credential-System.
  • Trage Tokens niemals in normale Node-Felder, Workflow-Namen oder Fehlermeldungen ein.
  • Prüfe schreibende und löschende Operationen zunächst mit Testdaten.

Kompatibilität

Entwickelt und praktisch getestet mit:

  • n8n 2.21.7
  • Snipe-IT 8.7.2
  • Node.js 24

Andere Versionen können ebenfalls funktionieren. Der verfügbare Funktionsumfang und einzelne
Validierungsregeln werden letztlich von der eingesetzten Snipe-IT-Version und den Berechtigungen
des API-Benutzers bestimmt.

Support

Bei einer Fehlermeldung sollten folgende Angaben bereitgestellt werden:

  • Version von n8n-nodes-snipe-it
  • n8n-Version
  • Snipe-IT-Version
  • verwendete Resource und Operation
  • vollständige Fehlermeldung ohne Zugangsdaten

API-Tokens und Passwörter niemals veröffentlichen.

Discord: .passauf

Lizenz

MIT – siehe LICENSE.md.

Discussion