RaceDashJoin the waitlist
Legal

RaceDashBot

Last updated 2026-10-17

1. What RaceDashBot is

RaceDash makes onboard videos with lap-timer overlays. When a RaceDash user imports a session from a timing provider, RaceDash's server fetches that session's published results. RaceDashBot is that server.

It reads the same public pages a driver would open. It fetches them once, keeps a shared copy for a short time, and serves that copy to everyone who asks.

2. What it fetches

RaceDashBot fetches only the sessions and events a RaceDash user asked for. It does not crawl, follow links on a page, run scripts or send cookies. If a provider redirects a request, RaceDashBot follows that redirect once, and only to another page on the same provider host.

RaceDash fetches a session when a user imports it. It also fetches one when a results check on a planned project looks for that session's results.

Alpha Timing

All pages are on www.alpharacehub.com. A session costs three requests, or four for a race.

  • /{club}/e/{event}/s/{session}/laptimes
  • /{club}/e/{event}/s/{session}/replay
  • /{club}/e/{event}/s/{session}/result
  • /{club}/e/{event}/s/{session}/grid (races only)

An event page costs one request: /{club}/e/{event} or /{club}/event/{event}, as the user's link has it.

SpeedHive by MyLaps

All requests go to the results API at eventresults-api.speedhive.com, under the base path /api/v0.2.3/eventresults. The paths below start after that base path. A session costs one request for the session, one for its classification, one for the lap chart if it is a race, and one for the lap data of each classified driver.

  • /sessions/{session}
  • /sessions/{session}/classification
  • /sessions/{session}/lapchart (races only)
  • /sessions/{session}/lapdata/{n}/laps, once for each classified driver

An event's session list costs one request: /events/{event}/sessions.

When event pages are fetched

The event page is fetched when a RaceDash user's planned project checks whether results are up. That happens when they open the project, when their computer comes back online, or when they press Check now. A project checks at most once a minute. Nothing runs on a timer.

3. How much

Results are cached and shared between all users, so one session is fetched once, not once for each user.

  • A session with no results yet is kept for 60 seconds.
  • A session that started under an hour ago, or has no start time, is kept for 5 minutes.
  • A session that started under a day ago is kept for 4 hours.
  • An older session is kept for 60 seconds. The RaceDash app keeps its own copy.
  • An event page is kept for 60 seconds.
  • A link with nothing at it is remembered for 120 seconds.

So a copy lives between 60 seconds and 4 hours. After that, RaceDashBot fetches again only if a user asks.

RaceDashBot stays under these limits for each provider. They are maximums, and real traffic is usually well below them.

  • Alpha Timing up to 20 requests a minute, 2 at once.
  • SpeedHive by MyLaps up to 120 requests a minute, 4 at once.

Each RaceDash user is limited too. These limits count for every provider together.

  • 60 requests a minute to RaceDash's server.
  • 20 session imports an hour that need a new fetch.
  • 60 event lookups an hour that need a new fetch.

4. When told to stop

If a provider asks RaceDashBot to slow down or stop, it stops for that provider.

  • HTTP 429. It waits for the time in the Retry-After header. If there is none, it waits 60 seconds. It never waits more than 30 minutes, and it never retries a 429.
  • HTTP 403. It stops for 15 minutes.
  • Failures. It retries a failed request once, after 2 seconds. A request that still fails counts. After 3 counted failures within 5 minutes, it stops for 5 minutes.

While it is stopped, RaceDashBot sends the provider nothing. RaceDash users see a message that the provider is busy and to try again later.

5. How to identify it

Every request has this User-Agent:

RaceDashBot/1.0 (+https://racedash.io/bot; support@racedash.io)

Requests come from Vercel's London region. There is no fixed IP range, so please match on the User-Agent.

6. Contact

Email support@racedash.io about anything, from "slow down" to "stop".

We can pause RaceDashBot for your site within minutes, without a release.