spicyapiDokumentation
Apps und Plugins
Hauptinhalt

n8n

Nutzen Sie die Bild-, Video-, Audio- und Chatmodelle von SpicyAPI in n8n-Workflows. Installieren Sie die Community-Node, importieren Sie die HTTP-Request-Vorlagen oder richten Sie die OpenAI-Credential von n8n für AI-Agent-Nodes auf SpicyAPI.

n8n ist ein Werkzeug zur Workflow-Automatisierung. SpicyAPI stellt ihm Bild-, Video-, Audio- und Chatmodelle hinter einer API und einem vorausbezahlten Guthaben bereit. Es gibt drei Wege, sie anzubinden, und sie lassen sich in einem Workflow mischen:

Sie möchten …Verwenden SieFunktioniert auf
Bilder, Video und Audio mit einer fertigen Node erzeugenDie SpicyAPI-Community-NodeSelbst gehostetem n8n
Medien auf n8n Cloud erzeugen oder ohne etwas zu installierenDie HTTP-Request-VorlagenSelbst gehostetem n8n und n8n Cloud
Chatmodelle in AI Agent, Basic LLM Chain und anderen KI-Nodes nutzenDie eingebaute OpenAI-Credential von n8n mit neuer Base URLSelbst gehostetem n8n und n8n Cloud

Alle drei nutzen dasselbe Konto, denselben Schlüssel, dieselben Modelle und dieselben Preise. Bei Medien prüfen die Node und die HTTP-Request-Vorlagen den Preis vor dem Absenden. Wird dieselbe angenommene Medienanfrage mit ihrem ursprünglichen Idempotency-Key erneut gesendet, kommt der bestehende Task zurück.

Für einen ersten Bild-Workflow lesen Sie den Leitfaden für NSFW-Bild-Workflows mit n8n: Modellauswahl, Bearbeitung einer Referenz, ein erstes Porträt und Kostenbeispiele. Die Schritte darunter verbinden den Workflow mit Ihrer n8n-Instanz.

Die Kurzfassung

  1. Erstellen Sie in der Konsole einen API-Schlüssel. Geben Sie ihm ein Tageslimit.
  2. Selbst gehostet: Öffnen Sie in n8n Settings > Community Nodes > Install, geben Sie @spicyapi/n8n-nodes-spicyapi ein und fügen Sie dann eine Credential SpicyAPI (spicyapi.ai) API hinzu.
  3. n8n Cloud: Importieren Sie eine Vorlage aus dem examples-Ordner der Node und geben Sie deren HTTP-Request-Nodes eine Bearer Auth-Credential.
  4. Chat in KI-Nodes: Erstellen Sie eine OpenAI-Credential mit der Base URL https://api.spicyapi.ai/v1 und Ihrem SpicyAPI-Schlüssel.

Bevor Sie anfangen

  • Ein API-Schlüssel. Erstellen Sie ihn in der Konsole; er beginnt mit sk-spicy-. Falls Sie noch kein Konto haben, siehe Konto einrichten.
  • Guthaben. Laden Sie vor der ersten Generierung im Bereich Billing der Konsole Guthaben auf. n8n-Workflows, Studio und API nutzen dasselbe Kontoguthaben. Wie die Abrechnung erfolgt, steht unter Abrechnung.
  • Ein Schlüssel pro Automatisierung. Workflows können weit häufiger laufen, als ein Mensch klickt. Erstellen Sie für n8n einen eigenen Schlüssel und setzen Sie ein Tages- oder Monatslimit darauf, damit ein Fehler in einer Schleife eine Obergrenze hat. Siehe Authentifizierung.
  • n8n kann api.spicyapi.ai erreichen. Die Aufrufe macht der n8n-Server, nicht Ihr Browser.

Option 1: die SpicyAPI-Community-Node

Die Node ist quelloffen (MIT) unter github.com/spicyapi-ai/n8n-nodes-spicyapi und auf npm als @spicyapi/n8n-nodes-spicyapi veröffentlicht. Sie hat keine Laufzeitabhängigkeiten und spricht nur mit api.spicyapi.ai.

