If you haven't already, read how to Get Started with our API and how to access wetJacket Accounts.
Append id/[userid] to your requests.
There are a few things you should know about how information is stored in our database.
A skier's Best Score for each set is stored in a rather unique way. Since slalom water ski scores include a buoy count, line length and boat speed, each Best Score will incorporate these three elements.
Line Lengths are sometimes referred to by the amount Off, but are also measured in meters by the total amount of line skied with. For this reason, we count 15 off / 18.25 meters as the first loop, counting up to the 9th loop as 43 off / 9.75 meters.
1: 15 off - 18m
2: 22 off - 16m
3: 28 off - 14m
4: 32 off - 13m
5: 35 off - 12m
6: 38 off - 11.25m
7: 39 off - 10.75m
8: 41 off - 10.25m
9: 43 off - 9.75mBoat speeds are always recorded using the kilometers per hour.
Example Best Scores as stored in our Database:
6@6@58
1.25@1@40
Free Ski@5@55
In review, scores are stored as {Buoy Count}@{Line Loop Number}@{Speed in KPH}
In order to deal with this complex structure of scores, USA Water Ski has moved to Zero-Buoy Scoring. In this format, each skier's buoy count is totaled based on her starting speed and line length. Unfortunately, starting speed and line length varies dependent on division. With over 20 different divisions, each skier's zero-buoy score means something different.
In Your Ski Log, everyone's zero buoy is the same - a score of zero indicates no buoys at 15 off at 40KPH (24.8MPH).
By obtaining a skier's Division such as Women's 1 or Men's 7, and cross-referencing that with the current USA-Water Ski Official Starting Speeds, you can use Your Ski Log's Zero Buoy Format to arrive at any skier's appropriate Zero Buoy Score.
In order to create an Online Water Ski League, and for better performance tracking, we save a practice type for each set. The Practice Type is saved as a number, either 0, 1 or 2:
Below you'll find a list of resource requests you can make by putting the title of the request in [resource_name_here]
This information is referred to as our Master Arrays
Essential ski log data is returned on this request. This information should be cached either on the client or server side, as requests to this aspect of our API is throttled to one request per hour per authorized user id.
This resource is intended to be called once on log-in. However, during the course of your interaction with the API, you may receive a similar array of data back - in which case you should reset your cached copy of the bootCombos, skiData and skiSettings arrays.
Example Request:
http://username:[email protected]/yourskilog/skilog_session/id/1
Example Response: See Master Arrays
Back to IndexSkis that have settings records are returned within the <del> element - these are skis that are not available for removal since they already have settings records.
Example Request:
http://username:[email protected]/yourskilog/ski_rack/id/1
Example Response:
<allMySkis>
<allmyski>
<year>2010</year>
<model>Prophecy</model>
<ski_name>5656</ski_name>
<make>Connelly</make>
<active>1</active>
</allmyski>
<allmyski>
<year>2010</year>
<model>Prophecy</model>
<ski_name>5757</ski_name>
<make>Connelly</make>
<active>0</active>
</allmyski>
</allMySkis>
<del>
<item>5757</item>
<item>5656</item>
</del>
This information includes the most recently logged set's information such as site, driver, boat, air and water temp, etc. It also returns information set in Your Ski Log Options such as default line length and speed, as well as units (metric or imperial) and whether or not this log is Public or Private.
Example Request:
http://username:[email protected]/yourskilog/log_defaults/id/1
Example Response:
<default_buoys>6</default_buoys>
<default_passes/>
<default_site>Swiss, Caroline</default_site>
<default_boat>Nautique 200 B2</default_boat>
<default_driver>Damien</default_driver>
<default_conditions>perfect</default_conditions>
<default_line>6</default_line>
<default_speed>58</default_speed>
<default_units>Metric</default_units>
<default_time>12</default_time>
<default_airtemp>74</default_airtemp>
<default_watertemp>75</default_watertemp>
<default_privacy>1</default_privacy>
When set, segment will be used return the 25 archived sets starting with the a block of sets, multiplying the segment value by 25. For example, using /segment/3/ in your request will return the 75th most recently logged set through the 99th set.
Use this resource to return saved sets from Your Ski Log.
Example Request:
http://username:[email protected]/yourskilog/archive/id/1/segment/2
Example Response:
<set_id>257</set_id>
<set_date>2011-05-05 18:45:00</set_date>
<set_site>Swiss, Caroline</set_site>
<set_boat>Nautique 200 B2</set_boat>
<set_driver>Damien</set_driver>
<set_conditions>perfect</set_conditions>
<set_practice>1</set_practice>
<set_passes>32x5 free ski 35mph~</set_passes>
<set_best>Free Ski@4@58</set_best>
<set_comments>Whoooo Hooooo!</set_comments>
<set_airtemp>74</set_airtemp>
<set_watertemp>75</set_watertemp>
<ski_settings_id>1637</ski_settings_id>
<set_rating>0</set_rating>
<ski_name>5757</ski_name>
<front_boot>28.75</front_boot>
<rear_boot>16.575</rear_boot>
<dft>0.748</dft>
<depth>2.514</depth>
<length>66</length>
<wing>8</wing>
<leading_edge>0</leading_edge>
<comments/>
<clients_boots_id>9</clients_boots_id>
<settings_date>2010-04-29 08:37:12</settings_date>
<make>Connelly</make>
<model>Prophecy</model>
<year>2010</year>
Use this resource to pull a single set's information. This resource includes a ski_settings_id that references the ski settings for a specific set, but does not return any ski setting information such as ski name, fin settings, or boot information.
Example Request:
http://username:[email protected]/yourskilog/set/id/1/set_id/1
Example Response:
<set_id>257</set_id>
<set_date>2011-05-05 18:45:00</set_date>
<set_site>Swiss, Caroline</set_site>
<set_boat>Nautique 200 B2</set_boat>
<set_driver>Damien</set_driver>
<set_conditions>perfect</set_conditions>
<set_practice>1</set_practice>
<set_passes>32x5 free ski 35mph~</set_passes>
<set_best>Free Ski@4@58</set_best>
<set_comments>Whoooo Hooooo!</set_comments>
<set_airtemp>74</set_airtemp>
<set_watertemp>75</set_watertemp>
<set_rating>0</set_rating>
<set_default_units>Metric</set_default_units>
<ski_settings_id>1637</ski_settings_id>
This function is designed to provide an overview of the skier's performance over the length of their set logging. One use would be to create a chart of the skier's performance over time.
Example Request:
http://username:[email protected]/yourskilog/all_sets/id/1
Example Response:
<item>
<score>85</score>
<date>2007-11-12 12:00:00</date>
<practice>1</practice>
</item>
<item>
<score>80</score>
<date>2007-11-14 12:00:00</date>
<practice>1</practice>
</item>
<item>
<score>84</score>
<date>2007-11-14 12:15:00</date>
<practice>1</practice>
</item>
...
<item>
<score>87</score>
<date>2010-09-02 12:00:00</date>
<practice>2</practice>
</item>
<item>
<score>82</score>
<date>2010-09-03 12:00:00</date>
<practice>1</practice>
</item>
<item>
<score>81.5</score>
<date>2010-09-04 15:00:00</date>
<practice>1</practice>
</item>
Use this function to change a user's active ski setup. If the POSTed ski_name exists, it will be set as the active ski; the old ski will be deactivated, and you'll receive back the skiData and skiSettings for the ski_name that's passed.
Example Request:
http://username:[email protected]/yourskilog/activate_ski/id/1
POST: ski_data
Back to Index
This multi-use method handles the main set-logging functionality. You may post a new set, edit an existing set, or reset log default settings using this method.
Example Request:
http://username:[email protected]/yourskilog/log_form/id/1
Example Response:
true
OR
<error>No Form Submission Set</error>
Use this method to add a new ski settings record
Example Request:
http://username:[email protected]/yourskilog/settings_form/id/1
Back to Index
Use this method to add a new ski to the database.
Example Request:
http://username:[email protected]/yourskilog/new_ski/id/1
Back to Index
Example Request:
http://username:[email protected]/yourskilog/new_boots/id/1
Back to Index
Use this method to get this ski's basic information.
Example Request:
GET: http://username:[email protected]/yourskilog/ski_info/id/1
POST: http://username:[email protected]/yourskilog/ski_info/id/1
POST Data: ski_name
Example Response:
<ski_name>5656</ski_name>
<year>2010</year>
<make>Connelly</make>
<model>Prophecy</model>
<length>66</length>
<flex/>
<img>2010Prophecy.jpg</img>
...
Use this method to review all ski settings for either the activated ski or a specific ski by passing ski_name.
Example Request:
GET: http://username:[email protected]/yourskilog/settings_history/id/1
POST: http://username:[email protected]/yourskilog/settings_history/id/1
POST Data: ski_name
Example Response:
<item>
<date>May 31st '11</date>
<front_boot>28.75</front_boot>
<rear_boot>16.575</rear_boot>
<dft>0.746</dft>
<depth>2.513</depth>
<length>6.836</length>
<wing>8</wing>
<leading_edge>8.129</leading_edge>
<comments>Same but new</comments>
<settings_id>3187</settings_id>
<clients_boots_id>9</clients_boots_id>
</item>
<item>
<date>May 26th '11</date>
<front_boot>28.75</front_boot>
<rear_boot>16.575</rear_boot>
<dft>0.746</dft>
<depth>2.513</depth>
<length>6.836</length>
<wing>8</wing>
<leading_edge>8.129</leading_edge>
<comments>These are the same settings as in the past.</comments>
<settings_id>3170</settings_id>
<clients_boots_id>9</clients_boots_id>
</item>
...
Master Arrays our the three basic datasets that every Ski Log Session needs to function. This information includes the user's saved Boot Combonations, Available Ski Names, Currently Active Ski Information as well as the Currently Active Ski Settings Information.
Here is an example response:
<xml>
<bootCombos>
<bootcombo>
<item>9</item>
<item>Fogman</item>
<item>Diablo</item>
<item>Fogman</item>
<item>Diablo</item>
<item>Rear</item>
</bootcombo>
<bootcombo>
<item>10</item>
<item>Reflex</item>
<item>Hardshell</item>
<item>Wiley</item>
<item>Wrap</item>
<item>RTP</item>
</bootcombo>
</bootCombos>
<skiData>
<ski_name>5656</ski_name>
<year>2010</year>
<make>Connelly</make>
<model>Prophecy</model>
<length>66</length>
<flex></flex>
<img>2010Prophecy.jpg</img>
<skiNames>
<skiname>2008 LogBook</skiname>
<skiname>5653</skiname>
<skiname>5656</skiname>
<skiname>5757</skiname>
<skiname>708F1-1WW</skiname>
<skiname>708PROPHECY-1WW</skiname>
<skiname>A1-1</skiname>
<skiname>JBWIDE-4</skiname>
<skiname>rs1</skiname>
<skiname>Test Ski</skiname>
<skiname>WW6709F1-SOFT-66</skiname>
<skiname>WW7PR01</skiname>
</skiNames>
</skiData>
<skiSettings>
<date>May 31st '11</date>
<front_boot>28.75</front_boot>
<rear_boot>16.575</rear_boot>
<dft>0.746</dft>
<depth>2.513</depth>
<length>6.836</length>
<wing>8</wing>
<leading_edge>8.129</leading_edge>
<comments>Same but new</comments>
<settings_id>3187</settings_id>
<clients_boots_id>9</clients_boots_id>
</skiSettings>
</xml>
Notice that within the skiSettings element, the clients_boots_id corresponds to the first item of the bootcombo element. In the above example, you may use the bootcombo element to determine that this skier's current boot setup is a pair of Fogman Diablos.
The Master Arrays are returned as an API response as necessary when activated ski information or settings is changed. See these resources:
Back to Index