Dokument in JSON umwandeln
Nennen Sie, was Sie brauchen, etwa Rechnungsnummer und fälligen Betrag, und jedes Dokument kommt genau in dieser Struktur zurück, unabhängig vom Layout. Was im Dokument fehlt, bleibt leer, statt erfunden zu werden.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Sie eignet sich, um Papier- oder Bilddokumente direkt an eine eigene Anwendung oder Schnittstelle anzubinden, ohne einen Zwischenschritt.
Warum reine Texterkennung nicht reicht
Klassische Texterkennung sagt Ihnen, welche Zeichen auf einer Seite stehen. Sie weiß nicht, dass die dritte Zahl oben rechts der Rechnungsbetrag ist oder dass der Absatz unter Gültig ab das Datum ist, das Ihr Vertragssystem braucht. Lange wurde diese Lücke mit Regeln geschlossen, die auf ein einziges Layout zugeschnitten sind und brechen, sobald ein Lieferant seine Vorlage ändert. Hier ist es umgekehrt: Sie beschreiben, wie eine gute Antwort aussieht, mit Namen und Typ jeder Angabe, und das Werkzeug sucht genau diese Angaben, wo immer sie stehen.
Wann es sich lohnt und worauf Sie achten sollten
Es passt zu Abläufen mit Dutzenden Lieferantenlayouts, sich wandelnden Vertragsvorlagen oder handschriftlichen Varianten, etwa wenn eine Praxis Patientendaten und Versicherungsangaben aus handschriftlichen Aufnahmebögen genau an die Stellen überträgt, die ihr Patientensystem erwartet. Die Struktur kann eine kurze Liste sein oder mehrere Ebenen haben, etwa Positionen mit eigenen Details. Ein häufiger Fehler: eine leere Stelle für einen Fehlschlag zu halten. Fehlt etwas im Dokument, bleibt es leer oder markiert, statt geraten zu werden.
Vom Bild zur Datenstruktur
Ein Scan oder ein Foto ist für ein Programm zunächst nur eine Bilddatei, keine verwertbare Information. Statt den Inhalt manuell zu übertragen, erhalten Sie eine Datenstruktur, die sich direkt in eine Anwendung, ein Skript oder eine Datenbank einlesen lässt.
Struktur folgt dem Dokument, nicht einer festen Vorlage
Bei stark unterschiedlichen Vorlagen kann sich die Feldbenennung daher von Dokument zu Dokument leicht unterscheiden. Für einen immer gleichen Dokumenttyp lohnt sich ein kurzer Blick auf mehrere Beispielergebnisse, bevor eine Anwendung darauf aufgebaut wird.
Häufige Fragen
Kann ich die Funktion direkt aus meiner Anwendung heraus aufrufen?
Sie senden das Dokument, erhalten eine Task-ID zurück und rufen das Ergebnis ab, sobald die Verarbeitung abgeschlossen ist.
Wird das Dokument nach der Umwandlung gespeichert?
Nein. Die Übertragung ist verschlüsselt, das Dokument wird nur für die Dauer der Verarbeitung genutzt und danach gelöscht.
Kann ich genau festlegen, welche Angaben ich bekomme?
Ja. Beschreiben Sie die gewünschten Angaben mit Namen und Typ, etwa Rechnungsnummer und fälligen Betrag, und das Ergebnis folgt genau dieser Struktur, unabhängig vom Layout des Dokuments.
Was passiert, wenn eine Angabe im Dokument fehlt?
Sie bleibt leer oder wird als fehlend markiert. Das Werkzeug erfindet keinen Wert, der nicht im Dokument steht. Eine Lücke im Ergebnis bedeutet also, dass die Angabe dort nicht vorkommt.
Was ist, wenn ein Lieferant seine Vorlage ändert?
Dann funktioniert es weiter. Statt Regeln für ein einziges Layout zu pflegen, beschreiben Sie, wie eine gute Antwort aussieht, und die Angaben werden gesucht, wo immer sie auf der Seite stehen.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/ocr/to-json \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/ocr/to-json", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/ocr/to-json",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/ocr/to-json", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/ocr/to-json", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"image": "https://ejemplo.com/imagen.jpg"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "ocr.to_json",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
max_pages | 10 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
413 | input_too_large | Die Eingabe überschreitet das Größenlimit dieser Aufgabe – die genaue Grenze steht auf der Seite. |
422 | task_failed | Die Aufgabe ist fehlgeschlagen und wird nicht berechnet. |
Technische Hinweise
Diese Funktion liest ein gescanntes oder fotografiertes Dokument und gibt den erkannten Inhalt als strukturiertes JSON zurück – Felder, Werte und Tabellen in maschinenlesbarer Form.
Vom Bild zur Datenstruktur
Die Funktion liest den Inhalt aus und ordnet ihn als JSON-Objekt an, mit Feldern für die erkannten Werte und, wo vorhanden, verschachtelten Tabellen.
Für Entwickler und Schnittstellen gedacht
Diese Funktion richtet sich vor allem an Entwickler, die ein Dokument als Eingabe für einen automatisierten Ablauf benötigen: einen Scan, der ein Formular in einer App befüllt, oder ein Foto, dessen Werte in ein internes System übernommen werden. Das JSON-Ergebnis lässt sich per API abrufen und unmittelbar weiterverarbeiten, ohne einen Zwischenschritt in Textform oder eine manuelle Nachbearbeitung der erkannten Werte.
Struktur folgt dem Dokument, nicht einer festen Vorlage
Die zurückgegebene Struktur richtet sich nach dem, was auf dem Dokument tatsächlich zu erkennen ist – es gibt kein festes Schema, das jedes Dokument erzwingt.
Preis pro Seite und Ausführung
Die Umwandlung kostet $0.010 pro Anfrage zzgl. $0.0575 pro Seite, in US-Dollar, ohne Abonnement oder Guthaben. Die Funktion läuft auf dieser Seite zum Testen und über die API für die laufende Anbindung an eine eigene Anwendung. Die Verarbeitung läuft asynchron: Sie senden das Dokument, eine Aufgabe startet im Hintergrund, und das JSON liegt vor, sobald die Analyse abgeschlossen ist.
Integrationsbeispiele
Formular-Scan an eine App anbinden
Schneider IT-Systeme GmbH & Co. KG liest gescannte Formulare als JSON aus, um die Werte automatisch in eine interne Anwendung zu übernehmen, ohne manuelle Eingabe.
Belege für eine Auswertung strukturieren
Katrin Baumann wandelt fotografierte Belege in JSON um, um die Werte anschließend in einer eigenen Auswertungstabelle weiterzuverarbeiten.
Eingehende Scans in ein System einspeisen
Ein internes Tool von Weber Metallbau GmbH ruft die Funktion über die API auf, um eingehende Scans laufend als strukturierte Daten in ein Warenwirtschaftssystem einzuspeisen.
Technische Fragen
Gibt es ein festes JSON-Schema?
Nein. Die Struktur richtet sich nach dem Inhalt des jeweiligen Dokuments. Für einen wiederkehrenden Dokumenttyp empfiehlt sich ein Blick auf mehrere Beispiele, bevor eine feste Anwendung darauf aufbaut.
Werden auch Tabellen erkannt?
Ja, Tabellen werden als verschachtelte Struktur innerhalb des JSON abgebildet, sofern sie im Dokument klar als solche erkennbar sind.
Was kostet eine Umwandlung?
$0.010 pro Anfrage und $0.0575 pro Seite, in US-Dollar, ohne Abonnement. Zahlung per PayPal, Rechnung auf Anfrage.
Wie groß darf das Dokument sein?
Bis zu 25 MB und bis zu 10 Seiten pro Anfrage.