# n8n Workflows für MailFlow

Dieses Verzeichnis enthält optionale n8n Workflows zur E-Mail-Automatisierung.

## Voraussetzungen

1. **n8n Installation**
   - Cloud: [n8n.io](https://n8n.io)
   - Self-hosted: `npm install -g n8n` oder Docker

2. **Credentials einrichten**
   - Gmail OAuth2 Credentials
   - Mistral AI API Key (https://console.mistral.ai/)
   - HTTP Header Auth für MailFlow API

## Workflows

### email-sorter-workflow.json

Haupt-Workflow für die E-Mail-Sortierung:

1. **Webhook Trigger**: Empfängt Benachrichtigungen über neue E-Mails
2. **Gmail: E-Mail abrufen**: Holt E-Mail-Details
3. **Mistral AI: Klassifizieren**: KI kategorisiert die E-Mail
4. **Gmail: Label setzen**: Fügt entsprechendes Label hinzu
5. **Statistiken aktualisieren**: Sendet Update an MailFlow API

## Setup

### 1. Workflow importieren

```bash
# n8n CLI
n8n import:workflow --input=workflows/email-sorter-workflow.json

# Oder über n8n UI: Settings > Import Workflow
```

### 2. Credentials konfigurieren

#### Gmail OAuth2
1. Google Cloud Console öffnen
2. OAuth 2.0 Client erstellen
3. In n8n: Credentials > Gmail OAuth2 > Authorize

#### Mistral AI API
1. Mistral API Key erstellen auf console.mistral.ai
2. In n8n: Credentials > HTTP Header Auth
3. Name: "Authorization", Value: "Bearer YOUR_MISTRAL_API_KEY"

### 3. Environment Variables

```env
MAILFLOW_API_URL=http://localhost:3000
MAILFLOW_API_KEY=your-api-key
```

### 4. Webhook URL notieren

Nach dem Aktivieren des Workflows wird eine Webhook-URL generiert:
```
https://your-n8n-instance.com/webhook/mailflow-webhook
```

Diese URL im MailFlow Backend konfigurieren.

## Anpassungen

### Eigene Kategorien hinzufügen

Im "OpenAI: Klassifizieren" Node den System-Prompt anpassen:

```
Kategorisiere in:
- vip: Wichtige Kontakte
- clients: Kunden
- ...
- eigene_kategorie: Beschreibung
```

### Newsletter archivieren

Nach dem Label-Node einen "Gmail: Archive" Node hinzufügen:
- Resource: Message
- Operation: Update
- Modify: Remove Label "INBOX"

## Monitoring

- Ausführungen in n8n UI überwachen
- Fehler-Benachrichtigungen einrichten
- Statistiken im MailFlow Dashboard prüfen

## Skalierung

Für hohes E-Mail-Volumen:
- Queue Mode in n8n aktivieren
- Redis als Queue Backend nutzen
- Worker-Instanzen skalieren
