Client-Bibliotheken & SDKs
Python- und Node.js-Clients nur im Quellcode fuer die aktuelle Parsurai-API. Nicht auf PyPI oder npm veroeffentlicht.
Das Repository enthaelt Python- und TypeScript-Clients unter sdks/python und sdks/node. Sie kapseln Extraktion, Duplikatpruefung, Kreditoren-Analysen, Nutzung und Feedback.
Diese Clients sind nicht veroeffentlicht. Es gibt bisher kein offizielles Parsurai-SDK auf PyPI oder npm; pip install invoiceextract und npm install @invoiceextract/sdk schlagen fehl. Ein Build aus einem Checkout des Repositorys, wie unten gezeigt, dient nur der lokalen Erprobung und ist kein unterstuetzter Integrationsweg. Die REST-API ist die vorgesehene unterstuetzte Integrationsflaeche, sobald der Produktions-Endpunkt konfiguriert ist und Parsurai oeffentlich gestartet ist.
Beide Clients tragen weiterhin die Standard-base_url https://api.invoiceextract.com. Dieser Hostname ist veraltet, wird nicht von Parsurai betrieben und darf nicht verwendet werden. Uebergeben Sie die Basis-URL immer explizit, so wie in jedem Beispiel auf dieser Seite.
Jedes Beispiel unten verwendet https://api.parsurai.com, den Produktions-API-Host.
Python SDK
Installation aus dem Quellcode
Aus einem Checkout des Repositorys:
pip install ./sdks/python
Quickstart
from invoiceextract import InvoiceExtract
client = InvoiceExtract(api_key="sk_live_your_key_here", base_url="https://api.parsurai.com")
result = client.extract(
text="Rechnung von Acme Ltd. INV-2026-001. Gesamt: 1200 GBP.",
locale="auto",
)
print(result.invoice["total_amount"])
duplicate = client.check_duplicate(invoice_id=result.invoice_id)
print(duplicate.score, duplicate.reason)
vendors = client.vendor_analytics(limit=10)
print(vendors.items)
usage = client.usage()
print(usage.calls_this_month, usage.quota)
Fuer Dateiextraktion uebergeben Sie PDF-Bytes:
with open("invoice.pdf", "rb") as file_obj:
result = client.extract(pdf_bytes=file_obj.read(), locale="auto")
Node.js / TypeScript SDK
Installation aus dem Quellcode
Bauen Sie den Client in einem Checkout des Repositorys und binden Sie dieses Verzeichnis dann in Ihrem Projekt ein:
cd sdks/node
npm install
npm run build
npm install file:/pfad/zu/invoice-extractor/sdks/node
Der Paketname im Checkout lautet weiterhin @invoiceextract/sdk; das ist der Name, den Sie importieren, kein von npm installierbares Paket.
Quickstart
import { InvoiceExtract } from '@invoiceextract/sdk';
const client = new InvoiceExtract({
apiKey: 'sk_live_your_key_here',
baseUrl: 'https://api.parsurai.com',
});
const result = await client.extract({
text: 'Rechnung von Acme Ltd. INV-2026-001. Gesamt: 1200 GBP.',
locale: 'auto',
});
console.log(result.invoice.total_amount);
const duplicate = await client.checkDuplicate({ invoiceId: result.invoice_id });
console.log(duplicate.score, duplicate.reason);
const vendors = await client.vendorAnalytics({ limit: 10 });
console.log(vendors.items);
const usage = await client.usage();
console.log(usage.calls_this_month, usage.quota);
Fuer PDF-Uploads im TypeScript-Client uebergeben Sie ein base64-kodiertes PDF:
const resultFromPdf = await client.extract({
pdfBase64,
locale: 'auto',
});
Unterstuetzte Client-Methoden
| Funktion | Python | TypeScript |
|---|---|---|
| Text, URL oder PDF-Bytes/Base64 extrahieren | extract | extract |
| Duplikatpruefung | check_duplicate | checkDuplicate |
| Kreditoren-Analysen | vendor_analytics | vendorAnalytics |
| Nutzungsuebersicht | usage | usage |
| Feldfeedback senden | submit_feedback | submitFeedback |