Plugin: Spoolman API

Das Spoolman API-Plugin stellt eine vollständig Spoolman-kompatible REST-API bereit, die auf das interne Datenmodell von FilaMan abgebildet wird. Externe Tools wie Moonraker, OctoPrint und andere können FilaMan damit als Drop-in-Ersatz für Spoolman nutzen. Im Gegensatz zu Spoolman selbst enthält dieses Plugin eine IP-basierte Zugriffskontrolle — eine Sicherheitsebene, die in Spoolman fehlt.

Installation:Admin: Plugin-Verwaltung


Übersicht

Eigenschaft Wert
Plugin-Typ Integration
Autor FilaMan
Quelle Fire-Devils/filaman-plugins (Registry)
API-Pfad /spoolman/api/v1/
Fähigkeiten Spoolman API v1-Kompatibilität, CRUD-Operationen, CSV/JSON-Export, IP-Zugriffskontrolle

Was ist Spoolman?

Spoolman ist eine verbreitete Open-Source-Software zur Verwaltung von 3D-Drucker-Filamenten. Viele Tools im 3D-Druck-Ökosystem (z. B. Moonraker, OctoPrint) unterstützen die Spoolman-API, um Filament-Verbrauch zu tracken und Spulen zu verwalten.

Mit diesem Plugin kann FilaMan anstelle von Spoolman eingesetzt werden, ohne dass externe Tools umkonfiguriert werden müssen — sie sprechen einfach die gleiche API.


Konfiguration externer Tools

Moonraker (Klipper)

Tragen Sie in Ihrer moonraker.conf folgendes ein:

[spoolman]
server: http://<filaman-host>:8000/spoolman

Ersetzen Sie <filaman-host> durch die IP-Adresse oder den Hostnamen Ihrer FilaMan-Installation.

OctoPrint

Verwenden Sie in den Spoolman-Plugin-Einstellungen von OctoPrint die URL:

http://<filaman-host>:8000/spoolman

Andere Tools

Jedes Tool, das die Spoolman-API unterstützt, kann mit der gleichen URL konfiguriert werden:

http://<filaman-host>:8000/spoolman/api/v1/

IP-Zugriffskontrolle

Das Plugin bietet eine IP-basierte Zugriffskontrolle, mit der Sie einschränken können, welche Geräte auf die Spoolman-API zugreifen dürfen.

Einstellungen

Die Einstellungen finden Sie auf der Plugin-Seite im Admin-Bereich unter Spoolman API.

Einstellung Beschreibung
IP-Filter aktiviert Schaltet die IP-Zugriffskontrolle ein/aus. Standardmäßig deaktiviert (alle IPs erlaubt).
Erlaubte IPs Liste der erlaubten IP-Adressen oder Bereiche

Unterstützte IP-Formate

Format Beispiel Beschreibung
Wildcard * Alle IPs erlauben
Einzelne IP 192.168.1.5 Exakte IP-Adresse
CIDR-Bereich 192.168.1.0/24 Gesamtes Subnetz
Großer Bereich 10.0.0.0/8 Großer Netzwerkbereich

Hinweis: Wenn der IP-Filter aktiviert ist und eine nicht erlaubte IP zugreift, wird der Zugriff mit HTTP 403 (Forbidden) abgelehnt.


API-Endpunkte

Alle Spoolman-Endpunkte sind unter dem Pfad /spoolman/api/v1/ verfügbar:

System

Methode Pfad Beschreibung
GET /info API-Informationen
GET /health Health-Check

Hersteller (Vendors)

Methode Pfad Beschreibung
GET /vendor Alle Hersteller auflisten
POST /vendor Neuen Hersteller erstellen
GET /vendor/{id} Hersteller abrufen
PATCH /vendor/{id} Hersteller aktualisieren
DELETE /vendor/{id} Hersteller löschen

Filamente

Methode Pfad Beschreibung
GET /filament Alle Filamente auflisten
POST /filament Neues Filament erstellen
GET /filament/{id} Filament abrufen
PATCH /filament/{id} Filament aktualisieren
DELETE /filament/{id} Filament löschen

Spulen (Spools)

Methode Pfad Beschreibung
GET /spool Alle Spulen auflisten
POST /spool Neue Spule erstellen
GET /spool/{id} Spule abrufen
PATCH /spool/{id} Spule aktualisieren
DELETE /spool/{id} Spule löschen
PUT /spool/{id}/use Filament von Spule verbrauchen
PUT /spool/{id}/measure Spulengewicht messen

Weitere Endpunkte

Methode Pfad Beschreibung
GET /material Materialtypen auflisten
GET /location Lagerorte auflisten
PATCH /location/{name} Lagerort umbenennen
GET /setting/{key} Einstellung abrufen
POST /setting/{key} Einstellung setzen

Export

Methode Pfad Beschreibung
GET /export/spools Spulen exportieren (CSV/JSON)
GET /export/filaments Filamente exportieren (CSV/JSON)
GET /export/vendors Hersteller exportieren (CSV/JSON)
POST /backup Backup erstellen

Daten-Mapping

Die Spoolman-API-Begriffe werden intern auf das FilaMan-Datenmodell abgebildet:

Spoolman-Begriff FilaMan-Entsprechung
Vendor Hersteller (Manufacturer)
Filament Filament
Spool Spule (Spool)
Location Lagerort (Location)
Extra Fields Zusatzfelder (Custom Fields)

Zurück: Plugin: SpoolmanDB Import | Weiter: Weitere Plugins →