Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.time2.bike/llms.txt

Use this file to discover all available pages before exploring further.

Time2Bike uses slugs for human-readable URLs across organizations, events, and series.

Slug rules

  • Lowercase letters, numbers, and hyphens.
  • Must match ^[a-z0-9-]+$.
  • Cannot start or end with a hyphen.
  • Globally unique across each type (one org slug per system; event slugs are unique per org).

URL shapes

URLResolves to
time2.bike/[slug]Organization public page
time2.bike/[slug]/storeOrganization merch storefront
time2.bike/events/[event-slug]Event public page
time2.bike/events/[event-slug]/registerEvent registration flow
time2.bike/events/[event-slug]/resultsEvent results
time2.bike/events/[event-slug]/liveEvent live results
time2.bike/series/[series-slug]Series public page
time2.bike/profiles/[participantId]Rider public profile (note: uses the participant ID, not a slug)

Slug resolution

The /slug/[slug] API returns { type, organization | event | series | user } so the frontend can resolve ambiguous links generically.

Changing slugs

You can change an org, event, or series slug from its settings page at any time. Old slugs do not redirect — links posted with the previous slug break. Coordinate slug changes carefully.

Reserved slugs

Slugs that collide with top-level Time2Bike routes (such as auth, dashboard, account, organizations, events, series, profiles, timing, legal, and api) are rejected by the slug picker. If a slug isn’t available, the picker tells you and suggests an alternative.