Nur selbst gehostetes n8n

n8n Cloud kann nur Community-Nodes installieren, die n8n verifiziert hat, und diese ist nicht verifiziert. Verwenden Sie auf n8n Cloud die unten beschriebenen HTTP-Request-Vorlagen. Sie rufen dieselbe API auf.

Andere npm-Pakete haben ähnliche Namen, gehören aber zu fremden Diensten. Dieses hier ist das Paket namens @spicyapi/n8n-nodes-spicyapi, und seine Credential heißt SpicyAPI (spicyapi.ai) API.

Installieren

Das Paket installieren

Öffnen Sie in n8n Settings > Community Nodes, wählen Sie Install, geben Sie @spicyapi/n8n-nodes-spicyapi ein, setzen Sie das Häkchen, mit dem Sie die Installation nicht verifizierten Codes bestätigen, und bestätigen Sie. Sie müssen Instanzbesitzer oder Admin sein.

Für den Queue-Modus oder wenn Sie Nodes von Hand verwalten, führen Sie dies im n8n-Datenordner aus und starten Sie n8n neu:

cd ~/.n8n/nodes
npm install @spicyapi/n8n-nodes-spicyapi

Welche Optionen Ihre Umgebung unterstützt, steht in der Community-Nodes-Anleitung von n8n.

Die Credential hinzufügen

Erstellen Sie eine Credential SpicyAPI (spicyapi.ai) API:

FeldWert
API KeyIhr Schlüssel, beginnend mit sk-spicy-
Base URLLassen Sie https://api.spicyapi.ai unverändert

Beim Speichern der Credential wird der Schlüssel anhand Ihres Kontoguthabens geprüft.

Die Node zu einem Workflow hinzufügen

Suchen Sie im Node-Panel nach SpicyAPI, wählen Sie eine Ressource und eine Operation und dann die Credential.

Operationen

RessourceOperationWas sie tut
ImageGenerateText zu Bild, Bildbearbeitung, Hochskalieren, Hintergrundentfernung und andere Bildmodelle
VideoGenerateText zu Video, Bild zu Video und andere Videomodelle
AudioGenerateText-to-Speech, Musik, Transkription und andere Audiomodelle
TaskGetEine Aufgabe anhand ihrer ID lesen, optional auf sie warten und ihre Dateien herunterladen
FileUploadEine Binärdatei hochladen und eine spicy://-URI erhalten, die als Modelleingabe dient
ModelGet ManyDer Modellkatalog mit Preisen, filterbar nach Modalität und Stichwort
ModelGetEin Modell mit Eingabeschema und Beispielen
ModelGet QuoteDer genaue Preis einer Anfrage, ohne sie auszuführen
AccountGet BalanceVerfügbares, reserviertes und gesamtes Guthaben in US-Dollar
ChatMessage a ModelEine Chat-Completion von einem Textmodell

Bilder, Video und Audio erzeugen

Die drei Generate-Operationen haben dieselben Felder:

  1. Model. Wählen Sie aus der Liste, die die Modelle der gewählten Ressource mit ihrem Startpreis zeigt, oder geben Sie eine Modell-ID von Hand ein. Alle Modelle und ihre Parameter sind unter spicyapi.ai/models aufgeführt.
  2. Prompt. Die Haupttexteingabe des Modells. Bei Sprachmodellen ist das der zu sprechende Text. Lassen Sie sie bei Modellen ohne Prompt leer, etwa bei Upscalern.
  3. Media Inputs. Bilder, Videos oder Audio, die das Modell liest. Wählen Sie das Feld (die Liste zeigt die Dateieingaben des gewählten Modells) und verwenden Sie dann ein Binärfeld aus der vorherigen Node oder eine URL. Binärdateien werden automatisch zu SpicyAPI hochgeladen. Fügen Sie mehrere Eingaben für dasselbe Feld hinzu, um Listenfelder wie Referenzbilder zu füllen.
  4. Model Parameters. Ein aus dem Schema des gewählten Modells erzeugtes Formular: Seitenverhältnis, Auflösung, Dauer, Seed und so weiter. Leer gelassene Felder werden nicht gesendet, sodass das Modell seinen eigenen Standardwert verwendet.
  5. Additional Parameters (JSON). Alle weiteren Eingabefelder als JSON-Objekt. Sie überschreiben die obigen Felder.

