# n8n-utils Skripte

Diese Dateien sind Startpunkte fuer wiederkehrende n8n-Aufgaben. Sie sind bewusst allgemein gehalten und muessen vor produktiver Nutzung an die jeweilige Umgebung angepasst werden.

## Nutzungshinweise

- Skripte zuerst lesen, dann lokal ausfuehrbar machen.
- Tokens, URLs, Zielpfade und Datenbankparameter nie fest im Skript versionieren.
- Kritische Aufgaben zuerst gegen eine Testinstanz oder mit Dry-Run ausfuehren.
- Ergebnisse nach dem Lauf kontrollieren und bei Migrationen separat sichern.

## Workflow-Migration per API

`migrate-workflows.sh` uebertraegt Workflow-Definitionen von einer Quellinstanz auf eine Zielinstanz. Das Skript nutzt die n8n REST API, benoetigt `curl` und `node` und schreibt pro Lauf ein Arbeitsverzeichnis mit Quellliste, Zielliste, Payloads und Zusammenfassung.

Minimaler Trockenlauf:

```bash
SOURCE_N8N_BASE_URL="https://n8n-alt.example.local" \
SOURCE_N8N_API_KEY="<SOURCE_TOKEN>" \
TARGET_N8N_BASE_URL="https://n8n-neu.example.local" \
TARGET_N8N_API_KEY="<TARGET_TOKEN>" \
DRY_RUN="true" \
./scripts/migrate-workflows.sh
```

Wichtige Optionen:

- `DRY_RUN`: Standard `true`; erst mit `false` werden Workflows auf der Zielinstanz geschrieben.
- `EXISTING_WORKFLOW_MODE`: Standard `skip`; mit `update` werden gleichnamige Ziel-Workflows aktualisiert.
- `IMPORT_ACTIVE`: Standard `false`; mit `true` wird der Aktiv-Status aus der Quelle uebernommen.
- `MIGRATION_DIR`: Standard `./n8n-workflow-migration`; Ablageort fuer Laufdaten und Logdatei.

Credentials, externe Secrets und Binary Data werden nicht durch dieses Skript migriert und muessen vor dem Aktivieren der Workflows separat auf der Zielinstanz vorbereitet werden.
