Entwickler
Die Web-App von Checkpoint ist nur eine dünne Schicht über einer HTTP-API, und dieselbe API steht auch dir offen. Es gibt keine separate Entwickler-Registrierung und keinen API-Schlüssel — du authentifizierst dich mit einem ganz normalen Checkpoint-Konto.
Basis-URLs
Abschnitt betitelt „Basis-URLs“| Umgebung | Basis-URL |
|---|---|
| Produktion | https://api.checkpointrun.com |
| Test | https://dev.api.checkpointrun.com |
Entwickle gegen die Testumgebung. Sie läuft mit demselben Code, ein wenig vor der Produktion, und ihre Daten sind Wegwerfware — sie können jederzeit ohne Ankündigung gelöscht werden, was beim Ausprobieren genau richtig ist.
Die API durchstöbern
Abschnitt betitelt „Die API durchstöbern“Jede Umgebung liefert ihre eigene OpenAPI-Beschreibung und einen Browser dafür:
/swagger— jeder Endpunkt mit Parametern und Antworten, inklusive „Try it out“-Knopf/swagger/v1/swagger.json— das rohe OpenAPI-Dokument, das die meisten Client-Generatoren direkt verarbeiten
Die Dokumentation ist öffentlich, die beschriebenen Operationen sind es nicht: Jede setzt weiterhin genau dieselben Berechtigungen durch wie die App. Über einen Endpunkt lesen zu können heißt also nicht, ihn aufrufen zu dürfen.
Authentifizierung
Abschnitt betitelt „Authentifizierung“Schick deine Checkpoint-E-Mail und dein Passwort und du bekommst ein Bearer-Token zurück:
curl -X POST https://api.checkpointrun.com/login \ -H 'content-type: application/json' \ -d '{"email":"you@example.com","password":"your-password"}'{ "tokenType": "Bearer", "accessToken": "…", "expiresIn": 3600, "refreshToken": "…" }Sende es bei jedem weiteren Aufruf mit:
curl https://api.checkpointrun.com/api/me/alerts \ -H "Authorization: Bearer $ACCESS_TOKEN"Das Access-Token gilt eine Stunde. Für ein frisches Paar, ohne erneut nach dem
Passwort zu fragen, schick das Refresh-Token an /refresh:
curl -X POST https://api.checkpointrun.com/refresh \ -H 'content-type: application/json' \ -d '{"refreshToken":"…"}'Die Web-App meldet sich über denselben Endpunkt mit ?useCookies=true an und
bekommt stattdessen ein Sitzungs-Cookie. Dieser Weg ist für Browser auf
Checkpoints eigenen Domains gedacht; als API-Client nimmst du das Token.
Was du ohne Anmeldung lesen kannst
Abschnitt betitelt „Was du ohne Anmeldung lesen kannst“Öffentliche Inhalte brauchen gar kein Token: die Veranstaltungsliste, öffentliche Bahnen, Vereine und Karten sowie die Ergebnislisten. Alles Private, alles über dich und jeder Schreibzugriff brauchen eines.
Ratenbegrenzung
Abschnitt betitelt „Ratenbegrenzung“100 Anfragen pro Minute — gezählt pro Konto, sobald du authentifiziert bist, davor pro IP-Adresse. Darüber gibt es 429; das Zeitfenster ist fest, Abwarten genügt also.
Gut zu wissen, bevor du anfängst
Abschnitt betitelt „Gut zu wissen, bevor du anfängst“- Enums sind Strings, keine Zahlen. Der Status einer Veranstaltung kommt
als
"Finalized"zurück, der einer Anmeldung als"Waitlisted". Ein Vergleich mit einer Zahl trifft stillschweigend nie zu — ein Fehler, den wir selbst gemacht haben. - Zeitstempel sind ISO-8601 mit Offset, in UTC, z. B.
2026-08-14T20:28:26.335649+00:00. - Die API ist noch nicht versioniert, und der Vertrag kann sich ändern. Es ist dieselbe API, die die App benutzt, sie bewegt sich also mit der App. Lies das OpenAPI-Dokument nach einem Update lieber neu, statt dich auf einen einmal gesehenen Stand festzulegen.
- Browser-Apps auf anderen Domains können sie nicht aufrufen. CORS erlaubt nur Checkpoints eigene Frontends — ruf die API also von einem Server, einem Skript oder einer nativen App aus auf, nicht von einer fremden Webseite.
Teilen-Links
Abschnitt betitelt „Teilen-Links“Veranstaltungen, Bahnen, Vereine, Karten und veröffentlichte Ergebnisse haben
außerdem kurze öffentliche Links auf https://go.checkpointrun.com. Sie zeigen
in Chat-Apps eine Vorschaukarte und leiten einen echten Browser nach Checkpoint
weiter.
Mehr anfragen
Abschnitt betitelt „Mehr anfragen“Wenn dir ein Endpunkt fehlt oder du eine Zusage brauchst, die wir noch nicht geben, sag es auf dem Feedback-Board — dort landen auch alle anderen Wünsche, und es wird gelesen.