Die Ausgabe enthält den Task-Datensatz (taskId, state, cost, settled, output). Mit eingeschaltetem Download Output, was die Voreinstellung ist, werden die Dateien zusätzlich als Binärdaten in data, data_1 und so weiter angehängt. Die Links in output.assets[].url laufen nach etwa 20 Minuten ab; die Binärkopien nicht.

Große Videos werden im Arbeitsspeicher gehalten, solange n8n Binärdaten nicht auf der Festplatte speichert. Setzen Sie bei selbst gehostetem n8n N8N_DEFAULT_BINARY_DATA_MODE=filesystem, wenn Sie mit Video arbeiten.

Kostenkontrolle und Wiederholungen

  • Jedes Item wird zuerst bepreist. Die Node holt ein Angebot ein. Liegt es über Max Cost per Item (USD), standardmäßig $2, bricht sie mit einem Fehler ab, bevor etwas erstellt wird, und es wird nichts berechnet. Setzen Sie das Limit auf 0, um es zu entfernen.
  • Die Aufgabe wird mit dem angebotenen Preis erstellt. Ändert sich der Preis zwischen Angebot und Einreichung, holt die Node erneut ein Angebot ein, prüft das Limit erneut und reicht neu ein.
  • Wiederholungen berechnen nicht doppelt. Siehe Kostenlimits und Wiederholungen.

Lang laufende Aufgaben

Die Optionen und wann Sie welche einsetzen, stehen unter Lang laufende Videoaufgaben.

Option 2: HTTP-Request-Vorlagen

Zwei importierbare Workflows verwenden nur eingebaute n8n-Nodes und laufen daher auf selbst gehostetem n8n und auf n8n Cloud, ohne Community-Node. Sie liegen im examples-Ordner des Repositorys der Node.

DateiWas sie tut
http-request-image.jsonHolt ein Angebot ein, bricht ab, wenn es über einem Preislimit liegt, erstellt eine Aufgabe, fragt ab, bis sie fertig ist, und lädt das Bild als Binärdatei herunter
http-request-chat.jsonEine Chat-Completion über den OpenAI-kompatiblen Endpunkt

Den Workflow importieren

Laden Sie die .json-Datei herunter. Wählen Sie in n8n Workflow menu > Import from File.

Eine Bearer-Auth-Credential erstellen

Erstellen Sie eine Bearer Auth-Credential, fügen Sie Ihren SpicyAPI-Schlüssel als Token ein und wählen Sie sie in jeder HTTP-Request-Node aus, die api.spicyapi.ai aufruft. Die Bild-Vorlage hat vier davon.

Die Einstellungen anpassen und ausführen

Öffnen Sie die Node Settings. In der Bild-Vorlage können Sie Modell, Prompt, Seitenverhältnis und den Höchstpreis in US-Dollar (maxCostUsd) ändern. Ersetzen Sie das Modell durch eine ID aus dem Modellkatalog und führen Sie den Workflow aus.

Wie die Bild-Vorlage aufgebaut ist

Dieselben Schritte funktionieren für jedes Medienmodell, sodass Sie das Muster in Ihren eigenen Workflow kopieren können.

SchrittNodeAnfrage
1HTTP RequestPOST https://api.spicyapi.ai/api/v1/jobs/quote mit model und input liefert eine quoteId und estimatedCost
2IfBricht mit einem Fehler ab, wenn das Angebot über Ihrem Limit liegt. Es wurde noch nichts berechnet
3HTTP RequestPOST https://api.spicyapi.ai/api/v1/jobs/createTask mit der quoteId, expectedCost und einem Idempotency-Key-Header. Die Vorlage hängt ?wait=50 an, damit schnelle Bildmodelle in derselben Anfrage antworten
4If, Wait, HTTP RequestIst die Aufgabe noch queued oder running, 5 Sekunden warten und GET https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=… aufrufen, dann erneut prüfen
5HTTP RequestLädt output.assets[0].url als Datei herunter

