openapi: 3.0.3 info: title: 'WANAC API Documentation' description: '' version: 1.0.0 servers: - url: 'https://wanac-api.kuzasports.com' tags: - name: Endpoints description: '' paths: /api/v1/auth/register: post: summary: '' operationId: postApiV1AuthRegister description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'Must not be greater than 255 characters.' example: vmqeopfuudtdsufvyvddq nullable: false email: type: string description: 'Must be a valid email address. Must not be greater than 255 characters.' example: kunde.eloisa@example.com nullable: false role: type: string description: '' example: consequatur nullable: false password: type: string description: 'This field is required when social is false. Must be at least 8 characters.' example: '[2UZ5ij-e/dl4' nullable: false social: type: boolean description: '' example: false nullable: false provider: type: string description: 'This field is required when social is true.' example: null nullable: false provider_id: type: string description: 'This field is required when social is true.' example: null nullable: false required: - name - email - role - social security: [] /api/v1/auth/login: post: summary: '' operationId: postApiV1AuthLogin description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Must be a valid email address. Must not be greater than 255 characters.' example: qkunze@example.com nullable: false role: type: string description: '' example: consequatur nullable: false password: type: string description: 'This field is required when social is false. Must be at least 8 characters.' example: '[2UZ5ij-e/dl4' nullable: false social: type: boolean description: '' example: false nullable: false provider: type: string description: 'This field is required when social is true.' example: null nullable: false provider_id: type: string description: 'This field is required when social is true.' example: null nullable: false required: - email - role - social security: [] /api/v1/auth/reset-password: post: summary: '' operationId: postApiV1AuthResetPassword description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Must be a valid email address. The email of an existing record in the users table.' example: qkunze@example.com nullable: false password: type: string description: 'Must be at least 8 characters.' example: 'Z5ij-e/dl4m{o,' nullable: false token: type: string description: '' example: consequatur nullable: false required: - email - password - token security: [] /api/v1/auth/forgot-password: post: summary: '' operationId: postApiV1AuthForgotPassword description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: 'Must be a valid email address. The email of an existing record in the users table.' example: qkunze@example.com nullable: false required: - email security: [] /api/v1/auth/update-password: post: summary: '' operationId: postApiV1AuthUpdatePassword description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/v1/profile: get: summary: '' operationId: getApiV1Profile description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/profile could not be found.' properties: message: type: string example: 'The route api/v1/profile could not be found.' tags: - Endpoints security: [] /api/v1/profile/update: get: summary: '' operationId: getApiV1ProfileUpdate description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/profile/update could not be found.' properties: message: type: string example: 'The route api/v1/profile/update could not be found.' tags: - Endpoints security: [] /api/v1/sessions: get: summary: '' operationId: getApiV1Sessions description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/sessions could not be found.' properties: message: type: string example: 'The route api/v1/sessions could not be found.' tags: - Endpoints security: [] /api/v1/sessions/add: post: summary: '' operationId: postApiV1SessionsAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: scheduled_at: type: string description: 'Must be a valid date. Must be a date after now.' example: '2106-11-03' nullable: false title: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: consequatur nullable: false required: - scheduled_at - title - description security: [] '/api/v1/sessions/update/{coachingSession_id}': put: summary: '' operationId: putApiV1SessionsUpdateCoachingSession_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: scheduled_at: type: string description: 'Must be a valid date. Must be a date after now.' example: '2106-11-03' nullable: false title: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: consequatur nullable: false required: - scheduled_at - title - description security: [] parameters: - in: path name: coachingSession_id description: 'The ID of the coachingSession.' example: 5 required: true schema: type: integer '/api/v1/sessions/{coachingSession_id}': get: summary: '' operationId: getApiV1SessionsCoachingSession_id description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/sessions/5 could not be found.' properties: message: type: string example: 'The route api/v1/sessions/5 could not be found.' tags: - Endpoints security: [] parameters: - in: path name: coachingSession_id description: 'The ID of the coachingSession.' example: 5 required: true schema: type: integer '/api/v1/sessions/delete/{coachingSession_id}': delete: summary: '' operationId: deleteApiV1SessionsDeleteCoachingSession_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: coachingSession_id description: 'The ID of the coachingSession.' example: 5 required: true schema: type: integer /api/v1/sessions/notes/add: post: summary: '' operationId: postApiV1SessionsNotesAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: session_id: type: string description: 'The id of an existing record in the coaching_sessions table.' example: consequatur nullable: false notes: type: string description: '' example: consequatur nullable: false required: - session_id - notes security: [] '/api/v1/sessions/notes/update/{sessionNote_id}': put: summary: '' operationId: putApiV1SessionsNotesUpdateSessionNote_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: note: type: string description: '' example: consequatur nullable: false required: - note security: [] parameters: - in: path name: sessionNote_id description: 'The ID of the sessionNote.' example: 17 required: true schema: type: integer '/api/v1/sessions/notes/delete/{sessionNote_id}': delete: summary: '' operationId: deleteApiV1SessionsNotesDeleteSessionNote_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: sessionNote_id description: 'The ID of the sessionNote.' example: 17 required: true schema: type: integer /api/v1/sessions/resources/add: post: summary: '' operationId: postApiV1SessionsResourcesAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: session_id: type: string description: 'The id of an existing record in the coaching_sessions table.' example: consequatur nullable: false name: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: consequatur nullable: false file: type: string description: '' example: consequatur nullable: false required: - session_id - name - description - file security: [] '/api/v1/sessions/resources/update/{sessionResource_id}': put: summary: '' operationId: putApiV1SessionsResourcesUpdateSessionResource_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: consequatur nullable: false file: type: string description: '' example: consequatur nullable: false required: - name - description - file security: [] parameters: - in: path name: sessionResource_id description: 'The ID of the sessionResource.' example: 1 required: true schema: type: integer '/api/v1/sessions/resources/delete/{sessionResource_id}': delete: summary: '' operationId: deleteApiV1SessionsResourcesDeleteSessionResource_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: sessionResource_id description: 'The ID of the sessionResource.' example: 1 required: true schema: type: integer /api/v1/sessions/members/add: post: summary: '' operationId: postApiV1SessionsMembersAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: session_id: type: string description: 'The id of an existing record in the coaching_sessions table.' example: consequatur nullable: false client_id: type: string description: 'The id of an existing record in the clients table.' example: consequatur nullable: false required: - session_id - client_id security: [] '/api/v1/sessions/members/delete/{sessionMember_id}': delete: summary: '' operationId: deleteApiV1SessionsMembersDeleteSessionMember_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: sessionMember_id description: 'The ID of the sessionMember.' example: 3 required: true schema: type: integer /api/v1/tasks: get: summary: '' operationId: getApiV1Tasks description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/tasks could not be found.' properties: message: type: string example: 'The route api/v1/tasks could not be found.' tags: - Endpoints security: [] /api/v1/tasks/add: post: summary: '' operationId: postApiV1TasksAdd description: '' parameters: [] responses: { } tags: - Endpoints security: [] '/api/v1/tasks/update/{task_id}': put: summary: '' operationId: putApiV1TasksUpdateTask_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: false content: application/json: schema: type: object properties: title: type: string description: 'Must not be greater than 255 characters.' example: vmqeopfuudtdsufvyvddq nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: true priority: type: string description: '' example: not-urgent-not-important nullable: false enum: - urgent-important - urgent-not-important - not-urgent-important - not-urgent-not-important due_date: type: string description: 'Must be a valid date.' example: '2025-10-04T15:14:00' nullable: true status: type: string description: '' example: in_progress nullable: false enum: - pending - in_progress - completed security: [] parameters: - in: path name: task_id description: 'The ID of the task.' example: 1 required: true schema: type: integer '/api/v1/tasks/delete/{task_id}': delete: summary: '' operationId: deleteApiV1TasksDeleteTask_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: task_id description: 'The ID of the task.' example: 1 required: true schema: type: integer /api/v1/communities: get: summary: '' operationId: getApiV1Communities description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/communities could not be found.' properties: message: type: string example: 'The route api/v1/communities could not be found.' tags: - Endpoints security: [] '/api/v1/communities/{community_id}': get: summary: '' operationId: getApiV1CommunitiesCommunity_id description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/communities/1 could not be found.' properties: message: type: string example: 'The route api/v1/communities/1 could not be found.' tags: - Endpoints security: [] parameters: - in: path name: community_id description: 'The ID of the community.' example: 1 required: true schema: type: integer /api/v1/communities/add: post: summary: '' operationId: postApiV1CommunitiesAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: consequatur nullable: false required: - name - description security: [] '/api/v1/communities/update/{community_id}': put: summary: '' operationId: putApiV1CommunitiesUpdateCommunity_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: consequatur nullable: false required: - name - description security: [] parameters: - in: path name: community_id description: 'The ID of the community.' example: 1 required: true schema: type: integer /api/v1/communities/delete: delete: summary: '' operationId: deleteApiV1CommunitiesDelete description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/v1/communities/posts/add: post: summary: '' operationId: postApiV1CommunitiesPostsAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: content: type: string description: '' example: consequatur nullable: false community_id: type: string description: 'The id of an existing record in the communities table.' example: consequatur nullable: false required: - content - community_id security: [] '/api/v1/communities/posts/update/{post_id}': put: summary: '' operationId: putApiV1CommunitiesPostsUpdatePost_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: content: type: string description: '' example: consequatur nullable: false required: - content security: [] parameters: - in: path name: post_id description: 'The ID of the post.' example: 1 required: true schema: type: integer '/api/v1/communities/posts/delete/{post_id}': delete: summary: '' operationId: deleteApiV1CommunitiesPostsDeletePost_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: post_id description: 'The ID of the post.' example: 1 required: true schema: type: integer /api/v1/communities/posts/comment/add: post: summary: '' operationId: postApiV1CommunitiesPostsCommentAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: content: type: string description: '' example: consequatur nullable: false post_id: type: string description: 'The id of an existing record in the posts table.' example: consequatur nullable: false required: - content - post_id security: [] '/api/v1/communities/posts/comment/update/{comment_id}': put: summary: '' operationId: putApiV1CommunitiesPostsCommentUpdateComment_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: content: type: string description: '' example: consequatur nullable: false required: - content security: [] parameters: - in: path name: comment_id description: 'The ID of the comment.' example: 17 required: true schema: type: integer '/api/v1/communities/posts/comment/delete/{comment_id}': delete: summary: '' operationId: deleteApiV1CommunitiesPostsCommentDeleteComment_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: comment_id description: 'The ID of the comment.' example: 17 required: true schema: type: integer /api/v1/daily-habits/today: get: summary: '' operationId: getApiV1DailyHabitsToday description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/daily-habits/today could not be found.' properties: message: type: string example: 'The route api/v1/daily-habits/today could not be found.' tags: - Endpoints security: [] /api/v1/daily-habits/add: post: summary: '' operationId: postApiV1DailyHabitsAdd description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/v1/daily-habits/update: put: summary: '' operationId: putApiV1DailyHabitsUpdate description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: id: type: string description: 'The id of an existing record in the daily_habits table.' example: consequatur nullable: false exercise: type: integer description: 'Must be between 1 and 5.' example: 1 nullable: false productivity: type: integer description: 'Must be between 1 and 5.' example: 2 nullable: false mood: type: integer description: 'Must be between 1 and 5.' example: 1 nullable: false sleep: type: integer description: 'Must be between 1 and 5.' example: 2 nullable: false nutrition: type: integer description: 'Must be between 1 and 5.' example: 2 nullable: false required: - id - exercise - productivity - mood - sleep - nutrition security: [] /api/v1/daily-habits/history: get: summary: '' operationId: getApiV1DailyHabitsHistory description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/daily-habits/history could not be found.' properties: message: type: string example: 'The route api/v1/daily-habits/history could not be found.' tags: - Endpoints security: [] /api/v1/whole-life-scores: get: summary: '' operationId: getApiV1WholeLifeScores description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/whole-life-scores could not be found.' properties: message: type: string example: 'The route api/v1/whole-life-scores could not be found.' tags: - Endpoints security: [] /api/v1/whole-life-scores/add: post: summary: '' operationId: postApiV1WholeLifeScoresAdd description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/v1/whole-life-scores/update: put: summary: '' operationId: putApiV1WholeLifeScoresUpdate description: '' parameters: [] responses: { } tags: - Endpoints security: [] /api/v1/journals: get: summary: '' operationId: getApiV1Journals description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/journals could not be found.' properties: message: type: string example: 'The route api/v1/journals could not be found.' tags: - Endpoints security: [] /api/v1/journals/add: post: summary: '' operationId: postApiV1JournalsAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'Must not be greater than 255 characters.' example: vmqeopfuudtdsufvyvddq nullable: false content: type: string description: '' example: consequatur nullable: true required: - title security: [] '/api/v1/journals/update/{journal_id}': put: summary: '' operationId: putApiV1JournalsUpdateJournal_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'Must not be greater than 255 characters.' example: vmqeopfuudtdsufvyvddq nullable: false content: type: string description: '' example: consequatur nullable: true required: - title security: [] parameters: - in: path name: journal_id description: 'The ID of the journal.' example: 1 required: true schema: type: integer '/api/v1/journals/delete/{journal_id}': delete: summary: '' operationId: deleteApiV1JournalsDeleteJournal_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: journal_id description: 'The ID of the journal.' example: 1 required: true schema: type: integer /api/v1/events: get: summary: '' operationId: getApiV1Events description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/events could not be found.' properties: message: type: string example: 'The route api/v1/events could not be found.' tags: - Endpoints security: [] /api/v1/events/add: post: summary: '' operationId: postApiV1EventsAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: type: type: string description: '' example: consequatur nullable: false location: type: string description: 'This field is required when type is Physical.' example: null nullable: false link: type: string description: 'This field is required when type is Online.' example: null nullable: false date: type: string description: '' example: consequatur nullable: false time: type: string description: '' example: consequatur nullable: false required: - type - date - time security: [] '/api/v1/events/update/{event_id}': put: summary: '' operationId: putApiV1EventsUpdateEvent_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: type: type: string description: '' example: consequatur nullable: false location: type: string description: 'This field is required when type is Physical.' example: null nullable: false link: type: string description: 'This field is required when type is online.' example: null nullable: false date: type: string description: '' example: consequatur nullable: false time: type: string description: '' example: consequatur nullable: false required: - type - date - time security: [] parameters: - in: path name: event_id description: 'The ID of the event.' example: 17 required: true schema: type: integer '/api/v1/events/delete/{event_id}': delete: summary: '' operationId: deleteApiV1EventsDeleteEvent_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: event_id description: 'The ID of the event.' example: 17 required: true schema: type: integer /api/v1/clients: get: summary: '' operationId: getApiV1Clients description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/clients could not be found.' properties: message: type: string example: 'The route api/v1/clients could not be found.' tags: - Endpoints security: [] /api/v1/programs: get: summary: '' operationId: getApiV1Programs description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/programs could not be found.' properties: message: type: string example: 'The route api/v1/programs could not be found.' tags: - Endpoints security: [] /api/v1/programs/add: post: summary: '' operationId: postApiV1ProgramsAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'Must not be greater than 255 characters.' example: vmqeopfuudtdsufvyvddq nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false required: - title - description security: [] '/api/v1/programs/update/{program_id}': put: summary: '' operationId: putApiV1ProgramsUpdateProgram_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'Must not be greater than 255 characters.' example: vmqeopfuudtdsufvyvddq nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false required: - title - description security: [] parameters: - in: path name: program_id description: 'The ID of the program.' example: 4 required: true schema: type: integer '/api/v1/programs/delete/{program_id}': delete: summary: '' operationId: deleteApiV1ProgramsDeleteProgram_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: program_id description: 'The ID of the program.' example: 4 required: true schema: type: integer '/api/v1/programs/{program_id}': get: summary: '' operationId: getApiV1ProgramsProgram_id description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/programs/4 could not be found.' properties: message: type: string example: 'The route api/v1/programs/4 could not be found.' tags: - Endpoints security: [] parameters: - in: path name: program_id description: 'The ID of the program.' example: 4 required: true schema: type: integer /api/v1/programs/cohort/add: post: summary: '' operationId: postApiV1ProgramsCohortAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: program_id: type: string description: 'The id of an existing record in the programs table.' example: consequatur nullable: false name: type: string description: 'Must not be greater than 255 characters.' example: mqeopfuudtdsufvyvddqa nullable: false start_date: type: string description: 'Must be a valid date.' example: '2025-10-04T15:14:00' nullable: false end_date: type: string description: 'Must be a valid date. Must be a date after start_date.' example: '2106-11-03' nullable: false required: - program_id - name - start_date - end_date security: [] '/api/v1/programs/cohort/update/{cohort_id}': put: summary: '' operationId: putApiV1ProgramsCohortUpdateCohort_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: program_id: type: string description: 'The id of an existing record in the programs table.' example: consequatur nullable: false name: type: string description: 'Must not be greater than 255 characters.' example: mqeopfuudtdsufvyvddqa nullable: false start_date: type: string description: 'Must be a valid date.' example: '2025-10-04T15:14:00' nullable: false end_date: type: string description: 'Must be a valid date. Must be a date after start_date.' example: '2106-11-03' nullable: false required: - program_id - name - start_date - end_date security: [] parameters: - in: path name: cohort_id description: 'The ID of the cohort.' example: 1 required: true schema: type: integer '/api/v1/programs/cohort/delete/{cohort_id}': delete: summary: '' operationId: deleteApiV1ProgramsCohortDeleteCohort_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: cohort_id description: 'The ID of the cohort.' example: 1 required: true schema: type: integer /api/v1/programs/cohort-member/add: post: summary: '' operationId: postApiV1ProgramsCohortMemberAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: cohort_id: type: string description: 'The id of an existing record in the cohorts table.' example: consequatur nullable: false client_id: type: string description: 'The id of an existing record in the clients table.' example: consequatur nullable: false required: - cohort_id - client_id security: [] '/api/v1/programs/cohort-member/delete/{cohortMember_id}': delete: summary: '' operationId: deleteApiV1ProgramsCohortMemberDeleteCohortMember_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: cohortMember_id description: 'The ID of the cohortMember.' example: 1 required: true schema: type: integer /api/v1/programs/unit/add: post: summary: '' operationId: postApiV1ProgramsUnitAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: program_id: type: string description: 'The id of an existing record in the programs table.' example: consequatur nullable: false name: type: string description: 'Must not be greater than 255 characters.' example: mqeopfuudtdsufvyvddqa nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false required: - program_id - name - description security: [] '/api/v1/programs/unit/update/{unit_id}': put: summary: '' operationId: putApiV1ProgramsUnitUpdateUnit_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: program_id: type: string description: 'The id of an existing record in the programs table.' example: consequatur nullable: false name: type: string description: 'Must not be greater than 255 characters.' example: mqeopfuudtdsufvyvddqa nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false required: - program_id - name - description security: [] parameters: - in: path name: unit_id description: 'The ID of the unit.' example: 17 required: true schema: type: integer '/api/v1/programs/unit/delete/{unit_id}': delete: summary: '' operationId: deleteApiV1ProgramsUnitDeleteUnit_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: unit_id description: 'The ID of the unit.' example: 17 required: true schema: type: integer /api/v1/programs/unit-resource/add: post: summary: '' operationId: postApiV1ProgramsUnitResourceAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: unit_id: type: string description: 'The id of an existing record in the units table.' example: consequatur nullable: false name: type: string description: 'Must not be greater than 255 characters.' example: mqeopfuudtdsufvyvddqa nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false required: - unit_id - name - description security: [] '/api/v1/programs/unit-resource/update/{unitResource_id}': put: summary: '' operationId: putApiV1ProgramsUnitResourceUpdateUnitResource_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: unit_id: type: string description: 'The id of an existing record in the units table.' example: consequatur nullable: false name: type: string description: 'Must not be greater than 255 characters.' example: mqeopfuudtdsufvyvddqa nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false added_by: type: string description: 'The id of an existing record in the users table.' example: consequatur nullable: false required: - unit_id - name - description - added_by security: [] parameters: - in: path name: unitResource_id description: 'The ID of the unitResource.' example: 17 required: true schema: type: integer '/api/v1/programs/unit-resource/delete/{unitResource_id}': delete: summary: '' operationId: deleteApiV1ProgramsUnitResourceDeleteUnitResource_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: unitResource_id description: 'The ID of the unitResource.' example: 17 required: true schema: type: integer /api/v1/cohorts: get: summary: '' operationId: getApiV1Cohorts description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/cohorts could not be found.' properties: message: type: string example: 'The route api/v1/cohorts could not be found.' tags: - Endpoints security: [] /api/v1/coaches: get: summary: '' operationId: getApiV1Coaches description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/coaches could not be found.' properties: message: type: string example: 'The route api/v1/coaches could not be found.' tags: - Endpoints security: [] /api/v1/fireteams: get: summary: '' operationId: getApiV1Fireteams description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/fireteams could not be found.' properties: message: type: string example: 'The route api/v1/fireteams could not be found.' tags: - Endpoints security: [] /api/v1/fireteams/add: post: summary: '' operationId: postApiV1FireteamsAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: cohort_id: type: string description: 'The id of an existing record in the cohorts table.' example: consequatur nullable: false title: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false date: type: string description: 'Must be a valid date.' example: '2025-10-04T15:14:00' nullable: false time: type: string description: '' example: consequatur nullable: false link: type: string description: '' example: consequatur nullable: false required: - cohort_id - title - description - date - time - link security: [] '/api/v1/fireteams/update/{fireteam}': put: summary: '' operationId: putApiV1FireteamsUpdateFireteam description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: cohort_id: type: string description: 'The id of an existing record in the cohorts table.' example: consequatur nullable: false title: type: string description: '' example: consequatur nullable: false description: type: string description: '' example: 'Dolores dolorum amet iste laborum eius est dolor.' nullable: false date: type: string description: 'Must be a valid date.' example: '2025-10-04T15:14:01' nullable: false time: type: string description: '' example: consequatur nullable: false required: - cohort_id - title - description - date - time security: [] parameters: - in: path name: fireteam description: '' example: consequatur required: true schema: type: string '/api/v1/fireteams/delete/{fireteam}': delete: summary: '' operationId: deleteApiV1FireteamsDeleteFireteam description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: fireteam description: '' example: consequatur required: true schema: type: string '/api/v1/fireteams/{fireteam}': get: summary: '' operationId: getApiV1FireteamsFireteam description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/fireteams/17 could not be found.' properties: message: type: string example: 'The route api/v1/fireteams/17 could not be found.' tags: - Endpoints security: [] parameters: - in: path name: fireteam description: 'The fireteam.' example: 17 required: true schema: type: integer /api/v1/fireteams/member/add: post: summary: '' operationId: postApiV1FireteamsMemberAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: client_id: type: string description: 'The id of an existing record in the clients table.' example: consequatur nullable: false fire_team_id: type: string description: 'The id of an existing record in the fire_teams table.' example: consequatur nullable: false required: - client_id - fire_team_id security: [] '/api/v1/fireteams/member/delete/{fireteamMember}': delete: summary: '' operationId: deleteApiV1FireteamsMemberDeleteFireteamMember description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: fireteamMember description: '' example: consequatur required: true schema: type: string /api/v1/fireteams/experience/add: post: summary: '' operationId: postApiV1FireteamsExperienceAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: fire_team_id: type: string description: 'The id of an existing record in the fire_teams table.' example: consequatur nullable: false title: type: string description: '' example: consequatur nullable: false experience: type: string description: '' example: consequatur nullable: false link: type: string description: '' example: consequatur nullable: true status: type: string description: '' example: consequatur nullable: true report: type: string description: '' example: consequatur nullable: true summary: type: string description: '' example: consequatur nullable: true required: - fire_team_id - title - experience security: [] '/api/v1/fireteams/experience/delete/{fireTeamExperience_id}': delete: summary: '' operationId: deleteApiV1FireteamsExperienceDeleteFireTeamExperience_id description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: fireTeamExperience_id description: 'The ID of the fireTeamExperience.' example: 17 required: true schema: type: integer '/api/v1/fireteams/experiences/{fireTeam}': get: summary: '' operationId: getApiV1FireteamsExperiencesFireTeam description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/fireteams/experiences/consequatur could not be found.' properties: message: type: string example: 'The route api/v1/fireteams/experiences/consequatur could not be found.' tags: - Endpoints security: [] parameters: - in: path name: fireTeam description: '' example: consequatur required: true schema: type: string '/api/v1/fireteams/experience/update/{fireTeamExperience_id}': put: summary: '' operationId: putApiV1FireteamsExperienceUpdateFireTeamExperience_id description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: '' example: consequatur nullable: false experience: type: string description: '' example: consequatur nullable: false link: type: string description: '' example: consequatur nullable: true status: type: string description: '' example: consequatur nullable: true report: type: string description: '' example: consequatur nullable: true summary: type: string description: '' example: consequatur nullable: true required: - title - experience security: [] parameters: - in: path name: fireTeamExperience_id description: 'The ID of the fireTeamExperience.' example: 17 required: true schema: type: integer '/api/v1/fireteams/members/{fireTeam}': get: summary: '' operationId: getApiV1FireteamsMembersFireTeam description: '' parameters: [] responses: 404: description: '' content: application/json: schema: type: object example: message: 'The route api/v1/fireteams/members/consequatur could not be found.' properties: message: type: string example: 'The route api/v1/fireteams/members/consequatur could not be found.' tags: - Endpoints security: [] parameters: - in: path name: fireTeam description: '' example: consequatur required: true schema: type: string /api/v1/fireteams/experience/agenda-step/add: post: summary: '' operationId: postApiV1FireteamsExperienceAgendaStepAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: '' example: consequatur nullable: false duration: type: string description: '' example: consequatur nullable: true fire_team_experience_id: type: string description: 'The id of an existing record in the fire_team_experiences table.' example: consequatur nullable: false required: - title - fire_team_experience_id security: [] '/api/v1/fireteams/experience/agenda-step/delete/{agendaStep}': delete: summary: '' operationId: deleteApiV1FireteamsExperienceAgendaStepDeleteAgendaStep description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: agendaStep description: '' example: consequatur required: true schema: type: string /api/v1/fireteams/experience/exhibit/add: post: summary: '' operationId: postApiV1FireteamsExperienceExhibitAdd description: '' parameters: [] responses: { } tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: fire_team_experience_id: type: string description: 'The id of an existing record in the fire_team_experiences table.' example: consequatur nullable: false name: type: string description: '' example: consequatur nullable: false type: type: string description: '' example: consequatur nullable: false link: type: string description: 'This field is required when type is link.' example: consequatur nullable: false required: - fire_team_experience_id - name - type security: [] '/api/v1/fireteams/experience/exhibit/delete/{agendaStep}': delete: summary: '' operationId: deleteApiV1FireteamsExperienceExhibitDeleteAgendaStep description: '' parameters: [] responses: { } tags: - Endpoints security: [] parameters: - in: path name: agendaStep description: '' example: consequatur required: true schema: type: string