Documentation

Bibliotheques client & SDKs

Clients Python et Node.js disponibles uniquement en source pour la surface actuelle de l'API Parsurai. Non publies sur PyPI ni npm.


Le depot inclut des clients Python et TypeScript sous sdks/python et sdks/node. Ils couvrent extraction, detection de doublons, analyses fournisseurs, usage et feedback.

Ces clients ne sont pas publies. Il n'existe pas encore de SDK Parsurai officiel sur PyPI ni sur npm, et pip install invoiceextract / npm install @invoiceextract/sdk echouent. Construire depuis un checkout du depot, comme indique ci-dessous, sert uniquement a l'evaluation locale et n'est pas un chemin d'integration supporte. L'API REST est la surface d'integration supportee prevue une fois le point de terminaison de production configure et Parsurai lance publiquement.

Les deux clients conservent une base_url par defaut https://api.invoiceextract.com. Ce nom d'hote est obsolete, n'est pas exploite par Parsurai et ne doit jamais etre utilise. Transmettez toujours l'URL de base explicitement, comme dans chaque exemple de cette page.

Chaque exemple ci-dessous utilise https://api.parsurai.com, l'hote API de production.

SDK Python

Installation depuis les sources

Depuis un checkout du depot:

pip install ./sdks/python

Demarrage rapide

from invoiceextract import InvoiceExtract

client = InvoiceExtract(api_key="sk_live_your_key_here", base_url="https://api.parsurai.com")

result = client.extract(
    text="Facture de Acme Ltd. INV-2026-001. Total: 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)

Pour extraire un fichier, transmettez les bytes PDF:

with open("invoice.pdf", "rb") as file_obj:
    result = client.extract(pdf_bytes=file_obj.read(), locale="auto")

SDK Node.js / TypeScript

Installation depuis les sources

Construisez le client dans un checkout du depot, puis referencez ce repertoire depuis votre projet:

cd sdks/node
npm install
npm run build
npm install file:/chemin/vers/invoice-extractor/sdks/node

Le nom du package dans le checkout reste @invoiceextract/sdk; c'est le nom que vous importez, pas un package installable depuis npm.

Demarrage rapide

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: 'Facture de Acme Ltd. INV-2026-001. Total: 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);

Pour les uploads PDF dans le client TypeScript, transmettez un PDF encode en base64:

const resultFromPdf = await client.extract({
  pdfBase64,
  locale: 'auto',
});

Methodes client supportees

CapacitePythonTypeScript
Extraire texte, URL ou PDF bytes/base64extractextract
Detection de doublonscheck_duplicatecheckDuplicate
Analyses fournisseursvendor_analyticsvendorAnalytics
Resume d'usageusageusage
Envoyer du feedback de champsubmit_feedbacksubmitFeedback