Die Formen von Anfragen und Antworten stehen unter Tasks, Angebote und Kompatibilität und Medien-Ein- und Ausgaben. Dateien, die ein Modell liest, etwa ein Startbild, können eine öffentliche URL oder eine hochgeladene spicy://-Datei sein.

Option 3: Chatmodelle in AI Agent und anderen KI-Nodes

Der Chat-Endpunkt von SpicyAPI ist OpenAI-kompatibel, daher können die eigenen OpenAI-Nodes von n8n ihn nutzen. Dafür brauchen Sie die Community-Node nicht, und es funktioniert auf n8n Cloud.

Eine OpenAI-Credential erstellen

Erstellen Sie in n8n eine neue OpenAI-Credential. Fügen Sie Ihren SpicyAPI-Schlüssel als API Key ein und setzen Sie Base URL auf:

https://api.spicyapi.ai/v1

Ein Chatmodell wählen

Fügen Sie Ihrem AI Agent oder Basic LLM Chain ein OpenAI Chat Model hinzu und wählen Sie die Credential. Wählen Sie ein Modell, dessen ID auf /chat endet (auf dieser Seite MODEL_ID_FROM_CATALOG geschrieben: Kopieren Sie eine echte ID aus dem Live-Katalog (GET /api/v1/models)). Die vollständige Liste finden Sie unter GET https://api.spicyapi.ai/v1/models?modality=text.

Was Sie wissen sollten:

  • Die Modellliste enthält Bild- und Videomodelle. Bei einer eigenen Base URL zeigt n8n alles, was /v1/models zurückgibt, und die Liste von SpicyAPI umfasst alle Modelle. Wählen Sie eines, das auf /chat endet, oder tippen Sie die ID im Expression-Modus ein. Bild- und Videomodelle sind keine Chatmodelle und scheitern in einem Agent.
  • Use Responses API. Neuere Versionen der Node OpenAI Chat Model können Anfragen an /v1/responses statt an /v1/chat/completions senden. SpicyAPI unterstützt /v1/responses, aber nicht previous_response_id. Scheitert eine Agent-Anfrage bei eingeschalteter Responses API, schalten Sie Use Responses API in der Node aus.
  • Sampling-Einstellungen. Setzen Sie eine Option, die das Modell nicht deklariert, etwa temperature bei einem Reasoning-Modell, ignoriert SpicyAPI sie, statt zu scheitern, und listet die ignorierten Namen im Antwort-Header X-Spicy-Ignored-Params auf; ein Wert außerhalb des Bereichs des Modells wird auf den nächstliegenden zulässigen Wert geändert und in X-Spicy-Adjusted-Params aufgeführt. Andere nicht deklarierte Felder liefern weiterhin 400.
  • Tools und JSON-Ausgabe hängen vom Modell ab. Prüfen Sie die supported_parameters des Modells in /v1/models.
  • Reasoning-Modelle rechnen Reasoning-Tokens auf max_tokens an. Bei einem sehr kleinen Wert, etwa 20, kann ein Reasoning-Modell das gesamte Budget für das Nachdenken verbrauchen und keinen Text zurückgeben (upstream_failed: „the output budget was spent on reasoning“). Erhöhen Sie max_tokens oder senken Sie reasoning_effort. Die Werte für reasoning_effort unterscheiden sich je Modell.
  • Streaming und Kosten. Chat wird nach dem Aufruf nach Tokens abgerechnet. Die Seite Text und Streaming hat die Details, und Chat-Rezepte enthält Anfragebeispiele.

Kostenlimits und Wiederholungen

