API-Referenz
Eine REST-API zur Extraktion strukturierter Daten aus Dokumenten. Senden Sie eine Datei, erhalten Sie strukturiertes JSON zurück.
Authentifizierung
Alle Anfragen erfordern einen X-API-Key -Header. Holen Sie sich Ihren Schlüssel unter Einstellungen → API in Ihrem Airparser-Konto.
curl https://api.airparser.com/inboxes \
-H "X-API-Key: YOUR_API_KEY"Bewahren Sie Ihren API-Schlüssel sicher auf — behandeln Sie ihn wie ein Passwort.
Dokumente parsen
Laden Sie eine beliebige Datei hoch und erhalten Sie vollständig extrahierte Daten in einer einzigen synchronen Anfrage zurück — keine Webhooks, kein Polling, kein zweiter Aufruf. Die Antwort enthält alle extrahierten Felder als strukturiertes JSON, sofort einsatzbereit in Ihrem Workflow.
curl \
-X POST \
https://api.airparser.com/inboxes/<INBOX_ID>/upload-sync \
-F 'file=@./receipt.pdf' \
-H "X-API-Key: <YOUR_API_KEY>"{
"doc_id": "64abc123def456...",
"parsing_in_progress": false,
"status": "parsed",
"name": "invoice.pdf",
"content_type": "application/pdf",
"created_at": "2026-03-10T12:00:00.000Z",
"processed_at": "2026-03-10T12:00:04.321Z",
"json": {
"invoice_number": "INV-001",
"vendor": "Acme Corp",
"total": 1250.00,
"currency": "USD",
"date": "2024-01-15"
}
}Extrahierte Daten abrufen
Rufen Sie ein Dokument per ID ab, um seinen Extraktionsstatus und die Ergebnisse zu erhalten. Fragen Sie diesen Endpunkt ab oder nutzen Sie Webhooks, um zu wissen, wann die Verarbeitung abgeschlossen ist.
/documents/{document_id}curl https://api.airparser.com/documents/doc_abc123 \
-H "X-API-Key: YOUR_API_KEY"{
"doc_id": "64abc123def456...",
"parsing_in_progress": false,
"status": "parsed",
"name": "invoice.pdf",
"content_type": "application/pdf",
"created_at": "2026-03-10T12:00:00.000Z",
"processed_at": "2026-03-10T12:00:04.321Z",
"json": {
"invoice_number": "INV-001",
"vendor": "Acme Corp",
"total": 1250.00,
"date": "2024-01-15"
}
}Extraktionsschema definieren
Definieren Sie, welche Felder extrahiert werden sollen. Unterstützt skalare Felder, Listen (für Positionen) und Enums.
/inboxes/{inbox_id}/schema{
"fields": [
{
"type": "scalar",
"data": {
"name": "invoice_number",
"description": "Invoice reference number",
"type": "string",
"default_value": ""
}
},
{
"type": "list",
"data": {
"name": "items",
"description": "List of items in the invoice",
"attributes": [
{
"name": "description",
"description": "Item description",
"type": "string",
"default_value": ""
},
{
"name": "amount",
"description": "Item amount",
"type": "decimal",
"default_value": "0.00"
}
]
}
},
{
"type": "enum",
"data": {
"name": "payment_status",
"description": "Current payment status",
"values": ["paid", "pending", "overdue"]
}
}
]
}Nachbearbeitung
Führen Sie Python-Code auf extrahierten Daten aus, bevor sie an Integrationen gesendet werden. Fügen Sie Geschäftslogik hinzu, kombinieren Sie Felder, formatieren Sie Werte.
# Merge first and last name into full name
data['fullname'] = data['first_name'] + " " + data['last_name']
# Using f-strings (recommended)
data["fullname"] = f"{data['first_name']} {data['last_name']}"
# Using format() function
data['fullname'] = '{} {}'.format(data['first_name'], data['last_name'])# Only process invoices above certain amount
if float(data.get('total_amount', 0)) > 1000:
data['priority'] = 'high'
else:
data['priority'] = 'normal'
# Add timestamp
import datetime
data['processed_at'] = datetime.datetime.now().isoformat()Entdecken Sie erweiterte Nachbearbeitungstechniken und Beispiele:
Webhooks
Airparser sendet eine POST -Anfrage an Ihren Endpunkt, wenn die Extraktion abgeschlossen ist. Antworten Sie mit 200 zur Bestätigung.
Einrichtungsschritte
- 1 Kopieren Sie die URL Ihres Webhook-Endpunkts von Ihrem Server oder einem Dienst wie ngrok.
- 2 Gehen Sie zu Integrationen → Webhooks in Ihrem Airparser-Konto.
- 3 Klicken Sie auf „Create a webhook" und fügen Sie Ihre Endpunkt-URL ein.
- 4 Testen Sie den Webhook mit einem Beispieldokument, um die Integration zu überprüfen.
import json
from flask import Flask, request
app = Flask(__name__)
@app.route('/webhook', methods=['POST'])
def webhook():
payload = request.data
data = json.loads(payload)
# Process the parsed data
# data contains all extracted fields
return {'success': True}
if __name__ == '__main__':
app.run(port=4242)Ressourcen
Suchen Sie einen nicht-technischen Überblick? Lesen Sie Was ist eine Document Extraction API — behandelt das Konzept, Anwendungsfälle und wie die API von Airparser ohne Codebeispiele funktioniert.
Postman-Sammlung