3.7 KiB
3.7 KiB
Paperless-ngx API Dokumentation (Context7)
Quelle: Context7 MCP Server
Abrufdatum: 2026-04-20
Library ID: /paperless-ngx/paperless-ngx
🆓 Neue Features & Endpunkte
1. Workflows API (NEU!)
Automatisierte Workflows mit Triggern und Actions:
# Workflows auflisten
GET /api/workflows/
# Workflow erstellen
POST /api/workflows/
Content-Type: application/json
{
"name": "Auto-tag Invoices",
"enabled": true,
"triggers": [{
"type": 2,
"filter_filename": "*.pdf",
"matching_algorithm": 3,
"match": "invoice"
}],
"actions": [{
"type": 1,
"assign_tags": [5],
"assign_document_type": 2
}]
}
Trigger-Typen:
- Dokument-Upload
- Filename-Matching
- Content-Matching
Action-Typen:
- Tags zuweisen
- Dokumententyp zuweisen
- Korrespondent zuweisen
- Benachrichtigungen senden
2. Tasks API (NEU!)
Verfolgung von asynchronen Aufgaben:
# Task-Status prüfen
GET /api/tasks/?task_id=a1b2c3d4-e5f6-7890-abcd-ef1234567890
# Response:
{
"task_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "SUCCESS", // PENDING, SUCCESS, FAILED
"related_document": 456
}
3. Dokument-Upload mit Metadaten
# Basis-Upload
POST /api/documents/post_document/
-F "document=@/path/to/invoice.pdf"
# Upload mit vollständigen Metadaten
POST /api/documents/post_document/
-F "document=@/path/to/invoice.pdf"
-F "title=Company Invoice Q4 2024"
-F "correspondent=5"
-F "document_type=3"
-F "tags=1"
-F "tags=7"
-F "created=2024-10-15"
-F "archive_serial_number=00142"
-F "custom_fields=[{\"field\": 1, \"value\": \"Custom Value\"}]"
# Response: Task UUID
"550e8400-e29b-41d4-a716-446655440000"
4. Dokument-Verwaltung
# Dokument abrufen
GET /api/documents/{id}/
# Metadaten aktualisieren (PATCH!)
PATCH /api/documents/{id}/
Content-Type: application/json
{
"title": "Updated Invoice Title",
"correspondent": 5,
"document_type": 2,
"tags": [1, 3, 7],
"archive_serial_number": 142,
"custom_fields": [{"field": 1, "value": "Updated Value"}]
}
# Original herunterladen
GET /api/documents/{id}/download/
# Archiv-Version (PDF/A) herunterladen
GET /api/documents/{id}/download/?original=false
5. Custom Fields API
# Custom Fields auflisten
GET /api/custom_fields/
# Custom Field erstellen
POST /api/custom_fields/
{
"name": "Rechnungsnummer",
"data_type": "string",
"extra_data": {"select_options": []}
}
🔧 Integration Patterns
Scanner-to-Folder-to-Paperless
- Scanner speichert in Netzwerk-Ordner
- Paperless-ngx Consumer überwacht Ordner
- OCR und Indexierung automatisch
- Workflow-Regeln wenden Tags/Korrespondenten an
Email-basierte Ingestion
- Email-Account überwachen
- Anhänge automatisch extrahieren
- In Paperless-ngx importieren
- Absender als Korrespondent speichern
ERP-System Integration
# Rechnung aus ERP hochladen
# → Paperless-ngx verarbeitet OCR
# → API gibt Dokument-ID zurück
# → ERP speichert Dokument-ID für Verknüpfung
📊 Best Practices
- Asynchrone Verarbeitung: Uploads return Task UUID → Status prüfen
- Workflows nutzen: Automatische Kategorisierung statt manuelles Tagging
- Custom Fields: Für projektspezifische Metadaten
- Archive Serial Number: Für physische Ablage-Verknüpfung
- PATCH statt PUT: Für partielle Updates
🔗 Weitere Ressourcen
- Paperless-AI:
/clusterzx/paperless-ai- AI-powered Klassifizierung - Paperless-GPT:
/icereed/paperless-gpt- LLM-enhanced OCR - Paperless-Stack:
/timothystewart6/paperless-stack- Docker Compose Setup
Diese Dokumentation wurde über Context7 MCP generiert und sollte regelmäßig aktualisiert werden.