Limits für Ausgaben

  • Verwenden Sie einen eigenen Schlüssel für n8n mit einem Tages- oder Monatslimit in der Konsole und einer Modell-Allowlist, falls der Workflow nur wenige Modelle braucht. Ist ein Limit erreicht, scheitert der Aufruf mit 40202, und dafür wird nichts berechnet.
  • Holen Sie bei Medienmodellen zuerst ein Angebot ein. Die Node erledigt das für Sie; die Vorlagen machen es mit den Nodes Get Quote und If. Das Angebot ist der genaue Preis dieser Anfrage, einschließlich Zusätzen wie Gebühren pro Referenzbild, daher ist eine Preisprüfung auf Basis eines Angebots verlässlich und eine auf Basis der Katalogtabelle nicht.
  • Bei gewöhnlichen Fehlschlägen und abgelaufenen Tasks wird die Reservierung vollständig freigegeben. Bestimmte Inhaltsablehnungen werden nur berechnet, wenn die Modellseite dies ausdrücklich angibt. Den endgültigen Betrag zeigen settled und cost; siehe Abrechnung.

Warum eine Wiederholung nicht doppelt berechnet

Jeder Aufruf, der eine Aufgabe erstellt, trägt einen Idempotency-Key. Trifft derselbe Schlüssel mit derselben Anfrage erneut ein, gibt SpicyAPI die bereits erstellte Aufgabe zurück, statt eine zweite zu erstellen, sodass keine zweite Reservierung und keine zweite Abbuchung erfolgt. Das ist in n8n wichtig, weil eine Anfrage ohne Ihr Zutun zweimal gesendet werden kann: durch Retry On Fail an einer Node oder durch ein Timeout, bei dem die erste Anfrage tatsächlich durchgegangen ist.

  • Die Community-Node bildet den Schlüssel aus der Ausführung, der Node, dem Item und dessen Eingabe. Eine Wiederholung der Node verwendet denselben Schlüssel. Eine neue Ausführung, eine geänderte Eingabe oder ein weiterer Durchlauf einer Schleife ist neue Arbeit und bekommt einen neuen Schlüssel.
  • Die Vorlagen bilden ihn aus der Ausführungs-ID und dem Item-Index, zum Beispiel n8n-<execution id>-<item index>. Wenn Sie das Muster in eine Schleife kopieren, nehmen Sie den Schleifenzähler in den Schlüssel auf, sonst liefert jeder Durchlauf die Aufgabe des ersten Durchlaufs zurück.
  • Verwenden Sie keinen Zufallswert, der sich bei jedem Versuch ändert, etwa $now: Er lässt jede Wiederholung wie neue Arbeit aussehen.

Mehr unter Idempotenz.

Lang laufende Videoaufgaben

Bild- und Audiomodelle sind meist innerhalb einer Anfrage fertig. Video kann Minuten dauern. Sie haben drei Wege, damit umzugehen, vom einfachsten bis zum schonendsten für n8n:

VorgehenWieAbwägung
In der Node warten (Standard)Die Community-Node fragt mit wachsender Verzögerung ab, bis die Aufgabe endet oder Max Wait Time verstrichen istEinfach, aber die Ausführung bleibt offen, während das Video gerendert wird
Einreichen, dann warten und prüfenSchalten Sie Wait for Completion aus, fügen Sie eine Wait-Node hinzu, dann Task > Get. Die Vorlagen tun dasselbe mit den Nodes Wait, Get Task und If in einer SchleifeEin Ausführungsslot wird nur für die kurzen Aufrufe belegt
CallbackSetzen Sie Callback URL auf {{ $execution.resumeUrl }} und lassen Sie eine Wait-Node folgen, die bei einem Webhook-Aufruf fortsetztn8n muss über öffentliches HTTPS erreichbar sein. Wenn der Aufruf eintrifft, lesen Sie die Aufgabe mit Task > Get und vertrauen Sie dem Callback-Body nicht

Hört die Node auf zu warten, läuft die Aufgabe bei SpicyAPI weiter und wird bei Erfolg berechnet. Holen Sie sie später mit Task > Get ab; reichen Sie sie nicht erneut ein. Sie finden sie auch unter Logs in der Konsole.

