Authentifizierung
Hallo, ich bin Sophie! 👋 Ich erkläre Ihnen, wie Sie Sie sicher mit unserer API verbindest. Keine Sorge - auch wenn das Thema technisch klingt, werde ich es Ihnen Schritt für Schritt verständlich machen.
Ihre Daten sind uns wichtig, deshalb erfordert jeder API-Aufruf eine gültige Authentifizierung. So stellen wir sicher, dass nur Sie auf Ihre Geschäftsdaten zugreifen kannst.
DSGVO-Hinweis: Die Authentifizierung schützt Ihre personenbezogenen und geschäftlichen Daten gemäß DSGVO Art. 32. Alle Zugriffe werden protokolliert und 7 Jahre aufbewahrt (BAO Aufbewahrungspflicht).
Zwei Wege zur Authentifizierung
Wir bieten Ihnen zwei Möglichkeiten, je nachdem, was Sie erreichen möchtest:
| Methode | Am besten für | Komplexität |
|---|---|---|
| API-Schlüssel | Server-zu-Server, Automatisierung | Einfach |
| OAuth 2.0 | Apps, die im Namen von Benutzern handeln | Fortgeschritten |
Sophie’s Tipp: Für die meisten Integrationen reicht ein API-Schlüssel völlig aus. OAuth 2.0 benötigst Sie nur, wenn Ihre Anwendung auf Daten verschiedener BuchhaltGenie-Benutzer zugreifen soll - zum Beispiel bei einer Multi-Mandanten-Software.
API-Schlüssel
API-Schlüssel sind der einfachste Weg, unsere API zu nutzen. Ein Schlüssel gehört immer zu Ihrem Konto und hat Zugriff auf alle Ihre Geschäftsdaten.
Schlüssel erstellen
Dashboard öffnen
Melde Sie bei BuchhaltGenie an und navigiere zu Einstellungen > API-Zugang.
Neuen Schlüssel erstellen
Klicken Sie auf Neuen API-Schlüssel erstellen und vergib einen aussagekräftigen Namen (z.B. “Website-Integration” oder “ERP-Sync”).
Schlüssel kopieren
Wichtig: Kopieren Sie den Schlüssel sofort! Er wird nur einmal angezeigt. Wenn Sie ihn verlierst, musst Sie einen neuen erstellen.
Schlüsseltypen
| Typ | Präfix | Verwendung |
|---|---|---|
| Live | sk_live_ | Produktionsumgebung mit echten Daten |
| Test | sk_test_ | Sandbox zum Testen (keine echten Daten) |
Bearer Token Format
Sende den API-Schlüssel im Authorization-Header:
curl -X GET "https://buchhaltgenie.at/api/v1/invoices" \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json"cURL
curl -X GET "https://buchhaltgenie.at/api/v1/invoices" \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json"OAuth 2.0
OAuth 2.0 eignet sich für Anwendungen, die im Namen verschiedener BuchhaltGenie-Benutzer agieren. Benutzer autorisieren Ihre App, auf ihre Daten zuzugreifen - ohne Ihnen ihr Passwort zu verraten.
Authorization Code Flow
Benutzer zur Autorisierung senden
Leite den Benutzer zu unserer Autorisierungsseite:
GET https://auth.buchhaltgenie.at/oauth/authorize?
client_id=YOUR_CLIENT_ID&
redirect_uri=https://deine-app.at/callback&
response_type=code&
scope=invoices:read invoices:write&
state=RANDOM_STATE_STRINGAuthorization Code erhalten
Nach der Zustimmung leiten wir den Benutzer zurück zu Ihrer redirect_uri mit einem Authorization Code.
Code gegen Token tauschen
curl -X POST "https://auth.buchhaltgenie.at/oauth/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=authorization_code" \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_CLIENT_SECRET" \
-d "code=AUTHORIZATION_CODE" \
-d "redirect_uri=https://deine-app.at/callback"API mit Token aufrufen
curl -X GET "https://buchhaltgenie.at/api/v1/invoices" \
-H "Authorization: Bearer ACCESS_TOKEN"Verfügbare Scopes
| Scope | Beschreibung |
|---|---|
invoices:read | Rechnungen lesen |
invoices:write | Rechnungen erstellen und bearbeiten |
customers:read | Kundendaten lesen |
customers:write | Kundendaten bearbeiten |
transactions:read | Transaktionen lesen |
transactions:write | Transaktionen erstellen |
sophie:chat | Sophie AI Chat nutzen |
reports:read | Berichte und Auswertungen lesen |
Sophie’s Tipp: Fordere nur die Scopes an, die Ihre Anwendung wirklich benötigt. Das Prinzip der minimalen Rechte (Least Privilege) erhöht die Sicherheit und das Vertrauen Ihrer Benutzer.
Sicherheits-Best-Practices
Schlüssel sicher aufbewahren
// Umgebungsvariable verwenden
const apiKey = process.env.BUCHHALTGENIE_API_KEY;// Niemals im Code speichern!
const apiKey = "sk_live_xxx";Weitere Empfehlungen
- Rotiere Schlüssel regelmäßig - Erstelle alle 90 Tage neue Schlüssel
- Verwende separate Schlüssel - Ein Schlüssel pro Anwendung/Umgebung
- Überwache die Nutzung - Prüfe regelmäßig die API-Zugriffsprotokolle
- Test-Schlüssel für Entwicklung - Nutze
sk_test_Schlüssel für Tests
Fehlerbehandlung
const response = await fetch('https://buchhaltgenie.at/api/v1/invoices', {
headers: {
'Authorization': `Bearer ${apiKey}`,
},
});
if (response.status === 401) {
// API-Schlüssel ungültig oder abgelaufen
console.error('Authentifizierung fehlgeschlagen - bitte API-Schlüssel prüfen');
}
if (response.status === 403) {
// Keine Berechtigung für diese Ressource/Aktion
console.error('Zugriff verweigert - fehlende Berechtigung');
}Häufige Fragen
Was passiert, wenn mein API-Schlüssel kompromittiert wurde?
Lösche den betroffenen Schlüssel sofort in Ihren BuchhaltGenie-Einstellungen und erstelle einen neuen. Alle Zugriffe mit dem alten Schlüssel werden ab sofort abgelehnt. Prüfe auch die API-Zugriffsprotokolle auf ungewöhnliche Aktivitäten.
Kann ich mehrere API-Schlüssel haben?
Ja! Wir empfehlen sogar, separate Schlüssel für verschiedene Anwendungen oder Umgebungen zu verwenden. So kannst Sie bei Bedarf einzelne Zugänge widerrufen, ohne andere zu beeinträchtigen.
Laufen API-Schlüssel ab?
Nein, API-Schlüssel laufen nicht automatisch ab. Wir empfehlen jedoch, sie alle 90 Tage zu rotieren, um die Sicherheit zu erhöhen.
Nächste Schritte
- Sicherheitsrichtlinien - Weitere Sicherheitsempfehlungen
- Rate Limits - Nutzungslimits verstehen
- API Endpunkte - Beginne mit der Integration
Hinweis: Bei sicherheitsrelevanten Fragen oder dem Verdacht auf Missbrauch kontaktiere bitte umgehend office@buchhaltgenie.at.