*/unified
API that unifies a lot of features from our other API's.
Preliminary: This API is currently in preview and not production-ready. We may make changes before it is finalized. You’re welcome to test it for free during this period.
Request
URL https://racemap.com/api/data/v1/:eventId/unified
Method GET
Live sample https://racemap.com/api/data/v1/66bf4318d1c783279d183dd3/unified Corresponding map https://racemap.com/player/100KmDuathlon2018_API-live-sample
Optional query parameters
Set various query parameters according to your need when calling the API endpoint, e.g. to smoothen gap values.
The
nowparameter defines a timestamp from which you want to have the results.ISO 8601 UTC String for API ?now=2026-01-29T09:23:00.000Z
The participantId of a chosen reference participant for calculation
gapAverage,gap,gapChaseandgapDistance.String for API ?participantId=66bf4318d1c783279d183e3d
The
startNumberof a chosen reference device for calculationgapAverage,gap,gapChaseandgapDistance.String for API ?startNumber=053
trueorfalseDefault: true
Combine
interpolationandliveDelayto smooth movement between consecutive coordinates.
Duration in seconds from the timestamp recording a location until this location is provided in the API.
Default: 20, according to "Live delay time" in advanced settings of the tracking map. The set
liveDelayquery parameter processes the values in the API without impact on the visualization.Maximum value: 1800
String for API ?liveDelay=200
Duration in seconds to average the
speedvalues in the API. IfcurrentSpeedDurationis set to 120, then the averagespeedof the last 2 minutes is calculated.Default: 300 seconds
Maximum value: 1800
String for API ?currentSpeedDuration=120
You can call the same API endpoint with different query parameters at the same time. You can also combine queries with & in one call eg. https://racemap.com/api/data/v1/66bf4318d1c783279d183dd3/unified?liveDelay=600&interpolation=false¤tSpeedDuration=600&participantId=66bf4318d1c783279d183e3d
Response
Event object
id
Unique ID of event, generated in RACEMAP
66bf4318d1c783279d183dd3
name*
Name of event
"Sample live | 100km Duathlon"
eventType*
Type of sport
"trail"
location*
Location of the event
"🇩🇪 Dresden"
timestamp
Time the data belongs to. Usually current time or time of the now query parameter.
"2022-03-09T10:00:0.000Z"
startTime*
Start time in UTC
"2022-03-09T07:00:03.201Z"
endTime*
End time in UTC
"2022-03-09T14:59:38.201Z"
shadowTrackUrl
Link to download the shadow track as geo json
progress
How much of the event has been passed [%]
53.97
readers
Array of all timing hardware locations in this event
timekeepings
Array of split points
starters
Array for participant objects
*User defined in RACEMAP event's settings.
Readers object
Represents the timing hardware at the race course. The reader information is extracted from all received reads within the event time.
readerId
Unique ID of the reader, provided by timing system
"T-12056"
readerName
Name of the reader, available only if provided by timing system
"Backup 5K" or "10km"
lng
Longitude of the reader
13.727678288
lat
Latitude
50.976534023
Timekeepings object
Represents those split points in the event's map settings with an activated "timekeeping" property.
id
Unique ID of the split point, generated in RACEMAP
6450e60747adaed475b48
name
Name of the split
"Split 5" or "Water Station"
position
Array with longitude, latitude, hight [m]
13.881129999, 51.075250000, 250
Participant object
id
Unique ID of participant, generated in RACEMAP
"61a2122f181c0a6c4bb5376e"
name*
Name
"K. Treppe" or "Leupold"
startNumber*
Bib number
"2" or "052"
markerColor*
Color of dot in tracking map, hex code
"#ffffff"
tags*
Object with optional attributes to filter participants eg. age group or nation, format "tag": "value"
"age": "40-49", "sex": "mal",
importId
User-defined ID with imported participant data, Generic API (importId) or RACE|RESULT API (Id)
"UniqueImportId_2" or "null"
if no importId exists
rank
rank of the participant, processed by RACEMAP
"12" or "283"
startTimeMeta
Start time in UTC
"2020-04-25T06:00:00Z"
finishTimeMeta
Finish time in UTC
"2020-04-25T12:10:13Z"
startTimeDerived
Start time in UTC, processed in RACEMAP
"2020-04-25T06:00:05Z"
finishTimeDerived
Finish time in UTC, processed in RACEMAP
"2020-04-25T12:10:12Z"
current
Array with latest information about the participant
reads
Array with the accepted reads of the participant
results
*The parameter is imported or synchronized with RACEMAP from an external source.
Current object
time
Timestamp in UTC of geolocation
"2022-01-24T16:33:47.012Z"
lng
Longitude of the participant
13.73032
lat
Latitude
51.00622
elv
Altitude above zero [m]
593
speed
Average speed [m/s]
5.2727
fromStart
Distance from first geolocation of shadowtrack along shadowtrack [m]
9962.6826
toFinish
Distance to last geolocation of shadowtrack along shadowtrack [m]
89097.3173
eta
Estimated time of arrival [s], time from now to reach last geolocation of shadowtrack, prediction with speed
16897.77
Reads object
Does not provide all received detections of the participant. Provides only those reads, that have been validated by the prediction - accepted reads.
readerId
Unique ID of the reader, provided by timing system
"T-12056"
time
Timestamp in UTC of detection through timing system
"2022-03-09T14:59:38.201Z"
Results object
Represents either virtual detections from prediction - extrapolation or interpolation. If the offsets of read and timekeeping are close to each other then it represents the detection from timing system.
id
Unique ID of the split point, generated in RACEMAP
6450e60747adaed475b48
time
Timestamp in UTC of prediction: extrapolation or interpolation OR detection from timing system
"2022-03-09T14:59:38.201Z"
Last updated
