ForHosting KIT · Entwickler-Tools

Idempotenzschlüssel-Format prüfen

Die Formatprüfung für Idempotenzschlüssel nimmt die Zeichenkette, die Sie als Idempotency-Key-Header senden wollen, und sagt Ihnen, ob sie den gängigen Formatregeln entspricht, bevor sie Ihre API überhaupt erreicht.

● BetaKostenlos · im Browser
Nutzen Sie es über WebAPIE-MailTelegramApp bald

Sie prüft, dass der Schlüssel nicht leer ist, dass er lang genug ist, um in der Praxis eindeutig zu sein, dass er eine sinnvolle Maximallänge nicht überschreitet und dass jedes Zeichen URL-sicher ist, damit der Schlüssel Header, Logs und Query-Strings ohne Kodierungsüberraschungen übersteht. Sie senden eine Zeichenkette und erhalten ein klares valid-Flag, die gemessene Länge und eine Liste konkreter Probleme, wenn etwas nicht stimmt.

Warum Idempotenzschlüssel eine Formatprüfung brauchen

Idempotenzschlüssel existieren, damit eine wiederholte Anfrage — eine zweimal abgeschickte Zahlung, eine nach einem Timeout erstellte Bestellung — genau einmal verarbeitet wird. Doch die Sicherheit, die sie versprechen, hängt davon ab, dass der Schlüssel selbst wohlgeformt ist. Ein zu kurzer Schlüssel kollidiert mit dem eines anderen Kunden und dedupliziert still zwei verschiedene Vorgänge zu einem. Ein Schlüssel mit Zeichen außerhalb des URL-sicheren Alphabets wird irgendwo zwischen Ihrem Client, einem Proxy, der Log-Pipeline und dem Server verstümmelt, sodass die Wiederholung mit einer anderen Zeichenkette als dem Original ankommt und zweimal abgerechnet wird. Ein leerer Schlüssel wird von den meisten APIs sofort abgelehnt, oft mit einem generischen Fehler, dessen Ursache einen Nachmittag kostet. Wenn Sie den Schlüssel durch diese Formatprüfung für Idempotenzschlüssel am Rand Ihres Systems laufen lassen, werden alle drei Fehlerfälle zur Entwicklungszeit, in einer Testsuite oder in einer Vorabprüfung in Ihrem eigenen Dienst erkannt — statt Wochen später in einem Abgleichsbericht.

Was genau validiert wird

Die Prüfung wendet die Formatregeln an, die Zahlungsdienstleister und Deduplizierungs-Middleware am häufigsten dokumentieren. Erstens muss der Schlüssel eine nicht leere Zeichenkette sein; ein leerer Schlüssel ist ein Fehler, keine Warnung, weil kein Server ihn akzeptieren wird. Zweitens die Länge: Standardmäßig sollte der Schlüssel mindestens 16 Zeichen lang sein — die Untergrenze, unter der Eindeutigkeit nicht mehr plausibel ist — und höchstens 255 Zeichen, die Obergrenze, die die meisten Speicher akzeptieren; beide Grenzen sind pro Aufruf konfigurierbar. Drittens das Alphabet: Jedes Zeichen muss aus dem nicht reservierten Zeichensatz der RFC 3986 stammen — Buchstaben, Ziffern, Bindestrich, Punkt, Unterstrich und Tilde. Diese Zeichen durchlaufen HTTP-Header, URL-Segmente und Log-Versender ohne Kodierung, und genau dort reisen Idempotenzschlüssel. Wenn ein Zeichen durchfällt, listet die Antwort jedes einzelne beanstandete Zeichen auf, damit Sie sehen, ob jemand ein Leerzeichen, einen Schrägstrich oder ein Emoji eingebaut hat, und das issues-Array benennt das Problem maschinenlesbar: too_short, too_long oder unsafe_characters.

Wo die Prüfung in Ihrem Stack sitzt

