Разработчикам
Веб-приложение Checkpoint — это тонкая надстройка над HTTP-API, и тот же API открыт для вас. Отдельной регистрации разработчика и ключей API нет: вы аутентифицируетесь обычной учётной записью Checkpoint.
Базовые URL
Заголовок раздела «Базовые URL»| Среда | Базовый URL |
|---|---|
| Продакшен | https://api.checkpointrun.com |
| Тестовая | https://dev.api.checkpointrun.com |
Разрабатывайте на тестовой среде. Там работает тот же код, немного впереди продакшена, а её данные одноразовые: их могут стереть без предупреждения — как раз то, что нужно, пока вы экспериментируете.
Как посмотреть API
Заголовок раздела «Как посмотреть API»Каждая среда отдаёт собственное описание OpenAPI и браузер для него:
/swagger— все эндпоинты с параметрами и ответами и кнопкой «try it out»/swagger/v1/swagger.json— сам документ OpenAPI, который большинство генераторов клиентов принимает как есть
Документация публична, а описанные в ней операции — нет: каждая по-прежнему проверяет ровно те же права, что и приложение. Возможность прочитать про эндпоинт не означает возможности его вызвать.
Аутентификация
Заголовок раздела «Аутентификация»Отправьте свою почту и пароль Checkpoint — и получите bearer-токен:
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": "…" }Передавайте его при каждом следующем вызове:
curl https://api.checkpointrun.com/api/me/alerts \ -H "Authorization: Bearer $ACCESS_TOKEN"Токен доступа живёт час. Чтобы получить новую пару, не спрашивая пароль снова,
отправьте токен обновления на /refresh:
curl -X POST https://api.checkpointrun.com/refresh \ -H 'content-type: application/json' \ -d '{"refreshToken":"…"}'Веб-приложение входит через тот же эндпоинт с ?useCookies=true и получает
вместо этого cookie сессии. Этот путь — для браузеров на собственных доменах
Checkpoint; как клиент API используйте токен.
Что можно читать без входа
Заголовок раздела «Что можно читать без входа»Публичный контент не требует токена вовсе: список событий, публичные дистанции, клубы и карты, а также протоколы результатов. Всё приватное, всё о вас и любая запись требуют токена.
Ограничение частоты
Заголовок раздела «Ограничение частоты»100 запросов в минуту — считаются по учётной записи, когда вы аутентифицированы, и по IP-адресу до этого. Сверх лимита возвращается 429; окно фиксированное, так что достаточно дождаться следующего.
Что стоит знать заранее
Заголовок раздела «Что стоит знать заранее»- Перечисления — строки, а не числа. Статус события приходит как
"Finalized", статус заявки — как"Waitlisted". Сравнение с числом молча не совпадёт никогда — ошибка, которую мы допускали сами. - Отметки времени — ISO-8601 со смещением, в UTC, например
2026-08-14T20:28:26.335649+00:00. - API пока не версионируется, и контракт может меняться. Это тот же API, которым пользуется приложение, поэтому он движется вместе с ним. После обновления лучше перечитать документ OpenAPI, чем полагаться на однажды увиденное.
- Браузерные приложения на других доменах вызвать его не смогут. CORS разрешает только собственные фронтенды Checkpoint, поэтому обращайтесь к API с сервера, из скрипта или из нативного приложения, а не с чужой веб-страницы.
Ссылки для обмена
Заголовок раздела «Ссылки для обмена»У событий, дистанций, клубов, карт и опубликованных результатов есть ещё
короткие публичные ссылки на https://go.checkpointrun.com: в чате они
разворачиваются в карточку-превью, а настоящий браузер перенаправляют в
Checkpoint.
Если нужно больше
Заголовок раздела «Если нужно больше»Если вам не хватает эндпоинта или гарантии, которой мы пока не даём, напишите об этом на доске идей — туда же попадают остальные пожелания, и её читают.