Publish Live Results
Live results are structured JSON uploads that update the Race Roster online results page as finishers cross the line. Use this approach during your event to keep participants and spectators current on standings, splits, and finish times.
RunScore uploads live results via the Race Roster API using the standard results JSON format (the default when External Report To RaceRoster is set and Output Format txt is not specified).
For plain-text awards or age-group standings, see Publish Unstructured Results instead.
Before you start
- Start the RunScore application.
- Open the race you are scoring.
- Select Race Roster as your online system: Tools → Online system → RaceRoster.
- Log in and select the Race Roster event: Online → Login, then Online → Select race.
Required listing commands
Every listing file that uploads live results must include:
| Command | Purpose |
|---|---|
External Report To RaceRoster | Targets Race Roster as the upload destination |
Records Per Page | Set high enough to include all finishers (e.g. 100000) |
No Page Numbers | Required — output is JSON, not a printed page |
.Header / .End Of Header | Include the Race Roster results race ID wrapped in ## markers |
Gun time and chip time
Race Roster expects both gun time and chip time as separate Event blocks in the listing. Include one block for each:
Event Finish
minus GunStart
Field Header Gun Start Time
Time Format MM:SS.1
Event Finish
minus ChipStart
Field Header Chip Start Time
Time Format MM:SS.1
Example listing file
* Upload Results to RaceRoster 5k
External Report To RaceRoster
Records Per Page 100000
No Page Numbers
Header
##227867##
.End Of Header
Select Bib
> 0
AND
Select DNF
EQ
AND RACE
SW 5K
Field BIB
Field FIRST NAME
FIELD LAST NAME
Field AGE
Field GENDER
Event Finish
minus GunStart
Field Header Gun Start Time
Time Format MM:SS.1
Event Finish
minus ChipStart
Field Header Chip Start Time
Time Format MM:SS.1
The ##227867## value in the header is the Race Roster results race ID for this specific sub-event. Find the correct ID in your Race Roster dashboard and update it for every new race.
For reusable listings across races, define results race IDs as custom variables in Entries.ini or use parameter parsing with .rsm files.
Send results manually
- Prepare your listing file with the commands above.
- Right-click the listing file in RunScore.
- Select Send results to online.
RunScore generates JSON output and uploads it to Race Roster. Repeat as new finishers are recorded to refresh the online results page.
To preview output before uploading, use Output To Editor instead of sending online.
Automate during the race
To upload on a schedule without right-clicking each time, add External Report To RaceRoster to a listing file and run it automatically:
Option 1 — Auto Run from the listing file
Auto Run File live-results.lst
Auto Run Seconds 120
Option 2 — Right-click Auto Run
Right-click the listing file, choose Auto Run, and set the interval (e.g. every 60 or 120 seconds).
RunScore re-uploads results at each interval. Incremental upload sends only new or changed records on subsequent runs, which keeps live updates fast during large fields.
You can have more than one listing file set to auto-run for live uploads — for example, separate files per sub-event or per results view.
Verify on Race Roster
After uploading, confirm results appear on Race Roster:
- In RunScore: Online → View results online
- Or open your event in the Race Roster dashboard and check the live results page
Related
- Publish Unstructured Results — plain-text awards and standings uploads
- Posting Online Results — additional listing examples in the Programming Primer
- Auto Run File · Auto Run Seconds — automate listing execution