Files
Workflow/tasks/paperless_ablage.md

41 lines
1.7 KiB
Markdown

# `paperless_ablage` — Dokument im Archiv ablegen
**Zweck:** Übergibt eine Datei aus dem Workflow an das Dokumentenarchiv (Paperless-ngx REST-API) inkl. Metadaten (Titel, Korrespondent, Dokumenttyp, Tags). Das Archiv verarbeitet den Upload asynchron; der Task liefert die Task-UUID zurück.
**Parameter**
| Name | Pflicht? | Default | Beschreibung |
|---|---|---|---|
| `datei` | **ja** | — | Abzulegende Datei |
| `titel` | nein | — | Dokumenttitel |
| `korrespondent` | nein | — | Korrespondent (Name/ID) |
| `dokumenttyp` | nein | — | Dokumenttyp |
| `tags` | nein | — | Tags (CSV) |
| `base_url` | nein | *(ENV `PAPERLESS_URL`)* | Basis-URL des Archivs |
| `token` | nein | *(ENV `PAPERLESS_TOKEN`)* | API-Token |
| `output_var` | nein | `paperless` | Prefix der Ausgabevariablen |
**Eingangswerte:** Platzhalter in allen Parametern, z. B. `{{latest_pdf_path}}` in `<datei>`.
**Ausgangswerte:**
- `<prefix>_task_uuid` — Task-UUID des Archivs (Verarbeitung läuft asynchron)
- `<prefix>_ok``"1"` bei erfolgreicher Übergabe
**XML-Beispiel**
```xml
<task type="paperless_ablage" id="archivieren">
<config>
<datei>{{latest_pdf_path}}</datei>
<titel>Rechnung {{re_nr}}</titel>
<korrespondent>{{lieferant}}</korrespondent>
<dokumenttyp>Eingangsrechnung</dokumenttyp>
<tags>rechnung,{{verfahren}},freigegeben</tags>
<base_url>{{paperless_url}}</base_url>
<output_var>paperless</output_var>
</config>
</task>
```
**Hinweis:** Zugang bevorzugt über die Umgebungsvariablen `PAPERLESS_URL`/`PAPERLESS_TOKEN` setzen, damit das Token nicht in der Workflow-XML steht. Fehlt der Zugang oder scheitert der Upload, endet der Task mit Fehler — bei nicht-blockierender Archivierung in einen `try_catch` legen.