API-Schluessel & Public API

Erstelle API-Schluessel, authentifiziere Anfragen und automatisiere deine Buchhaltung mit der Lumabill API.

API-Schluessel & Public API

Lumabill bietet eine oeffentliche REST-API, mit der du Rechnungsstellung, Ausgaben, Buchhaltung und mehr automatisieren kannst. Die API steht Pro- und Lifetime-Abonnenten zur Verfuegung.

Die API ist eine Pro-Funktion. Aktualisiere deinen Plan unter Abonnement & Module, um den Zugang freizuschalten.

API-Schluessel erstellen

  1. Geh zu Einstellungen > API im Lumabill Dashboard
  2. Klicke auf API-Schluessel erstellen
  3. Gib eine Bezeichnung ein (z.B. "Zapier Integration" oder "n8n Automatisierung")
  4. Waehle den Zugriffsmodus:
    • Lesen & Schreiben - voller Zugriff zum Erstellen, Aendern und Loeschen von Daten
    • Nur Lesen - kann nur Daten lesen, ideal fuer Reporting oder AI/MCP-Integrationen
  5. Optional: Beschraenke den Schluessel auf ein bestimmtes Profil
  6. Klicke auf Erstellen - der Schluessel wird einmalig angezeigt. Kopiere ihn sofort und bewahre ihn sicher auf.

Du kannst bis zu 10 API-Schluessel pro Konto erstellen. Nur der Kontoinhaber kann API-Schluessel verwalten.

Authentifizierung

Alle API-Anfragen benoetigen einen Bearer-Token im Authorization-Header:

Authorization: Bearer lmb_ihr_api_schluessel_hier

API-Schluessel beginnen mit dem Praefix lmb_.

Profil-Zuordnung

Wenn dein Schluessel einem bestimmten Profil zugeordnet ist, verwenden alle Anfragen automatisch dieses Profil. Wenn dein Schluessel Zugriff auf alle Profile hat, fuege den X-Profile-Id-Header hinzu:

X-Profile-Id: ihre-profil-uuid

Verwende GET /v1/profiles, um verfuegbare Profile aufzulisten.

Intelligente Standardwerte

Beim Erstellen von Rechnungen oder Offerten sind die meisten Felder optional. Die API loest sie automatisch aus deinen Profileinstellungen auf:

Feld Automatisch aufgeloest aus
Rechnungsnummer Profil-Praefix + fortlaufende Nummer (z.B. IV-010)
Rechnungsdatum Heute
Faelligkeitsdatum Rechnungsdatum + Zahlungsfrist (Standard 30 Tage)
Waehrung Standard-Waehrung des Profils
Steuersatz Standard-Steuersatz des Profils
Absenderdaten Firmenname, Adresse, IBAN des Profils
Zahlungsinformationen Zahlungsvorlage des Profils

Minimales Beispiel - Rechnung erstellen mit nur einer Kundenreferenz und Positionen:

POST /v1/invoices
{
  "client_id": "ihre-kunden-uuid",
  "lines": [
    { "description": "Beratung", "quantity": 2, "price": 150 }
  ]
}

Jedes Feld, das du explizit angibst, ueberschreibt den Profil-Standardwert.

Rate Limits

Operation Limit
Lesen (GET) 60 Anfragen/Minute
Schreiben (POST, PUT, DELETE) 20 Anfragen/Minute

Bei Ueberschreitung wird 429 Too Many Requests mit einem Retry-After-Header zurueckgegeben.

API-Dokumentation

Die vollstaendige interaktive API-Dokumentation (Swagger UI) findest du unter:

api.lumabill.ch/docs

Die Dokumentation umfasst alle Endpunkte, Request/Response-Schemas, Fehlercodes und Beispiele fuer gaengige Operationen.

Verfuegbare Endpunkte

Ressource Auflisten Abrufen Erstellen Aendern Loeschen
Rechnungen GET GET POST PUT DELETE
Kunden GET GET POST PUT DELETE
Ausgaben GET GET POST PUT DELETE
Buchungen GET GET POST PUT DELETE
Lieferanten GET GET POST PUT DELETE
Wiederkehrende Rechnungen GET GET POST PUT DELETE
Offerten GET GET POST PUT DELETE
Katalog GET GET POST PUT DELETE
Bankkonten GET GET POST PUT DELETE
Profile GET GET - - -
Berichte GET GET - - -
Einnahmen GET - - - -

Schluessel widerrufen

  1. Geh zu Einstellungen > API
  2. Finde den Schluessel in der Liste
  3. Klicke auf Widerrufen und bestaetige

Widerrufene Schluessel werden sofort ungueltig. Anfragen mit einem widerrufenen Schluessel erhalten eine 401 Unauthorized-Antwort.

Sicherheitsempfehlungen

  • Teile API-Schluessel niemals in clientseitigem Code, oeffentlichen Repositories oder Browser-JavaScript
  • Verwende Nur-Lesen-Schluessel fuer Integrationen, die nur Daten abrufen
  • Beschraenke Schluessel auf ein Profil, wenn die Integration nur Zugriff auf eine Firma benoetigt
  • Rotiere Schluessel regelmaessig - widerrufe alte und erstelle neue
  • Speichere Schluessel in Umgebungsvariablen oder einem Secrets-Manager, niemals in Klartextdateien