Die meisten Teams binden sie an zwei Stellen ein. Die erste ist der Client, der die Schlüssel erzeugt: Direkt nachdem Sie einen Schlüssel aus einer UUID, einem Zeitstempel und einer Benutzer-ID gebaut haben, validieren Sie ihn einmal und protokollieren eine Warnung, falls er durchfällt, damit ein Generator-Fehler in Staging statt in Produktion auffällt. Die zweite sind Vertragstests: Schicken Sie einen Stapel Schlüssel aus jeder Integration, die Sie betreuen, in CI an den Endpunkt, damit ein Bibliotheks-Update, das das Kodierungsverhalten ändert, den Build scheitern lässt. Der Endpunkt ist deterministisch und zustandslos — nichts wird gespeichert, keine Liste bereits gesehener Schlüssel wird konsultiert, und dieselbe Eingabe erzeugt immer dieselbe Ausgabe —, sodass er mit echten Schlüsseln sicher aufgerufen werden kann und mit $0.002 pro Anfrage günstig genug ist, um bei jedem Deployment zu laufen. Dieselbe Validierung läuft auf dieser Seite auch kostenlos in Ihrem Browser, sodass ein Entwickler während eines Vorfalls einen verdächtigen Schlüssel einfügen kann und dieselbe Antwort erhält, die die API geben würde.

Schlüssel in einem Zahlungs-Retry-Client validieren

Prüfen Sie den erzeugten Schlüssel, bevor Sie den Idempotency-Key-Header anhängen, damit ein fehlerhafter Generator schnell scheitert, statt einen Kunden doppelt zu belasten.

Integrationen per Vertragstest in CI prüfen

Schicken Sie die Schlüssel, die jeder Ihrer Dienste erzeugt, bei jedem Build an die Prüfung und lassen Sie die Pipeline scheitern, wenn eine Bibliotheksänderung das Format bricht.

Einen Deduplizierungs-Vorfall debuggen

Fügen Sie einen Schlüssel aus den Logs in die kostenlose Browser-Prüfung ein, um zu sehen, ob Kodierung oder Länge erklären, warum zwei Wiederholungen als unterschiedliche Anfragen behandelt wurden.

Was kostet das?

$0.002 pro Anfrage. Dieselbe Prüfung läuft auf dieser Seite kostenlos in Ihrem Browser.

Wird der Schlüssel gespeichert oder mit bereits gesehenen Schlüsseln verglichen?

Nein. Die Prüfung betrifft nur das Format: Länge und Zeichen. Es wird nichts gespeichert und kein Deduplizierungszustand abgefragt.

Warum ist ein leerer Schlüssel ein Fehler und keine fehlgeschlagene Prüfung?

Weil ein leerer Schlüssel nie eine Formatwahl ist, sondern ein Fehler des Aufrufers. Die API weist ihn als ungültige Eingabe zurück, damit das Problem sofort auffällt.

Welche Zeichen gelten als URL-sicher?

Der nicht reservierte Zeichensatz der RFC 3986: Groß- und Kleinbuchstaben, Ziffern, Bindestrich, Punkt, Unterstrich und Tilde. Alles andere wird in invalid_chars gemeldet.

Kann ich die Längengrenzen ändern?

Ja. Übergeben Sie min_length und max_length, um die Standardwerte 16 und 255 zu überschreiben, etwa für einen Anbieter, der eine Obergrenze von 64 Zeichen dokumentiert.

Garantiert ein gültiges Ergebnis, dass der Schlüssel eindeutig ist?

Nein. Die Prüfung kontrolliert nur das Format. Die Eindeutigkeit entsteht durch die Erzeugung des Schlüssels — eine UUID oder eine vergleichbare Entropiequelle ist die übliche Antwort.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/dev/idempotency-key-format-check

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/dev/idempotency-key-format-check \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"key":"order-7f3a9c2e-2026-07-25"}'
{
  "key": "order-7f3a9c2e-2026-07-25"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.idempotency_key_format_check",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Vollständige KIT-Dokumentation lesen →