Core concepts
The nouns used across Outlap and its APIs: clubs and tracks, events, sessions, laps, drivers, transponders and API keys.
A few ideas explain most of the product and every endpoint.
Clubs and tracks
A club is the unit that owns things: members, events, API keys and payouts. A track is a club-like account for a circuit operator, with a calendar and paddock passes. In the API both appear as the “club” that an API key belongs to.
Events
An event belongs to one club. It has a date, a venue, a visibility (public or private), capacity, tickets and a waiver. Only events that are published and public show on public pages, calendars and embeds, and public events expose their leaderboard, laps and feed without a key.
Sessions
An event can have sessions: practice, qualifying, a race, or run groups. A session has a status: scheduled, live or finished. Lap numbers restart in each session.
Laps
A lap is a time in milliseconds, with an optional set of sector splits, a speed-trap reading and a validity flag. Laps arrive from several places, recorded in each lap’s source:
| Source | Meaning |
|---|---|
api | Posted through Ingest laps. |
live:<vendor> | Decoded from a streamed feed, such as live:orbits. |
| Race Control | Entered by hand, imported from a file or sent from a phone. |
Invalid laps (cuts, off-track, penalties) are kept for the record but don’t count towards results.
Drivers, transponders and car numbers
A driver is an Outlap account. Timing systems know a transponder and a car number, not an account. The event’s Paddock tab holds the mapping, and lap ingestion resolves in this order:
user_idon the lap, if you send it.- The transponder on the event’s roster.
- The car number (for streams).
Drivers can save their transponder and race number in their garage, so it fills in for them. Laps that match nobody are still stored, under the transponder or number, and can be assigned in Race Control.
Results
Standings are computed: best lap, laps completed, total time including time penalties, gap to the leader, points, and a status such as classified. They recompute when laps or penalties change.
API keys and scopes
An API key belongs to a club and carries scopes. timing:write lets a key push laps, penalties and feeds. Keys are shown once, hashed at rest and revocable. See Authentication.
Units
Times are integer milliseconds, money is integer minor units, and timestamps are ISO 8601 in UTC. See Conventions.