Practices / Regattas
Activate Practice Location
POST practices/activateLocation
Marks a practice location as available for future practices.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| location_id | Id of the practice location. |
| active | `Yes` or `No` - Whether or not the location is available to use for upcoming practices. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[{"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","fee":"$7.95","notes":"","active":"Yes","latitude":40.074,"longitude":-105.237,"geo_available":"Yes"},{"location_id":5,"name":"My House","address":"220 Mason Ave","city":"Boulder","state":"CO","zipcode":"70148","fee":"$0","notes":"Park on the street by the grass and walk to boat yard.","active":"Yes","latitude":40.0157,"longitude":-105.279,"geo_available":"Yes"}]
[]
Success Response Key
Add Athlete To Lineup
POST practices/addAthleteToLineup
Adds an athlete to a seat in a boat. The athlete must first be attending the practice in order to be added to a lineup.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| custid | Custid of the user being added to the lineup |
| boat_id | Id of the boat the athlete is being assigned to |
| position | Seat number or `coxswain` that the athlete is being assigned to in the boat. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"whitelabel_id":127,"practice_id":113,"series_id":0,"name":"Saturday Club Team","location":{"whitelabel_id":127,"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","entry_fee":"$7.95","notes":"","active":"Yes"},"start_time":1717858800,"end_time":1717866000,"formatted_times":{"start_unix":1717858800,"start_date":"Jun 8, 2024","start_time":"9:00 AM","start_24":"09:00:00","end_unix":1717866000,"end_date":"Jun 8, 2024","end_time":"11:00 AM","end_24":"11:00:00","time_range":"Sat 9:00 - 11:00 AM","calendar_date":"2024-06-08","ios":"Sat Jun 8 | 9:00 - 11:00 AM"},"max_attendees":25,"visiting_rowers_allowed":"Yes","custid":564,"reservation_id":144,"lineups_set":"No","session_plan":{"practice_id":113,"whitelabel_id":127,"session_plan":"row out to first base and back","last_updated":1718399679},"is_attending":true,"set_attendance_allowed":false,"attendee_count":1,"attendance":[{"whitelabel_id":127,"practice_id":113,"custid":564,"fname":"Michael","lname":"Tester","profile_image":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","sex":"Male","birth_year":1995,"phone_number":"4074031671","email":"[email protected]","height":71,"weight":"230","preference_port":4,"preference_starboard":2,"preference_sculling":5,"preference_coxswain":1,"updated_attendance_on":1718402205,"attendance_plan":"Attending","attendance_source":"Manual","lineup_boat":21,"lineup_seat":"7","lineup_side":"Starboard","lineup_sent":"No","survey_status":"Unsent","last_coxed":1642683600,"ytd_coxed_practices":0,"usrowing_number":1428190}],"possible_attendees":[{"custid":566,"fname":"Michael","lname":"bravo","profile_image":null,"sex":"Male","birth_year":1945,"phone_number":"","email":"[email protected]","status":null,"practice_id":113,"attendance_start":1717599600,"attendance_end":1717772400}],"groups":[{"group_id":45,"title":"Coach","descr":"Allowed to create and manage team practices which includes setting lineups, viewing user contact\/personal details (along with emergency contacts), planning regattas and send communications.?","group_max":0,"group_self_join":"No","declare_attendance_start":1717599600,"declare_attendance_end":1717772400,"default_attendance":"unknown"}],"equipment":[{"reservation_id":144,"whitelabel_id":127,"start_time":1717858800,"end_time":1717866000,"time_human":"Sat Jun 8 9:00am - 11:00am","type":"practice","created_at":1717804291,"custid":564,"fname":"Michael","lname":"Tester","phone_number":"4074031671","email":"[email protected]","boats":[],"oars":[],"ergs":[],"notes":""}],"lineup_focus":0,"coaching_notes":[{"whitelabel_id":127,"practice_id":113,"practice_name":"Saturday Club Team","start_time":1717858800,"end_time":1717866000,"custid":564,"athlete_name":"Michael Tester","athlete_avatar":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","status":"Attending","boat_id":21,"seat":"7","lineup_side":"Starboard","boat_name":"Bayou Navy","coaching_note":"","submitted_by_name":null,"submitted_by_custid":null}],"assigned_coaches":[],"possible_coaches":[{"custid":577,"fname":"Jim","lname":"Dahl","profile_image":null},{"custid":585,"fname":"Bill","lname":"Smith","profile_image":"TEST\/PROFILEPICTURES\/585\/d96b2bf801ecbd97d477a29aea93819d5222425.jpg"},{"custid":581,"fname":"jonny","lname":"testerson","profile_image":null}],"pending_requests":[],"forecasted_weather":[],"firebase_chat_id":"-Nzp6KWWWvsUMPOp1JeP"}
[]
Success Response Key
Add Full Boat To Lineup
POST practices/addBoatToLineup
Adds every athlete in a crew to a boat in a single request. Used when a coach accepts an AI recommended boat. Every athlete must be attending the practice and the boat must not already be used in the lineups, otherwise nothing is added.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| boat_id | Id of the boat the crew is being assigned to. |
| seats | JSON array of `{"seat":"1","custid":123}` objects for every athlete in the crew. |
| generation_id | (optional) Id of the AI lineup generation the accepted boat came from. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
[]
[]
Success Response Key
Create Change Attendance Request
POST practices/addChangeAttendanceRequest
Adds a request for the authenticated user to change their practice attendance status after their attendance window has closed.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
| attendance_request | `Attending` or `Not Attending` - new state the athlete would like to request. |
| request_reason | Reason for requesting the change. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
{"status":"success","message":"Request added.","custid":564,"practice_id":113,"requested_status":"Not Attending","reason":"I forgot to change it :("}
[]
Success Response Key
Create Coaching Notes
POST practices/addCoachingNote
Creates a new coaching note for a given athlete. This is best used to give athletes feedback after practice.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice the note references. |
| custid | Custid of the user the note is for. |
| note | Coaching note for the athlete |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Coaching note added.","practice_id":8,"custid":564}
[]
Success Response Key
Add Coach To Lineup
POST practices/addCoachToLineup
Adds or removes a coach as the coach for a given lineup.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
| boat_id | Id of the boat being assigned to the coach. |
| coach_custid | Custid of the coach. |
| state | `Add` or `Remove` - indicates whether or not the coach is being added or removed from the boat |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Coach added to lineup.","boat_id":21,"custid":564,"practice_id":113}
[]
Success Response Key
Add Group To Practice
POST practices/addGroupToPractice
Adds a group of users as eligible to attend a given practice.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| group_id | Id of the group being added to the practice. |
| attendance_start | Number of seconds before practice starts that a user is allowed to declare their attendance. |
| attendance_end | Number of seconds before practice starts that a user must have their attendance plans finalized. |
| default_attendance | Default attendance for all athletes in the group for the given practice. (options are `attending` or `unknown` |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Attendance group added to practice."}
[]
Success Response Key
Add Practice Location
POST practices/addLocation
Creates a new location that a practice can be held.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| name | Name of the practice location. |
| address | Address of the practice location. |
| city | City the location resides in. |
| state | State/region the practice location resides in. |
| zipcode | Postal code of the location. |
| fee | (optional) Fee charged by an external entity (such as a city park) to gain access to the location. |
| notes | (optional) Anything the user should know about that location prior to arriving (extra directions, etc.). |
| active | (optional) `Yes` or `No` - Whether or not the location is available to use for upcoming practices (defaults to `Yes`). |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[{"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","fee":"$7.95","notes":"","active":"Yes","latitude":40.074,"longitude":-105.237,"geo_available":"Yes"},{"location_id":5,"name":"My House","address":"220 Mason Ave","city":"Boulder","state":"CO","zipcode":"70148","fee":"$0","notes":"Park on the street by the grass and walk to boat yard.","active":"Yes","latitude":40.0157,"longitude":-105.279,"geo_available":"Yes"}]
[]
Success Response Key
Clear All Lineups
POST practices/clearLineups
Removes every lineup from a practice. Only allowed while the lineups are still unpublished.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being cleared. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
[]
[]
Success Response Key
Clone Practice
POST practices/clonePractice
Clones a practice based on a given practice_id.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| cloned_practice_id | Id of the practice being cloned. |
| name | Name of the practice. |
| location_id | Id of the location of the practice. |
| start_time | UNIX timestamp of the start time of the practice. |
| end_time | UNIX timestamp of the end time of the practice. |
| max_attendees | Maximum number of attendees allowed to attend the practice. |
| visiting_rowers_allowed | `Yes` or `No` - Whether or not visiting rowers are allowed to attend the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
{"Status":"Success","practice_id":114}
[]
Success Response Key
Create Practice
POST practices/createPractice
Creates a new practice. Returns the Id of the newly created practice.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| name | Name of the practice. |
| location_id | Id of the location of the practice. |
| start_time | UNIX timestamp of the start time of the practice. |
| end_time | UNIX timestamp of the end time of the practice. |
| max_attendees | Maximum number of attendees allowed to attend the practice. |
| visiting_rowers_allowed | `Yes` or `No` - Whether or not visiting rowers are allowed to attend the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
{"Status":"Success","practice_id":113}
[]
Success Response Key
Delete Practice
POST practices/deletePractice
Deletes a practice and removes all associated data for it. This cannot be undone!
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice to delete. |
| reservation_id | Id of the reservation created for the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
{"Status":"Success","practice_id":114}
[]
Success Response Key
Export Practice Lineups
POST practices/exportPracticeLineups
Generates an array of all practice lineups for the entire organization.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| start_date | (optional) UNIX timestamp of the start of a date filter. Used to filter the start time of practice. Defaults to 0. |
| end_date | (optional) UNIX timestamp of the end of a date filter. Used to filter the end time of practice. Defaults to the current timestamp. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
| 8 | Manage Equipment | Allowed to update information related to equipment. |
| 17 | Manage Organization Settings | Allowed to change basic organization-related settings, such as uploading logos, setting timezone, etc. |
Sample Responses
[{"whitelabel_id":127,"practice_id":1,"custid":564,"practice_name":"Masters Saturday","practice_start_time":1608381000,"practice_end_time":1608386400,"fname":"Michael","lname":"Tester","full_name":"Michael Tester","phone_number":"(555) 555-5555","email":"[email protected]","attendance_status":"Attending","attendance_last_updated":1608263723,"lineup_boat_id":20,"boat_name":"Lil' Easy","boat_type":"1","lineup_seat":"1","lineup_email_sent":"Yes","lineup_survey":"Sent","lineups_satisfaction":null,"sessionplan_satisfaction":null,"reported_issues":null,"survey_coaching_comments":null,"survey_submitted_on":null,"coaching_note":null},{"whitelabel_id":127,"practice_id":3,"custid":564,"practice_name":"Wednesday Practice","practice_start_time":1609959600,"practice_end_time":1609966800,"fname":"Michael","lname":"Tester","full_name":"Michael Tester","phone_number":"(555) 555-5555","email":"[email protected]","attendance_status":"Attending","attendance_last_updated":1609945505,"lineup_boat_id":20,"boat_name":"Lil' Easy","boat_type":"1","lineup_seat":"1","lineup_email_sent":"Yes","lineup_survey":"Sent","lineups_satisfaction":null,"sessionplan_satisfaction":null,"reported_issues":null,"survey_coaching_comments":null,"survey_submitted_on":null,"coaching_note":null}]
[]
Success Response Key
Get Practices For Athlete
GET practices/getAthletePractices
Retrieves the meta-data of all the practices a given athlete is eligible to attend.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| upcoming | (optional) Restricts results to only practices that are in the future or currently in progress. Default is true. |
| custid | (optional) Custid of the athlete to find eligible practices for. Defaults to the authenticated user. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"practice_id":112,"whitelabel_id":127,"series_id":0,"name":"August Masters Mondays","location_id":1,"location_name":"Boulder Reservoir","start_time":1693231200,"end_time":1693238400,"formatted_times":{"start_unix":1693231200,"start_date":"Aug 28, 2023","start_time":"8:00 AM","start_24":"08:00:00","end_unix":1693238400,"end_date":"Aug 28, 2023","end_time":"10:00 AM","end_24":"10:00:00","time_range":"Mon 8:00 - 10:00 AM","calendar_date":"2023-08-28","ios":"Mon Aug 28 | 8:00 - 10:00 AM"},"max_attendees":10,"reservation_id":139,"lineups_set":"No","public":"Yes","visiting_rowers":"Yes","custid":564,"lineup_focus":0,"firebase_chat_id":"","attendee_count":1,"current_attendance_status":"Attending","attendance_window_start":1692367200,"attendance_window_end":1693054800,"is_attending":true,"set_attendance_allowed":false,"attendance_change_request_status":null,"attendance_plan":"Attending"},{"practice_id":111,"whitelabel_id":127,"series_id":0,"name":"August Masters Mondays","location_id":1,"location_name":"Boulder Reservoir","start_time":1692626400,"end_time":1692633600,"formatted_times":{"start_unix":1692626400,"start_date":"Aug 21, 2023","start_time":"8:00 AM","start_24":"08:00:00","end_unix":1692633600,"end_date":"Aug 21, 2023","end_time":"10:00 AM","end_24":"10:00:00","time_range":"Mon 8:00 - 10:00 AM","calendar_date":"2023-08-21","ios":"Mon Aug 21 | 8:00 - 10:00 AM"},"max_attendees":10,"reservation_id":138,"lineups_set":"No","public":"Yes","visiting_rowers":"Yes","custid":564,"lineup_focus":0,"firebase_chat_id":"","attendee_count":1,"current_attendance_status":"Attending","attendance_window_start":1690207200,"attendance_window_end":1692450000,"is_attending":true,"set_attendance_allowed":false,"attendance_change_request_status":null,"attendance_plan":"Attending"}]
[]
Success Response Key
Get Locations
GET practices/getLocations
Gets all the possible practice locations.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| location_id | (optional) When provided, only the location matching this location_id is returned. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","fee":"$7.95","notes":"Entry fee required if you did not purchase seasonal parks pass from the park office.","active":"Yes","latitude":40.074,"longitude":-105.237,"geo_available":"Yes"},{"location_id":2,"name":"Test","address":"Location","city":"m","state":"AL","zipcode":"7","fee":"$0","notes":"","active":"Yes","latitude":0,"longitude":0,"geo_available":"No"}]
[]
Success Response Key
Get All Practices
GET practices/getPractices
Retrieves all practices based on the provided filters. The sample response return the data when the `meta_only` parameter is provided and set to `Yes`. Otherwise, the entire practice object is returned.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | (optional) Id of the practice to return |
| limit | (optional) Max number of practices to return. Default is 10. |
| attending | (optional) Restricts results to only practices that the custid parameter specified is attending. Default is false. |
| upcoming | (optional) Restricts results to only practices that are in the future or currently in progress. Default is true. |
| eligible | (optional) Restricts results to only practices that the custid parameter specified is eligible to attend. Default is false. |
| since | (optional) Restricts results to practices ending before timestamp provided if the `upcoming` parameter is true, or after if the `upcoming` parameter is false. default is the current UNIX timestamp. |
| custid | (optional) Custid of the user you want to impose search restrictions with the attending = true and/or eligible = true parameters. |
| meta_only | (optional) `Yes` or `No`. Returns only the basic meta data about the practices if set to yes. Defaults to `No`. Use this parameter to increase the response speed. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"whitelabel_id":127,"practice_id":153,"series_id":0,"name":"Friday Masters Series","location_id":1,"location_name":"Boulder Reservoir","start_time":1716559200,"end_time":1716566400,"formatted_times":{"start_unix":1716559200,"start_date":"May 24, 2024","start_time":"8:00 AM","start_24":"08:00:00","end_unix":1716566400,"end_date":"May 24, 2024","end_time":"10:00 AM","end_24":"10:00:00","time_range":"Fri 8:00 - 10:00 AM","calendar_date":"2024-05-24","ios":"Fri May 24 | 8:00 - 10:00 AM"},"max_attendees":9,"reservation_id":179,"lineups_set":"No","public":"Yes","visiting_rowers":"Yes","custid":564,"lineup_focus":0,"firebase_chat_id":"-NwL5H1oy0fTPUNL1fDi"},{"whitelabel_id":127,"practice_id":154,"series_id":0,"name":"Friday Masters Series","location_id":1,"location_name":"Boulder Reservoir","start_time":1717164000,"end_time":1717171200,"formatted_times":{"start_unix":1717164000,"start_date":"May 31, 2024","start_time":"8:00 AM","start_24":"08:00:00","end_unix":1717171200,"end_date":"May 31, 2024","end_time":"10:00 AM","end_24":"10:00:00","time_range":"Fri 8:00 - 10:00 AM","calendar_date":"2024-05-31","ios":"Fri May 31 | 8:00 - 10:00 AM"},"max_attendees":9,"reservation_id":180,"lineups_set":"No","public":"Yes","visiting_rowers":"Yes","custid":564,"lineup_focus":0,"firebase_chat_id":"-NwL5HQrG7m24yLkTSl0"}]
[]
Success Response Key
Get Post-Practice Survey Results
GET practices/getPracticeSurveyResults
Retrieves the post-practice survey results for the given practice. If no surveys have been submitted, an empty array is returned.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 6 | Practice Communications | Allowed to send communications about practices. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
| 17 | Manage Organization Settings | Allowed to change basic organization-related settings, such as uploading logos, setting timezone, etc. |
Sample Responses
[{"whitelabel_id":127,"practice_id":80,"custid":564,"lineups_satisfaction":"Yes","sessionplan_satisfaction":"Yes","equipment_issues":"","coach_comments":"Drill work went well - surprisingly our best piece was pausing at the roll up point. When continuous rowing, the mixed 8 felt really, really heavy especially when trying to bring up the rating by pushing the legs down (not changing the recovery). Stern 3 felt it and could push but it felt like the rest of the boat never left paddle pressure. ","timestamp":1655478845,"fname":"Michael","lname":"Tester","email":"[email protected]","profile_image":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","practice_name":"Friday Varsity","practice_start_time":1642770000,"practice_end_time":1642777200,"boat_id":null,"boat_name":null,"lineup_seat":null}]
[]
Success Response Key
Get Coaching Notes
GET practices/getUserCoachingNotes
Retrieves all coaching notes for the authenticated user. All practices the athlete attended are included, regardless of
if a coach added a coaching note or not.
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"whitelabel_id":127,"practice_id":8,"practice_name":"Sample Practice","start_time":1625914800,"end_time":1625922000,"session_plan":"5k time trial. First 1k at a 20 stroke rate, next 2k at a 24 stroke rate, last 2k at 26 stroke rate.5 minute paddle cool-down afterwards back to the dock.","custid":564,"status":"Attending","boat_id":21,"boat_seat":"4","boat_name":"Bayou Navy","coaching_note":"When you get tired, I noticed that you are starting to slouch at the catch. Make sure to sit-up tall!","submitted_by":"Michael Tester"},{"whitelabel_id":127,"practice_id":7,"practice_name":"Afternoon Row","start_time":1624644000,"end_time":1624651200,"session_plan":null,"custid":564,"status":"Attending","boat_id":21,"boat_seat":"8","boat_name":"Bayou Navy","coaching_note":null,"submitted_by":null},{"whitelabel_id":127,"practice_id":6,"practice_name":"Sunday Afternoon row","start_time":1615744800,"end_time":1615755600,"session_plan":null,"custid":564,"status":"Attending","boat_id":null,"boat_seat":null,"boat_name":null,"coaching_note":null,"submitted_by":null}]
[]
Success Response Key
Publish Lineups
POST practices/publishLineups
Publishes the lineups for athletes to view in the web/mobile apps. This also triggers the lineup email to each athlete
who has been placed in a lineup.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Lineups have been published!"}
[]
Success Response Key
Recommend Lineups With AI
POST practices/recommendLineups
Generates recommended lineups for a practice with AI, using the attending athletes, the boats available for the practice, athlete profiles, the past 60 days of lineup history and the forecasted weather. Only custids are sent to the model; the athlete names in the returned seats, reasons and warnings are resolved server side so any client can display them as given. Recommendations are returned only; nothing is written to the lineups until the coach accepts a boat. Requires more than 18 attending athletes.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice lineups are being recommended for. |
| focus_id | (optional) Lineup focus option id to build the lineups around. |
| coach_count | (optional) Number of coaches available for the practice. |
| description | (optional) Coach description of what the lineups should accomplish. |
| allow_noncompliant | (optional) `yes` to allow non-compliant athletes to be boated. |
| gender_constraint | (optional) Gender constraint for the boats (`mixed`, `same` or `none`). |
| coxswain_order | (optional) JSON array of custids in the order they should fill coxswain seats. |
| coxswain_fallback | (optional) What to do with coxswain seats once the rotation list is used up: `auto` to let the model pick coxswains from the attending athletes, `rotate` to add the athletes who have gone the longest without coxing to the rotation, `vacant` to leave the seats empty (default). |
| rejected | (optional) JSON array of previously rejected recommendations so they are not repeated. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
[]
[]
Success Response Key
Remove From Lineup
POST practices/removeFromLineup
Marks a given seat in a boat for the practice as available for another athlete.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| boat_id | Id of the boat the athlete is assigned to. |
| position | Seat number (or `coxswain`) the athlete being removed is assigned to. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"whitelabel_id":127,"practice_id":113,"series_id":0,"name":"Saturday Club Team","location":{"whitelabel_id":127,"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","entry_fee":"$7.95","notes":"","active":"Yes"},"start_time":1717858800,"end_time":1717866000,"formatted_times":{"start_unix":1717858800,"start_date":"Jun 8, 2024","start_time":"9:00 AM","start_24":"09:00:00","end_unix":1717866000,"end_date":"Jun 8, 2024","end_time":"11:00 AM","end_24":"11:00:00","time_range":"Sat 9:00 - 11:00 AM","calendar_date":"2024-06-08","ios":"Sat Jun 8 | 9:00 - 11:00 AM"},"max_attendees":25,"visiting_rowers_allowed":"Yes","custid":564,"reservation_id":144,"lineups_set":"No","session_plan":{"practice_id":113,"whitelabel_id":127,"session_plan":"row out to first base and back","last_updated":1718399679},"is_attending":true,"set_attendance_allowed":false,"attendee_count":1,"attendance":[{"whitelabel_id":127,"practice_id":113,"custid":564,"fname":"Michael","lname":"Tester","profile_image":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","sex":"Male","birth_year":1995,"phone_number":"4074031671","email":"[email protected]","height":71,"weight":"230","preference_port":4,"preference_starboard":2,"preference_sculling":5,"preference_coxswain":1,"updated_attendance_on":1718402205,"attendance_plan":"Attending","attendance_source":"Manual","lineup_boat":21,"lineup_seat":"7","lineup_side":"Starboard","lineup_sent":"No","survey_status":"Unsent","last_coxed":1642683600,"ytd_coxed_practices":0,"usrowing_number":1428190}],"possible_attendees":[{"custid":566,"fname":"Michael","lname":"bravo","profile_image":null,"sex":"Male","birth_year":1945,"phone_number":"","email":"[email protected]","status":null,"practice_id":113,"attendance_start":1717599600,"attendance_end":1717772400}],"groups":[{"group_id":45,"title":"Coach","descr":"Allowed to create and manage team practices which includes setting lineups, viewing user contact\/personal details (along with emergency contacts), planning regattas and send communications.?","group_max":0,"group_self_join":"No","declare_attendance_start":1717599600,"declare_attendance_end":1717772400,"default_attendance":"unknown"}],"equipment":[{"reservation_id":144,"whitelabel_id":127,"start_time":1717858800,"end_time":1717866000,"time_human":"Sat Jun 8 9:00am - 11:00am","type":"practice","created_at":1717804291,"custid":564,"fname":"Michael","lname":"Tester","phone_number":"4074031671","email":"[email protected]","boats":[],"oars":[],"ergs":[],"notes":""}],"lineup_focus":0,"coaching_notes":[{"whitelabel_id":127,"practice_id":113,"practice_name":"Saturday Club Team","start_time":1717858800,"end_time":1717866000,"custid":564,"athlete_name":"Michael Tester","athlete_avatar":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","status":"Attending","boat_id":21,"seat":"7","lineup_side":"Starboard","boat_name":"Bayou Navy","coaching_note":"","submitted_by_name":null,"submitted_by_custid":null}],"assigned_coaches":[],"possible_coaches":[{"custid":577,"fname":"Jim","lname":"Dahl","profile_image":null},{"custid":585,"fname":"Bill","lname":"Smith","profile_image":"TEST\/PROFILEPICTURES\/585\/d96b2bf801ecbd97d477a29aea93819d5222425.jpg"},{"custid":581,"fname":"jonny","lname":"testerson","profile_image":null}],"pending_requests":[],"forecasted_weather":[],"firebase_chat_id":"-Nzp6KWWWvsUMPOp1JeP"}
[]
Success Response Key
Remove Group From Practice
POST practices/removeGroup
Removes a given attendance group from the practice.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| group_id | Id of the group being removed to the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Attendance group removed from the practice.","group_id":45,"practice_id":113}
[]
Success Response Key
Send Message To Attendees
POST practices/sendMessageToAttendees
Sends an email or text message to each of the attendees of the practice, regardless of if they have been placed in a lineup.
This message will show up in the Message Analytics, which can be retrieved from the /communications/sentMessages endpoint.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
| message_type | Type of message being sent (`email` or `text`). |
| body | Body of the message being sent. |
| subject | (optional) Subject line if the message_type is `email` |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 6 | Practice Communications | Allowed to send communications about practices. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Message Sent.","message_id":7823}
[]
Success Response Key
Set Attendance Intention
POST practices/setAttendance
Sets an athletes' attendance for a given practice to either Attending or Not Attending.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| attendance | `Attending`, `Not Attending` - The attendance status for the athlete for this practice. |
| custid | (optional) Custid of the user being updated. Defaults to the authenticated user. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
{"status":"success","message":"Attendance set for the athlete.","custid":564,"practice_id":113,"attendance":"Attending"}
[]
Success Response Key
Update Change Attendance Request
POST practices/updateChangeAttendanceRequest
Changes the attendance status of an athlete based on an attendance change request.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
| custid | Custid of the user who submitted the change request. |
| request_status | `Attending` or `Not Attending` - New attendance status for the user. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Request added.","custid":564,"practice_id":113,"new_status":"Not Attending"}
[]
Success Response Key
Update Group Default Attendance
POST practices/updateDefaultAttendance
Updates the default attendance for an attendance group assigned to the practice. Returns an array of athletes attending
the practice.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
| group_id | Id of the group being modified. |
| default_attendance | `Attending` or `Unknown` - Default attendance status for all members of the group. |
| max_attendees | Maximum number of attendees allowed to attend the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
[{"whitelabel_id":127,"practice_id":113,"custid":571,"fname":"Alex","lname":"Madeupperson","profile_image":null,"sex":"Male","birth_year":2007,"phone_number":"(555) 555-5555","email":"[email protected]","height":null,"weight":null,"preference_port":3,"preference_starboard":3,"preference_sculling":3,"preference_coxswain":3,"updated_attendance_on":1718410234,"attendance_plan":"Unknown","attendance_source":"Default","lineup_boat":null,"lineup_seat":null,"lineup_side":null,"lineup_sent":null,"survey_status":null,"last_coxed":null,"ytd_coxed_practices":0,"usrowing_number":228427},{"whitelabel_id":127,"practice_id":113,"custid":592,"fname":"Tester","lname":"Testing","profile_image":null,"sex":"Female","birth_year":2007,"phone_number":"(123) 456-7890","email":"[email protected]","height":null,"weight":null,"preference_port":1,"preference_starboard":1,"preference_sculling":1,"preference_coxswain":1,"updated_attendance_on":1718410235,"attendance_plan":"Unknown","attendance_source":"Default","lineup_boat":null,"lineup_seat":null,"lineup_side":null,"lineup_sent":null,"survey_status":null,"last_coxed":null,"ytd_coxed_practices":0,"usrowing_number":null}]
[]
Success Response Key
Update Group Attendance
POST practices/updateGroup
Updates an attendance group assigned to the practice.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| group_id | Id of the group being modified for the practice. |
| attendance_start | Number of seconds before practice starts that a user is allowed to declare their attendance. |
| attendance_end | Number of seconds before practice starts that a user must have their attendance plans finalized. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Attendance group updated for the practice.","group_id":45,"practice_id":113}
[]
Success Response Key
Update Lineup Focus
POST practices/updateLineupFocus
Updates the lineup focus for the practice. This is used to eventually develop an automated lineup generator. The options
for `focus_id` are:| Focus Id | Description |
|---|---|
| 1 | Similar Experience |
| 2 | Similar Age |
| 3 | Upcoming Racing Lineups |
| 4 | Similar Weight |
| 5 | Experimentation |
| 6 | Maximum Number of Boats |
| 7 | Minimum Number of Boats |
| 8 | Similar Boat Speeds |
| 9 | Fastest Boat Speeds |
| 10 | Other |
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| focus_id | Id of the focus plan for the lineups at practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"whitelabel_id":127,"practice_id":113,"series_id":0,"name":"Saturday Club Team","location":{"whitelabel_id":127,"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","entry_fee":"$7.95","notes":"","active":"Yes"},"start_time":1717858800,"end_time":1717866000,"formatted_times":{"start_unix":1717858800,"start_date":"Jun 8, 2024","start_time":"9:00 AM","start_24":"09:00:00","end_unix":1717866000,"end_date":"Jun 8, 2024","end_time":"11:00 AM","end_24":"11:00:00","time_range":"Sat 9:00 - 11:00 AM","calendar_date":"2024-06-08","ios":"Sat Jun 8 | 9:00 - 11:00 AM"},"max_attendees":25,"visiting_rowers_allowed":"Yes","custid":564,"reservation_id":144,"lineups_set":"No","session_plan":{"practice_id":113,"whitelabel_id":127,"session_plan":"row out to first base and back","last_updated":1718399679},"is_attending":true,"set_attendance_allowed":false,"attendee_count":1,"attendance":[{"whitelabel_id":127,"practice_id":113,"custid":564,"fname":"Michael","lname":"Tester","profile_image":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","sex":"Male","birth_year":1995,"phone_number":"4074031671","email":"[email protected]","height":71,"weight":"230","preference_port":4,"preference_starboard":2,"preference_sculling":5,"preference_coxswain":1,"updated_attendance_on":1718402205,"attendance_plan":"Attending","attendance_source":"Manual","lineup_boat":21,"lineup_seat":"7","lineup_side":"Starboard","lineup_sent":"No","survey_status":"Unsent","last_coxed":1642683600,"ytd_coxed_practices":0,"usrowing_number":1428190}],"possible_attendees":[{"custid":566,"fname":"Michael","lname":"bravo","profile_image":null,"sex":"Male","birth_year":1945,"phone_number":"","email":"[email protected]","status":null,"practice_id":113,"attendance_start":1717599600,"attendance_end":1717772400}],"groups":[{"group_id":45,"title":"Coach","descr":"Allowed to create and manage team practices which includes setting lineups, viewing user contact\/personal details (along with emergency contacts), planning regattas and send communications.?","group_max":0,"group_self_join":"No","declare_attendance_start":1717599600,"declare_attendance_end":1717772400,"default_attendance":"unknown"}],"equipment":[{"reservation_id":144,"whitelabel_id":127,"start_time":1717858800,"end_time":1717866000,"time_human":"Sat Jun 8 9:00am - 11:00am","type":"practice","created_at":1717804291,"custid":564,"fname":"Michael","lname":"Tester","phone_number":"4074031671","email":"[email protected]","boats":[],"oars":[],"ergs":[],"notes":""}],"lineup_focus":8,"coaching_notes":[{"whitelabel_id":127,"practice_id":113,"practice_name":"Saturday Club Team","start_time":1717858800,"end_time":1717866000,"custid":564,"athlete_name":"Michael Tester","athlete_avatar":"TEST\/PROFILEPICTURES\/564\/12398da7d5fb4c11aead854f6d2a87bb8850093.jpg","status":"Attending","boat_id":21,"seat":"7","lineup_side":"Starboard","boat_name":"Bayou Navy","coaching_note":"","submitted_by_name":null,"submitted_by_custid":null}],"assigned_coaches":[],"possible_coaches":[{"custid":577,"fname":"Jim","lname":"Dahl","profile_image":null},{"custid":585,"fname":"Bill","lname":"Smith","profile_image":"TEST\/PROFILEPICTURES\/585\/d96b2bf801ecbd97d477a29aea93819d5222425.jpg"},{"custid":581,"fname":"jonny","lname":"testerson","profile_image":null}],"pending_requests":[],"forecasted_weather":[],"firebase_chat_id":"-Nzp6KWWWvsUMPOp1JeP"}
[]
Success Response Key
Update Location Address
POST practices/updateLocationAddress
Updates the address of a given practice location.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| location_id | Id of the practice location. |
| address | Address of the practice location. |
| city | City the location resides in. |
| state | State/region the practice location resides in. |
| zipcode | Postal code of the location. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[{"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","fee":"$7.95","notes":"","active":"Yes","latitude":40.074,"longitude":-105.237,"geo_available":"Yes"},{"location_id":5,"name":"My House","address":"220 Mason Ave","city":"Boulder","state":"CO","zipcode":"70148","fee":"$0","notes":"Park on the street by the grass and walk to boat yard.","active":"Yes","latitude":40.0157,"longitude":-105.279,"geo_available":"Yes"}]
[]
Success Response Key
Update Location Fee
POST practices/updateLocationFee
Updates the fee that athletes might be expected to pay when they enter the practice location. This might be a fee charged
by a city park, membership to private gym, etc. No charge is generated in Boathouse Connect from this value.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| location_id | Id of the practice location. |
| fee | New fee for entering the location imposed by an external party (i.e. city park) |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[{"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","fee":"$7.95","notes":"","active":"Yes","latitude":40.074,"longitude":-105.237,"geo_available":"Yes"},{"location_id":5,"name":"My House","address":"220 Mason Ave","city":"Boulder","state":"CO","zipcode":"70148","fee":"$0","notes":"Park on the street by the grass and walk to boat yard.","active":"Yes","latitude":40.0157,"longitude":-105.279,"geo_available":"Yes"}]
[]
Success Response Key
Update Location Name
POST practices/updateLocationName
Updates the name of a practice location. Returns all practice locations.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| location_id | Id of the practice location. |
| name | New name of the location. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[{"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","fee":"$7.95","notes":"","active":"Yes","latitude":40.074,"longitude":-105.237,"geo_available":"Yes"},{"location_id":5,"name":"My House","address":"220 Mason Ave","city":"Boulder","state":"CO","zipcode":"70148","fee":"$0","notes":"Park on the street by the grass and walk to boat yard.","active":"Yes","latitude":40.0157,"longitude":-105.279,"geo_available":"Yes"}]
[]
Success Response Key
Update Location Notes
POST practices/updateLocationNotes
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| location_id | Id of the practice location. |
| notes | New notes for the location. Replaces existing notes |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[]
[]
Success Response Key
Update Practice Meta
POST practices/updatePractice
Updates the metadata of a practice. Only the attributes you provide will be updated. The practice object is returned.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice. |
| name | (optional) New name of the practice. |
| location_id | (optional) New Id of the location of the practice. |
| start_time | (optional) New UNIX timestamp of the start time of the practice. |
| end_time | (optional) New UNIX timestamp of the end time of the practice. |
| max_attendees | (optional) New maximum number of attendees allowed to attend the practice. |
| lineups_set | (optional) Marks the lineups as being available for athletes to see. Options are `Yes` or `No` |
| visiting_rowers_allowed | (optional) `Yes` or `No` - Whether or not visiting rowers are allowed to attend the practice. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
{"whitelabel_id":127,"practice_id":113,"series_id":0,"name":"Saturday Club Team","location":{"whitelabel_id":127,"location_id":1,"name":"Boulder Reservoir","address":"5565 51st St","city":"Boulder","state":"CO","zipcode":"80301","entry_fee":"$7.95","notes":"","active":"Yes"},"start_time":1717858800,"end_time":1717866000,"formatted_times":{"start_unix":1717858800,"start_date":"Jun 8, 2024","start_time":"9:00 AM","start_24":"09:00:00","end_unix":1717866000,"end_date":"Jun 8, 2024","end_time":"11:00 AM","end_24":"11:00:00","time_range":"Sat 9:00 - 11:00 AM","calendar_date":"2024-06-08","ios":"Sat Jun 8 | 9:00 - 11:00 AM"},"max_attendees":25,"visiting_rowers_allowed":"Yes","custid":564,"reservation_id":144,"lineups_set":"No","session_plan":[],"is_attending":false,"set_attendance_allowed":false,"attendee_count":0,"attendance":[],"possible_attendees":[],"groups":[],"equipment":[{"reservation_id":144,"whitelabel_id":127,"start_time":1717858800,"end_time":1717866000,"time_human":"Sat Jun 8 9:00am - 11:00am","type":"practice","created_at":1717804291,"custid":564,"fname":"Michael","lname":"Demo","phone_number":"(555) 555-5555","email":"[email protected]","boats":[],"oars":[],"ergs":[],"notes":""}],"lineup_focus":0,"coaching_notes":[],"assigned_coaches":[],"possible_coaches":[{"custid":577,"fname":"Jim","lname":"Dahl","profile_image":null},{"custid":586,"fname":"Pete","lname":"Demoer","profile_image":null},{"custid":571,"fname":"alex","lname":"madeupperson","profile_image":null},{"custid":575,"fname":"Gracie","lname":"Madeupperson","profile_image":null},{"custid":579,"fname":"Phil","lname":"Realman","profile_image":null},{"custid":587,"fname":"Eric","lname":"Shaffer","profile_image":null},{"custid":585,"fname":"Bill","lname":"Smith","profile_image":"TEST\/PROFILEPICTURES\/585\/d96b2bf801ecbd97d477a29aea93819d5222425.jpg"}],"pending_requests":[],"forecasted_weather":[],"firebase_chat_id":"-Nzp6KWWWvsUMPOp1JeP"}
[]
Success Response Key
Enable Practice Lineup Email
POST practices/updatePrePracticeEmail
Changes whether athletes receive an email with their lineups once they are published by a coach.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| setting | `Yes` or `No` - whether or not to send a pre-practice lineups email to athletes in a lineup. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 17 | Manage Organization Settings | Allowed to change basic organization-related settings, such as uploading logos, setting timezone, etc. |
Sample Responses
{"status":"success","message":"Setting updated.","current_setting":"Yes"}
[]
Success Response Key
Update Practice Plan
POST practices/updateSessionplan
Updates the coaches plan for the practice. Having a practice plan in place allows athletes to know what they will be
doing for the practice and helps crews have a much more productive row. This endpoint returns an empty array
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| practice_id | Id of the practice being updated. |
| sessionplan | Practice plan for the practice. Replaces the existing practice plan. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
| 7 | Set Practice Lineups | Allowed to create/publish lineups for practices. |
Sample Responses
{"status":"success","message":"Session plan updated."}
[]
Success Response Key
Create Weather Alert
POST practices/createWeatherAlert
Creates a new weather alert for the authenticated user. Returns all active alerts the users has created.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| alert_type | Type of alert being created. Options are: `low_temp`, `high_temp`, `high_wind`, `high_gust`, `high_uv`. |
| alert_value | Threshold value that would trigger the alert. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"alert_id":3,"whitelabel_id":127,"custid":564,"alert_condition":"low_temp","condition_value":30,"created_at":1655173732},{"alert_id":5,"whitelabel_id":127,"custid":564,"alert_condition":"high_temp","condition_value":90,"created_at":1655173875},{"alert_id":6,"whitelabel_id":127,"custid":564,"alert_condition":"high_wind","condition_value":15,"created_at":1655173893}]
[]
Success Response Key
Remove Weather Alert
POST practices/removeWeatherAlert
Removes a given weather alert from the authenticated user.
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| alert_id | Id of the weather alert to remove. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"alert_id":3,"whitelabel_id":127,"custid":564,"alert_condition":"low_temp","condition_value":30,"created_at":1655173732},{"alert_id":5,"whitelabel_id":127,"custid":564,"alert_condition":"high_temp","condition_value":90,"created_at":1655173875},{"alert_id":6,"whitelabel_id":127,"custid":564,"alert_condition":"high_wind","condition_value":15,"created_at":1655173893}]
[]
Success Response Key
Get Weather Alerts by User
POST practices/getWeatherAlertsByUser
Gets all weather alerts for the authenticated user.
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[{"alert_id":3,"whitelabel_id":127,"custid":564,"alert_condition":"low_temp","condition_value":30,"created_at":1655173732},{"alert_id":5,"whitelabel_id":127,"custid":564,"alert_condition":"high_temp","condition_value":90,"created_at":1655173875},{"alert_id":6,"whitelabel_id":127,"custid":564,"alert_condition":"high_wind","condition_value":15,"created_at":1655173893}]
[]
Success Response Key
Search For Regattas
GET regattas/searchForRegattas
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| show_events | (optional) When provided with a value, all of the regatta events will also be returned with each regatta. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Get Regatta By Id
GET regattas/getRegattaById
Parameters
| token | API Token. |
|---|---|
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Get Historical Weather
GET regattas/getHistoricWeatherForVenue
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| venue_id | RegattaCentral Id for the venue. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Create Regatta Planner
POST regattas/createNewPlanner
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| hotseat_min_time | Minimum number of seconds athletes and boats can have between races. |
| attendance_lock_time | Number of seconds prior to the start of the regatta that athletes must have their attendance plans locked in. |
| max_attendees | Maximum number of athletes allowed to attend the regatta. |
| reservation_start | UNIX timestamp of the start of the equipment reservation. |
| reservation_end | UNIX timestamp of the end of the equipment reservation. |
Required Permissions
The authenticated user must hold one of the following permissions to access this endpoint:| Id | Name | Description |
|---|---|---|
| 5 | Create Practices | Allowed to add / remove / edit practices on the calendar. |
Sample Responses
[]
[]
Success Response Key
Get Regatta Planner By Id
GET regattas/getPlanner
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Update Regatta Planner
POST regattas/updateRegattaPlannerSetting
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| hotseat_min_time | (optional) Minimum number of seconds athletes and boats can have between races. |
| attendance_lock_time | (optional) Number of seconds prior to the start of the regatta that athletes must have their attendance plans locked in. |
| max_attendees | (optional) Maximum number of athletes allowed to attend the regatta. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Add Group To Regatta
POST regattas/addGroupToRegattaPlan
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| group_id | Id of the group being modified. |
| state | `Add` or `Remove` - Either adds or removed the group of users. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Add Athlete To Regatta
POST regattas/addAthleteToRegattaPlan
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| custid | Custid of the athlete being added or removed from the regatta. |
| state | `Add` or `Remove` - Either adds or removes the athlete. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Get All Planners
GET regattas/getAllPlanners
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Get Allowed Regattas By User
GET regattas/getAllowedRegattas
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| custid | (optional) Custid of a user retrieve allowed regattas of. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Declare Interest In Regatta Event
POST regattas/interestInEvent
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| event_id | Id of the event |
| state | `Add` or `Remove` - Add or removes interest in the event for the user. |
| custid | (optional) Custid of a user to indicate interest in the event. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Modify Regatta Planner Users
POST regattas/modifyPlannerUser
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| custid | Custid of the user to perform the action against. |
| state | `Add` or `Remove` - Either adds the user as a planner or removes them. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Create Lineup Entry
POST regattas/createLineupEntry
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| event_id | Id of the event |
| entry | Letter (A-Z) indicating the entry into the race for the boat. |
| boat_id | Id of the boat being used for the entry. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Add Athlete To Regatta Entry
POST regattas/addAthleteToLineup
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| lineup_id | Id of the lineup entry |
| custid | Custid of the user being added to the lineup |
| seat | Seat number (or `Coxswain`) the athlete is being assigned to. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Remove Athlete From Regatta Entry
POST regattas/removeAthleteFromLineup
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| lineup_id | Id of the lineup entry |
| custid | Custid of the user being removed from the lineup |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Delete Regatta Entry
POST regattas/deleteLineupEntry
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| lineup_id | Id of the lineup entry |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
Success Response Key
Send Message To Regatta Participants
POST regattas/sendMessageToAttendees
Parameters
| token | API Token. |
|---|---|
| whitelabel_id | Whitelabel Id of the organization. |
| bc_regatta_id | Boathouse Connect Id of the regatta. This will be different than the RegattaCentral Id of the regatta. |
| message_type | `Text` or `Email` - Type of message being sent. |
| body | Body of the email / message for the text message. |
| subject | (optional) Subject line if the message_type is `Email`. |
Required Permissions
No special permissions required to access this endpoint.Sample Responses
[]
[]