Ergebnisse werden nur begrenzte Zeit aufbewahrt, und Download-Links gelten etwa 20 Minuten. Speichern Sie die Dateien im Workflow, zum Beispiel in einem Cloud-Speicher, wenn Sie sie länger brauchen. Siehe Aufbewahrung.

Fehlerbehebung

Sie sehenWas zu tun ist
Credential-Test schlägt fehl oder 401Kopieren Sie den Schlüssel erneut aus der Konsole. Ein widerrufener Schlüssel funktioniert sofort nicht mehr. Prüfen Sie bei der OpenAI-Credential, dass die Base URL auf /v1 endet.
SpicyAPI erscheint nicht im Node-PanelVermutlich nutzen Sie n8n Cloud, oder n8n wurde nach einer manuellen Installation nicht neu gestartet. Die Cloud kann keine nicht verifizierten Nodes installieren; nutzen Sie die Vorlagen.
Der Button Install fehlt bei Community NodesCommunity-Pakete sind deaktiviert, oder Sie sind weder Besitzer noch Admin. Fragen Sie die Person, die die Instanz betreibt, oder installieren Sie von Hand in ~/.n8n/nodes.
40201Nicht genug Guthaben. Laden Sie in der Konsole Guthaben auf und führen Sie dann erneut aus. Eine Wiederholung mit demselben Schlüssel ist unbedenklich.
40202Der Schlüssel hat ein Tages-, Monats- oder Gesamtlimit erreicht. Erhöhen Sie das Limit oder warten Sie, bis es zurückgesetzt wird.
40310Die E-Mail-Adresse Ihres Kontos ist nicht bestätigt. Öffnen Sie den Link in Ihrer Registrierungs-E-Mail.
40004Kein Deployment bedient diese Kombination von Optionen. Ändern Sie die in der Meldung genannte Option.
40901Das Angebot stimmt nicht mehr, meist weil es abgelaufen ist (Angebote gelten 5 Minuten). Holen Sie erneut ein Angebot ein und reichen Sie mit demselben Idempotency-Key neu ein.
Ein Fehler, dass der Preis über Ihrem Limit liegtDas Angebot liegt über Max Cost per Item oder maxCostUsd. Erhöhen Sie den Wert oder wählen Sie günstigere Optionen. Es wurde nichts berechnet.
Der Agent scheitert an einem ModellMöglicherweise haben Sie ein Modell gewählt, das kein Chatmodell ist. Verwenden Sie eine ID, die auf /chat endet. Versuchen Sie außerdem, Use Responses API auszuschalten.
Ein Reasoning-Modell liefert eine leere AntwortErhöhen Sie max_tokens oder senken Sie reasoning_effort.
Der Download-Link in der Ausgabe liefert später einen FehlerLinks laufen nach etwa 20 Minuten ab. Holen Sie sich mit Task > Get einen neuen Link oder bewahren Sie die Binärkopie auf.
Memory, heap oder Neustarts bei der Verarbeitung von VideoBinärdaten werden standardmäßig im Arbeitsspeicher gehalten. Setzen Sie N8N_DEFAULT_BINARY_DATA_MODE=filesystem.
Der Callback setzt den Workflow nie fortDie URL muss öffentliches HTTPS auf Port 443 oder 80 sein, nicht localhost. Prüfen Sie, dass die Resume-URL der Ausführung die ist, die Ihr n8n öffentlich anzeigt.

Fehler von SpicyAPI enden mit einer request_id oder einer Task-ID. Nennen Sie sie dem Support, dann lässt sich die Anfrage genau finden. Die Fehlercodes sind unter Fehler erklärt, und eine umfassendere Checkliste finden Sie unter Fehlerbehebung.

Die Nutzung der Modelle unterliegt den SpicyAPI-Nutzungsbedingungen und den Bedingungen der von Ihnen betriebenen n8n-Edition.

Auf dieser Seite