mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-22 12:03:58 +00:00
245 lines
11 KiB
HTML
245 lines
11 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
|
<link href='../../../../sailing-fontface-1.0.cache.css' media='screen' rel='stylesheet' title='Default stylesheet' type='text/css' />
|
|
<link href='../../../main.css' media='screen' rel='stylesheet' title='Default stylesheet' type='text/css' />
|
|
<link rel='icon' href='../../../../sap.ico' type='image/x-icon'>
|
|
<title>SAP Sailing Analytics Webservices API Version 1.0</title>
|
|
</head>
|
|
<body>
|
|
<h1>SAP Sailing Analytics Webservices API Version 1.0 - Overview</h1>
|
|
|
|
<p>
|
|
A number of web services are available to query the state of a SAP Sailing Analytics server instance.
|
|
Note that different server instances exist, and not all servers hold the same data. Usually, events get
|
|
their own URL which is then made sure to point to a server instance holding the data for that event.
|
|
We use an Apache reverse proxy to map URLs (and in particular the sub-domain) to a particular server instance.
|
|
So, <a href="http://www.sapsailing.com">www.sapsailing.com</a> may end up on a different server instance than
|
|
<a href="http://tw2013.sapsailing.com">tw2013.sapsailing.com</a>
|
|
or <a href="http://ess40-2013.sapsailing.com">ess40-2013.sapsailing.com</a>. Usually, we hand out a per-event
|
|
or per-series URL, such as the ones above (except www.sapsailing.com which is the general landing page),
|
|
and you would only fetch the content for the event you're interested in, even if the server instance has more.
|
|
In all subsequent explanations, you may replace the "www.sapsailing.com" hostname by an according per-event host
|
|
name to make sure you get to the event you're interested in.
|
|
</p>
|
|
<div style="height: 1em;"></div>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<td>Webservice URL</td>
|
|
<td>Description</td>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><a href="eventCreateEvent.html">/api/v1/events/createEvent</a></td>
|
|
<td>Creates a new event</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="eventGetDoc.html">/api/v1/events</a></td>
|
|
<td>Gets all events</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="eventGetDoc.html">/api/v1/events/{id}</a></td>
|
|
<td>Gets the details of an event</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="eventRaceStatesGetDoc.html">/api/v1/events/{id}/racestates</a></td>
|
|
<td>Gets the race states of all races of an event</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattasGetDoc.html">/api/v1/regattas</a></td>
|
|
<td>Gets all regattas</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattaGetDoc.html">/api/v1/regattas/{name}</a></td>
|
|
<td>Gets the details of a regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="racesGetDoc.html">/api/v1/regattas/{name}/races</a></td>
|
|
<td>Gets the list of races in a regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="entriesGetDoc.html">/api/v1/regattas/{name}/entries</a></td>
|
|
<td>Gets the entries of a regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceEntriesGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/entries</a></td>
|
|
<td>Gets the entries of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceBearingOfFirstLegGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/firstlegbearing</a></td>
|
|
<td>Gets the bearing of the first leg</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceMarkPassingsGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/markpassings</a></td>
|
|
<td>Gets all mark passings of a race, by competitor and by waypoint</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceCompetitorPositionsGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/competitors/positions</a></td>
|
|
<td>Gets the GPS positions of the competitors of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceCompetitorLiveGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/competitors/live</a></td>
|
|
<td>Gets some competitor information (e.g current rank, current leg) for a live race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceCompetitorLegsGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/competitors/legs</a></td>
|
|
<td>Gets some leg information (e.g. rank, distance traveled) for all competitors of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceMarkPositionsGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/marks/positions</a></td>
|
|
<td>Gets all GPS positions of the course marks of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceCourseGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/course</a></td>
|
|
<td>Gets the course of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceTimesGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/times</a></td>
|
|
<td>Gets the timing data for a race, including the start/end times, the tracking start/end times
|
|
as well as the "split times" or "mark passing times" of the first competitor rounding each mark.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceTargetTimeGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/targettime</a></td>
|
|
<td>Gets the estimated target time of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceWindGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/wind</a></td>
|
|
<td>Gets all GPS positions and data values for the wind of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattasDataMiningGetDoc.html">/api/v1/regattas/datamining</a></td>
|
|
<td>Gets all query identifiers for regattas</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattaRunQueryGetDoc.html">/api/v1/regattas/{regattaname}/datamining/{queryidentifier}</a></td>
|
|
<td>Executes the query for the regatta and gets the result</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattasAddRaceColumns.html">/api/v1/regattas/{regattaname}/addracecolumns</a></td>
|
|
<td>Adds one or more race columns to a regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattasRemoveRaceColumn.html">/api/v1/regattas/{regattaname}/removeracecolumn</a></td>
|
|
<td>Removes a race column from a regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattaCompetitorsGet.html">/api/v1/regattas/{regattaname}/competitors</a></td>
|
|
<td>Obtains the competitors participating in a regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="regattaCompetitorsCreateAndAdd.html">/api/v1/regattas/{regattaname}/competitors/createandadd</a></td>
|
|
<td>Creates a competitor and adds it to the regatta</td>
|
|
</tr>
|
|
<tr>
|
|
<td>/api/v1/regattas/{regattaname}/competitors/{competitorId}/add</td>
|
|
<td>Registers a competitor with a regatta (POST)</td>
|
|
</tr>
|
|
<tr>
|
|
<td>/api/v1/regattas/{regattaname}/competitors/{competitorId}/remove</td>
|
|
<td>Removes a competitor from a regatta (POST)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceRunQueryGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/datamining/{queryidentifier}</a></td>
|
|
<td>Executes the query for the race and gets the result</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardgroupsGetDoc.html">/api/v1/leaderboardgroups</a></td>
|
|
<td>Gets all leaderboard groups</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardgroupGetDoc.html">/api/v1/leaderboardgroups/{name}</a></td>
|
|
<td>Gets the details of a group of leaderboards</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardsGetDoc.html">/api/v1/leaderboards</a></td>
|
|
<td>Gets all leaderboards</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardGetDoc.html">/api/v1/leaderboards/{name}</a></td>
|
|
<td>Gets the details of a leaderboard</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardCheckinPostDoc.html">/api/v1/leaderboards/{name}/device_mappings/start</a></td>
|
|
<td>Tracking App Device Checkin on leaderboard</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardCheckoutPostDoc.html">/api/v1/leaderboards/{name}/device_mappings/end</a></td>
|
|
<td>Tracking App Device Checkout on leaderboard</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardCompetitorGetDoc.html">/api/v1/leaderboards/{name}/competitors/{id}</a></td>
|
|
<td>Gets the details of a competitor in the context of a leaderboard</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardRaceMarksGetDoc.html">/api/v1/leaderboards/{name}/marks</a></td>
|
|
<td>Gets the marks of a race (from the RaceLog and if possible the TrackedRace)</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardRaceSetTrackingTimes.html">/api/v1/leaderboards/{name}/settrackingtimes</a></td>
|
|
<td>Modifies the race's tracking interval</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardRaceStartTracking.html">/api/v1/leaderboards/{name}/starttracking</a></td>
|
|
<td>Starts tracking for a race log / smart phone-tracked race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardRaceStopTracking.html">/api/v1/leaderboards/{name}/stoptracking</a></td>
|
|
<td>Stops tracking for a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="leaderboardMarkGpsFixesPostDoc.html">/api/v1/leaderboards/{name}/marks/{id}/gps_fixes</a></td>
|
|
<td>Pings the location of a mark via the RegattaLog</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="gpsFixesPostDoc.html">/api/v1/gps_fixes</a></td>
|
|
<td>Adds GPS-fixes that originated from a device with a unique identifier</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="competitorGetDoc.html">/api/v1/competitors/{id}</a></td>
|
|
<td>Gets the details of a competitor</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="competitorTeamGetDoc.html">/api/v1/competitors/{id}/team</a></td>
|
|
<td>Gets the details of a competitor's team</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="competitorTeamImagePostDoc.html">/api/v1/competitors/{id}/team/image</a></td>
|
|
<td>Sets the team image</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="startorderGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/startorder</a></td>
|
|
<td>Gets the order in which competitors have started or are expected to start</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="maneuversGetDoc.html">/api/v1/regattas/{regattaname}/races/{racename}/maneuvers</a></td>
|
|
<td>Gets all maneuvers performed by all competitors of a race</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="statisticsGetDoc.html">/api/v1/statistics/years?[years={year}[&years={year}]]</a></td>
|
|
<td>Gets statistics regarding regattas and races grouped by years</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="allRacesGetDoc.html">/api/v1/trackedRaces/allRaces</a></td>
|
|
<td>Gets all TrackedRaces found on the local instance as well as the collected TrackedRaces from all remote instances
|
|
and provides them in a list sorted by race start time, together with a sequence number for each one. This is a
|
|
simple way to check how many races have been tracked altogether and which one may be an "anniversary race."
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="getRacesGetDoc.html">/api/v1/trackedRaces/getRaces</a></td>
|
|
<td>Gets all TrackedRaces found on the local instance with a valid start time.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><a href="raceDetailsGetDoc.html">/api/v1/trackedRaces/raceDetails?raceName={raceName}&regattaName={regattaName}</a></td>
|
|
<td>Gets more information about a specified RegattaAndRace identifier</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<div style="height: 1em;"></div>
|
|
<a href="../../index.html">Back to Web Services Home</a>
|
|
</body>
|
|
</html>
|