REST-APIs für E-Commerce-Integrationen: Authentifizierung, Limits und Fehler
Integrationen scheitern fast immer aus denselben Gründen: abgelaufene Tokens, Anfragelimits und nicht behandelte Fehler. Wir geben Ihnen die Richtlinien, um das zu vermeiden.
Fast alle Integrationen eines Shops sprechen mit REST-APIs: der des ERP, des Zahlungsanbieters, des Versanddienstleisters, des Shops selbst. Diese Richtlinien vermeiden die meisten Probleme.
Authentifizierung
- API-Schlüssel: einfach. Bewahren Sie sie außerhalb des Codes auf (verschlüsselte Konfiguration, Umgebungsvariablen), einen pro Integration.
- OAuth2: Tokens, die ablaufen. Erneuern Sie den Token, bevor er abläuft, und behandeln Sie den Fehler 401, indem Sie erneuern und einmal wiederholen.
- Senden Sie Zugangsdaten nie über unverschlüsseltes HTTP oder in der URL.
Paginierung und Filter
Fragen Sie nicht nach „allen Bestellungen“. Fragen Sie seitenweise nach den seit der letzten Synchronisierung geänderten. Speichern Sie den Zeitstempel der letzten erfolgreichen Synchronisierung, nicht den des letzten Versuchs.
Anfragelimits
Die meisten APIs begrenzen, wie viele Anfragen Sie pro Minute stellen können. Überschreiten Sie das, antworten sie mit 429. Beachten Sie den Header Retry-After und warten Sie mit wachsender Verzögerung.
for ($intento = 0; $intento < 5; $intento++) {
$r = llamar($url);
if ($r->status !== 429 && $r->status < 500) {
break;
}
sleep(min(60, 2 ** $intento));
}
Fehler
- 4xx: Der Fehler liegt bei Ihnen (fehlerhafte Daten, keine Berechtigung). Nicht wiederholen, ohne zu korrigieren.
- 5xx und Zeitüberschreitungen: mit Wartezeit wiederholen.
- Protokollieren Sie bei jedem Fehler Anfrage und Antwort (ohne sensible Daten).