uExcelerate Server App (1.0.0)

Download OpenAPI specification:

Documentation of uExcelerate server app, where you can find all rest-api.

Admin - Control Panel

Admin - Control Panel operations

Mark admin onboarding stage complete

Submits mark admin onboarding stage complete. From routes/admin/control_panel.js — calls adminControlPanelController.markOnboardingStageComplete Backed by controller adminControlPanelController.markOnboardingStageComplete.

Authorizations:
bearerAuth
Request Body schema: application/json
required
stageNum
number

Stage num field

Responses

Request samples

Content type
application/json
{
  • "stageNum": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS"
}

Get admin onboarding info

Retrieves admin onboarding info. From routes/admin/control_panel.js — calls adminControlPanelController.adminOnboardingInfo Backed by controller adminControlPanelController.adminOnboardingInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get admin personal info

Retrieves admin personal info. From routes/admin/control_panel.js — calls adminControlPanelController.getAdminPersonalInfo Backed by controller adminControlPanelController.getAdminPersonalInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update admin personal info

Updates admin personal info. From routes/admin/control_panel.js — calls adminControlPanelController.updateAdminPersonalInfo Backed by controller adminControlPanelController.updateAdminPersonalInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
key
string

Key field

value
any

Value field

Responses

Request samples

Content type
application/json
{
  • "key": "sample key",
  • "value": null
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Change admin password

Submits change admin password. From routes/admin/control_panel.js — calls adminControlPanelController.changePassword Backed by controller adminControlPanelController.changePassword.

Authorizations:
bearerAuth
Request Body schema: application/json
required
password
string

User password (plaintext at API boundary; hashed server-side)

Responses

Request samples

Content type
application/json
{
  • "password": "Pa$$w0rd123"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get admin corporate info

Retrieves admin corporate info. From routes/admin/control_panel.js — calls adminControlPanelController.getAdminCorporateInfo Backed by controller adminControlPanelController.getAdminCorporateInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get corporate enabled services

Retrieves corporate enabled services. From routes/admin/control_panel.js — calls adminControlPanelController.getCorporateEnabledServices Backed by controller adminControlPanelController.getCorporateEnabledServices.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get active programs

Retrieves active programs. From routes/admin/control_panel.js — calls adminControlPanelController.getActivePrograms Backed by controller adminControlPanelController.getActivePrograms.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update admin corporate info

Updates admin corporate info. From routes/admin/control_panel.js — calls adminControlPanelController.updateAdminCorporateInfo Backed by controller adminControlPanelController.updateAdminCorporateInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
key
string

Key field

value
any

Value field

Responses

Request samples

Content type
application/json
{
  • "key": "sample key",
  • "value": null
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Switch corporate plan

Submits switch corporate plan. From routes/admin/control_panel.js — calls adminControlPanelController.switchPlan Backed by controller adminControlPanelController.switchPlan.

Authorizations:
bearerAuth
Request Body schema: application/json
required
planName
string

Plan name field

Responses

Request samples

Content type
application/json
{
  • "planName": "sample plan name"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create integration request

Creates integration request. From routes/admin/control_panel.js — calls adminControlPanelController.integrationRequest Backed by controller adminControlPanelController.integrationRequest.

Authorizations:
bearerAuth
Request Body schema: application/json
required
integrationType
string

Integration type field

integrationStatus
string

Integration status field

Responses

Request samples

Content type
application/json
{
  • "integrationType": "sample integration type",
  • "integrationStatus": "sample integration status"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create custom integration request

Creates custom integration request. From routes/admin/control_panel.js — calls adminControlPanelController.customIntegrationRequest Backed by controller adminControlPanelController.customIntegrationRequest.

Authorizations:
bearerAuth
Request Body schema: application/json
required
integrationType
string

Integration type field

reason
string

Reason field

Responses

Request samples

Content type
application/json
{
  • "integrationType": "sample integration type",
  • "reason": "sample reason"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Remove integration request

Removes integration request. From routes/admin/control_panel.js — calls adminControlPanelController.removeIntegrationRequest Backed by controller adminControlPanelController.removeIntegrationRequest.

Authorizations:
bearerAuth
Request Body schema: application/json
required
integrationType
string

Integration type field

reason
string

Reason field

Responses

Request samples

Content type
application/json
{
  • "integrationType": "sample integration type",
  • "reason": "sample reason"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get integration config info

Retrieves integration config info. From routes/admin/control_panel.js — calls adminControlPanelController.getIntegrationConfigInfo Backed by controller adminControlPanelController.getIntegrationConfigInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Request an add-on

Submits request an add-on. From routes/admin/control_panel.js — calls adminControlPanelController.addOnRequest Backed by controller adminControlPanelController.addOnRequest.

Authorizations:
bearerAuth
Request Body schema: application/json
required
addOnRequested
string

Add on requested field

Responses

Request samples

Content type
application/json
{
  • "addOnRequested": "sample add on requested"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Remove an add-on request

Removes an add-on request. From routes/admin/control_panel.js — calls adminControlPanelController.removeAddOnRequest Backed by controller adminControlPanelController.removeAddOnRequest.

Authorizations:
bearerAuth
Request Body schema: application/json
required
addOnRequested
string

Add on requested field

Responses

Request samples

Content type
application/json
{
  • "addOnRequested": "sample add on requested"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get add-ons info

Retrieves add-ons info. From routes/admin/control_panel.js — calls adminControlPanelController.getAddOnsInfo Backed by controller adminControlPanelController.getAddOnsInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get recent activities

Retrieves recent activities. From routes/admin/control_panel.js — calls adminControlPanelController.getRecentActivities Backed by controller adminControlPanelController.getRecentActivities.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get balance info

Retrieves balance info. From routes/admin/control_panel.js — calls adminControlPanelController.getBalanceInfo Backed by controller adminControlPanelController.getBalanceInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Admin - Engagement Actions

Admin - Engagement Actions operations

List actions for an engagement

Retrieves actions for an engagement. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.getActionsForEngagement Backed by controller engagementActionsController.getActionsForEngagement.

Authorizations:
bearerAuth
path Parameters
programId
required
string
engagementId
required
string
query Parameters
status
string
Enum: "In Progress" "Completed" "Overdue"

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [ ]
}

Create action for an engagement (multipart/form-data with files[])

Creates action for an engagement (multipart/form-data with files[]). From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.createAction Backed by controller engagementActionsController.createAction.

Authorizations:
bearerAuth
path Parameters
programId
required
string
engagementId
required
string
Request Body schema: multipart/form-data
required
title
string

Display title

instructions
string

Instructions field

dueDate
string <date>

Target completion date (ISO 8601)

learnerIds
Array of numbers

Learner ids field

Array of objects

Links field

Array of objects

Tasks field

folder
string

Folder field

files[]
Array of strings <binary> [ items <binary > ]

Files[] field

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get action details

Retrieves action details. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.getActionDetails Backed by controller engagementActionsController.getActionDetails.

Authorizations:
bearerAuth
path Parameters
actionId
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update an action

Updates an action. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.updateAction. learnerIds reassignment is intentionally blocked (409). Backed by controller engagementActionsController.updateAction..

Authorizations:
bearerAuth
path Parameters
actionId
required
string
Request Body schema: application/json
required
title
string

Display title

instructions
string

Instructions field

dueDate
string <date>

Target completion date (ISO 8601)

learnerIds
Array of numbers

Learner ids field

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "title": "Sample title",
  • "instructions": "sample instructions",
  • "dueDate": "2026-12-31",
  • "learnerIds": [ ],
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Delete an action

Removes an action. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.deleteAction Backed by controller engagementActionsController.deleteAction.

Authorizations:
bearerAuth
path Parameters
actionId
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get learner-specific action details

Retrieves learner-specific action details. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.getLearnerDetails Backed by controller engagementActionsController.getLearnerDetails.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
learnerId
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update learner action status

Updates learner action status. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.updateLearnerActionStatus Backed by controller engagementActionsController.updateLearnerActionStatus.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
learnerId
required
string
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Add resource to action (file/link/task — multipart for file)

Creates resource to action (file/link/task — multipart for file). From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.addResourceToAction. Discriminated by type (file|link|task). Backed by controller engagementActionsController.addResourceToAction..

Authorizations:
bearerAuth
path Parameters
actionId
required
string
Request Body schema: multipart/form-data
required
type
string
Enum: "file" "link" "task"

Type field

folder
string

Folder field

name
string

Display name

url
string <uri>

Resource URL

title
string

Display title

description
string

Description field

text
string

Text field

file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Remove resource from action

Removes resource from action. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.removeResourceFromAction Backed by controller engagementActionsController.removeResourceFromAction.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
resourceId
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Send chat message on a learner action

Sends chat message on a learner action. From routes/admin/connections/programs/engagements/engagementActions.js — calls engagementActionsController.sendChatMessage Backed by controller engagementActionsController.sendChatMessage.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
learnerId
required
string
Request Body schema: application/json
required
message
string

Human-readable status message

Responses

Request samples

Content type
application/json
{
  • "message": "Operation completed"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Admin - Home

Admin - Home operations

Get active programs data

Retrieves active programs data. From routes/admin/home.js — calls adminHomeController.getActiveProgramsData Backed by controller adminHomeController.getActiveProgramsData.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get pending activities

Retrieves pending activities. From routes/admin/home.js — calls coachHomeController.getPendingActivities Backed by controller coachHomeController.getPendingActivities.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Admin - Insights

Admin - Insights operations

Get insights filter options

Retrieves insights filter options. From routes/admin/insights.js — calls adminInsightsController.getFilterData Backed by controller adminInsightsController.getFilterData.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user programs

Retrieves user programs. From routes/admin/insights.js — calls adminInsightsController.getUserPrograms Backed by controller adminInsightsController.getUserPrograms.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user corporate info list

Retrieves user corporate info list. From routes/admin/insights.js — calls adminInsightsController.getUserCoprorateInfo Backed by controller adminInsightsController.getUserCoprorateInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get connected users

Retrieves connected users. From routes/admin/insights.js — calls adminInsightsController.getConnectedUsers Backed by controller adminInsightsController.getConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get admin insight statistics

Retrieves admin insight statistics. From routes/admin/insights.js — calls adminInsightsController.getAdminInsightStatistics Backed by controller adminInsightsController.getAdminInsightStatistics.

Authorizations:
bearerAuth
Request Body schema: application/json
required
learnerId
number

Learner's user ID

coachId
number

Coach's user ID

programId
number

Program ID

corporateId
number

Corporate (account) ID

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "learnerId": 12345,
  • "coachId": 12345,
  • "programId": 12345,
  • "corporateId": 12345,
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13",
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get one-on-one leaderboard data

Retrieves one-on-one leaderboard data. From routes/admin/insights.js — calls adminInsightsController.getOneOnOneLeaderBoardData Backed by controller adminInsightsController.getOneOnOneLeaderBoardData.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get group leaderboard data

Retrieves group leaderboard data. From routes/admin/insights.js — calls adminInsightsController.getGroupLeaderBoardData Backed by controller adminInsightsController.getGroupLeaderBoardData.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get shared tools progress

Retrieves shared tools progress. From routes/admin/insights.js — calls adminInsightsController.getSharedToolsProgress Backed by controller adminInsightsController.getSharedToolsProgress.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

toolId
number

Coaching tool ID

statusFilter
string

Status filter field

corporateId
number

Corporate (account) ID

learnerId
number

Learner's user ID

coachId
number

Coach's user ID

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "toolId": 12345,
  • "statusFilter": "sample status filter",
  • "corporateId": 12345,
  • "learnerId": 12345,
  • "coachId": 12345,
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Export all tool response summary as CSV

Submits export all tool response summary as CSV. From routes/admin/insights.js — calls adminInsightsController.getAllToolResponseSummaryCsv Backed by controller adminInsightsController.getAllToolResponseSummaryCsv.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

toolId
number

Coaching tool ID

statusFilter
string

Status filter field

corporateId
number

Corporate (account) ID

learnerId
number

Learner's user ID

coachId
number

Coach's user ID

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "toolId": 12345,
  • "statusFilter": "sample status filter",
  • "corporateId": 12345,
  • "learnerId": 12345,
  • "coachId": 12345,
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Admin - Programs

Admin - Programs operations

List programs

Retrieves programs. From routes/admin/programs.js — calls adminProgramsController.getProgramDetailsList Backed by controller adminProgramsController.getProgramDetailsList.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create program

Creates program. From routes/admin/programs.js — calls adminProgramsController.createProgram Backed by controller adminProgramsController.createProgram.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

corporateId
number

Corporate (account) ID

name
string

Display name

description
string

Description field

level
Array of numbers

Level field

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

managerId
number

Manager id (identifier)

managers
Array of objects

Managers field

enableCoachSearch
boolean

Enable coach search field

enableAICoach
boolean

Enable aicoach field

enableNudges
boolean

Enable nudges field

enableReminders
boolean

Enable reminders field

enableRerports
boolean

Enable rerports field

enableInternalCoachPool
boolean

Enable internal coach pool field

enableMarketplaceCoachPool
boolean

Enable marketplace coach pool field

programCode
string

Program code field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "corporateId": 12345,
  • "name": "John Doe",
  • "description": "sample description",
  • "level": [ ],
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13",
  • "managerId": 12345,
  • "managers": [ ],
  • "enableCoachSearch": true,
  • "enableAICoach": true,
  • "enableNudges": true,
  • "enableReminders": true,
  • "enableRerports": true,
  • "enableInternalCoachPool": true,
  • "enableMarketplaceCoachPool": true,
  • "programCode": "sample program code"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program manager info

Retrieves program manager info. From routes/admin/programs.js — calls adminProgramsController.getProgramManagerInfo Backed by controller adminProgramsController.getProgramManagerInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update program preference

Updates program preference. From routes/admin/programs.js — calls adminProgramsController.updateProgramPreference Backed by controller adminProgramsController.updateProgramPreference.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

preferenceType
string

Preference type field

value
any

Value field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "preferenceType": "sample preference type",
  • "value": null
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update program manager

Updates program manager. From routes/admin/programs.js — calls adminProgramsController.updateProgramManager Backed by controller adminProgramsController.updateProgramManager.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

managerId
number

Manager id (identifier)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "managerId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update program end date

Updates program end date. From routes/admin/programs.js — calls adminProgramsController.updateProgramEndDate Backed by controller adminProgramsController.updateProgramEndDate.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program tag info

Retrieves program tag info. From routes/admin/programs.js — calls adminProgramsController.getProgramTagInfo Backed by controller adminProgramsController.getProgramTagInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program workflow templates

Retrieves program workflow templates. From routes/admin/programs.js — calls adminProgramsController.getProgramWorkflowTemplates Backed by controller adminProgramsController.getProgramWorkflowTemplates.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program component templates

Retrieves program component templates. From routes/admin/programs.js — calls adminProgramsController.getProgramComponentTemplates Backed by controller adminProgramsController.getProgramComponentTemplates.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program data

Retrieves program data. From routes/admin/programs.js — calls adminProgramsController.getProgramData Backed by controller adminProgramsController.getProgramData.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program statistics

Retrieves program statistics. From routes/admin/programs.js — calls adminProgramsController.getProgramStatistics Backed by controller adminProgramsController.getProgramStatistics.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program workflow

Retrieves program workflow. From routes/admin/programs.js — calls adminProgramsController.getProgramWorkflow Backed by controller adminProgramsController.getProgramWorkflow.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program workflow progress

Retrieves program workflow progress. From routes/admin/programs.js — calls adminProgramsController.getProgramWorkflowProgress Backed by controller adminProgramsController.getProgramWorkflowProgress.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update program workflow

Updates program workflow. From routes/admin/programs.js — calls adminProgramsController.updateProgramWorkflow Backed by controller adminProgramsController.updateProgramWorkflow.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

workflowName
string

Workflow name field

workflowStructure
Array of objects

Workflow structure field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345,
  • "workflowName": "sample workflow name",
  • "workflowStructure": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program workflow components

Retrieves program workflow components. From routes/admin/programs.js — calls adminProgramsController.getProgramWorkflowComponents Backed by controller adminProgramsController.getProgramWorkflowComponents.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update program workflow component

Updates program workflow component. From routes/admin/programs.js — calls adminProgramsController.updateProgramWorkflowComponent Backed by controller adminProgramsController.updateProgramWorkflowComponent.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

componentId
string <uuid>

Component id (identifier)

componentType
string

Component type field

componentName
string

Component name field

componentDesc
string

Component desc field

componentOrder
number

Component order field

isSaved
boolean

Is saved field

componentStructure
Array of objects

Component structure field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345,
  • "componentId": "550e8400-e29b-41d4-a716-446655440000",
  • "componentType": "sample component type",
  • "componentName": "sample component name",
  • "componentDesc": "sample component desc",
  • "componentOrder": 1,
  • "isSaved": true,
  • "componentStructure": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Remove program workflow component

Removes program workflow component. From routes/admin/programs.js — calls adminProgramsController.removeProgramWorkflowComponent Backed by controller adminProgramsController.removeProgramWorkflowComponent.

Authorizations:
bearerAuth
Request Body schema: application/json
required
componentId
string <uuid>

Component id (identifier)

componentType
string

Component type field

Responses

Request samples

Content type
application/json
{
  • "componentId": "550e8400-e29b-41d4-a716-446655440000",
  • "componentType": "sample component type"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create workflow engagement

Creates workflow engagement. From routes/admin/programs.js — calls adminProgramsController.createWorkflowEngagement Backed by controller adminProgramsController.createWorkflowEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

componentId
Array of strings

Component id (identifier)

componentType
string

Component type field

engagementName
string

Engagement name

properties
Array of objects

Properties field

learners
Array of objects

Learners field

coaches
Array of objects

Coaches field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345,
  • "componentId": [ ],
  • "componentType": "sample component type",
  • "engagementName": "Senior Director Cohort",
  • "properties": [ ],
  • "learners": [ ],
  • "coaches": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Duplicate workflow engagement

Submits duplicate workflow engagement. From routes/admin/programs.js — calls adminProgramsController.duplicateWorkflowEngagement Backed by controller adminProgramsController.duplicateWorkflowEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

engagementId
number

Engagement ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "engagementId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update workflow engagement

Updates workflow engagement. From routes/admin/programs.js — calls adminProgramsController.updateWorkflowEngagement Backed by controller adminProgramsController.updateWorkflowEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

componentId
Array of strings

Component id (identifier)

componentType
string

Component type field

engagementId
number

Engagement ID

engagementName
string

Engagement name

learners
Array of objects

Learners field

coaches
Array of objects

Coaches field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "componentId": [ ],
  • "componentType": "sample component type",
  • "engagementId": 12345,
  • "engagementName": "Senior Director Cohort",
  • "learners": [ ],
  • "coaches": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Remove workflow engagement

Removes workflow engagement. From routes/admin/programs.js — calls adminProgramsController.removeWorkflowEngagement Backed by controller adminProgramsController.removeWorkflowEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

componentType
string

Component type field

engagementId
number

Engagement ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "componentType": "sample component type",
  • "engagementId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create assessment engagement

Creates assessment engagement. From routes/admin/programs.js — calls adminProgramsController.createAssessmentEngagement Backed by controller adminProgramsController.createAssessmentEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

componentId
Array of strings

Component id (identifier)

engagementName
string

Engagement name

assessmentLink
string

Assessment link field

learners
Array of objects

Learners field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345,
  • "componentId": [ ],
  • "engagementName": "Senior Director Cohort",
  • "assessmentLink": "sample assessment link",
  • "learners": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update assessment engagement

Updates assessment engagement. From routes/admin/programs.js — calls adminProgramsController.updateAssessmentEngagement Backed by controller adminProgramsController.updateAssessmentEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

engagementId
number

Engagement ID

componentId
string <uuid>

Component id (identifier)

engagementName
string

Engagement name

assessmentLink
string

Assessment link field

learners
Array of objects

Learners field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "engagementId": 12345,
  • "componentId": "550e8400-e29b-41d4-a716-446655440000",
  • "engagementName": "Senior Director Cohort",
  • "assessmentLink": "sample assessment link",
  • "learners": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create tool engagement

Creates tool engagement. From routes/admin/programs.js — calls adminProgramsController.createToolEngagement Backed by controller adminProgramsController.createToolEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

componentId
Array of strings

Component id (identifier)

engagementName
string

Engagement name

toolId
number

Coaching tool ID

dueDate
string <date>

Target completion date (ISO 8601)

learners
Array of objects

Learners field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345,
  • "componentId": [ ],
  • "engagementName": "Senior Director Cohort",
  • "toolId": 12345,
  • "dueDate": "2026-05-13",
  • "learners": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update tool engagement

Updates tool engagement. From routes/admin/programs.js — calls adminProgramsController.updateToolEngagement Backed by controller adminProgramsController.updateToolEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

engagementId
number

Engagement ID

componentId
string <uuid>

Component id (identifier)

engagementName
string

Engagement name

toolId
string <uuid>

Coaching tool ID

dueDate
string <date>

Target completion date (ISO 8601)

learners
Array of objects

Learners field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "engagementId": 12345,
  • "componentId": "550e8400-e29b-41d4-a716-446655440000",
  • "engagementName": "Senior Director Cohort",
  • "toolId": "550e8400-e29b-41d4-a716-446655440000",
  • "dueDate": "2026-05-13",
  • "learners": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create meeting engagement

Creates meeting engagement. From routes/admin/programs.js — calls adminProgramsController.createMeetingEngagement Backed by controller adminProgramsController.createMeetingEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

componentId
Array of strings

Component id (identifier)

componentType
string

Component type field

engagementName
string

Engagement name

meetingType
string

Meeting type field

learners
Array of objects

Learners field

coaches
Array of objects

Coaches field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345,
  • "componentId": [ ],
  • "componentType": "sample component type",
  • "engagementName": "Senior Director Cohort",
  • "meetingType": "sample meeting type",
  • "learners": [ ],
  • "coaches": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update meeting engagement

Updates meeting engagement. From routes/admin/programs.js — calls adminProgramsController.updateMeetingEngagement Backed by controller adminProgramsController.updateMeetingEngagement.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

engagementId
number

Engagement ID

componentId
Array of strings

Component id (identifier)

componentType
string

Component type field

engagementName
string

Engagement name

learners
Array of objects

Learners field

coaches
Array of objects

Coaches field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "engagementId": 12345,
  • "componentId": [ ],
  • "componentType": "sample component type",
  • "engagementName": "Senior Director Cohort",
  • "learners": [ ],
  • "coaches": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program members

Retrieves program members. From routes/admin/programs.js — calls adminProgramsController.getProgramMembers Backed by controller adminProgramsController.getProgramMembers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program learners

Retrieves program learners. From routes/admin/programs.js — calls adminProgramsController.getProgramLearners Backed by controller adminProgramsController.getProgramLearners.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program coaches

Retrieves program coaches. From routes/admin/programs.js — calls adminProgramsController.getProgramCoaches Backed by controller adminProgramsController.getProgramCoaches.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program facilitators

Retrieves program facilitators. From routes/admin/programs.js — calls adminProgramsController.getProgramFacilitators Backed by controller adminProgramsController.getProgramFacilitators.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program tool list

Retrieves program tool list. From routes/admin/programs.js — calls adminProgramsController.getProgramToolList Backed by controller adminProgramsController.getProgramToolList.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Publish program workflow

Submits publish program workflow. From routes/admin/programs.js — calls adminProgramsController.publishProgramWorkflow Backed by controller adminProgramsController.publishProgramWorkflow.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

workflowId
number

Workflow id (identifier)

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "workflowId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program-wise sessions

Retrieves program-wise sessions. From routes/admin/programs.js — calls adminProgramsController.getProgramWiseSessions Backed by controller adminProgramsController.getProgramWiseSessions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get engagement-wise sessions

Retrieves engagement-wise sessions. From routes/admin/programs.js — calls adminProgramsController.getEngagementWiseSessions Backed by controller adminProgramsController.getEngagementWiseSessions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

engagementId
number

Engagement ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "engagementId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get MIS report

Retrieves mIS report. From routes/admin/programs.js — calls adminProgramsController.getMISReport Backed by controller adminProgramsController.getMISReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

reportType
string

Report type field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "reportType": "sample report type"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Admin - Sessions

Admin - Sessions operations

Invite session users

Invites a user to session users. From routes/admin/session.js — calls coachSessionController.inviteSessionUsers Backed by controller coachSessionController.inviteSessionUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

invitedUsers
Array of objects

Invited users field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "invitedUsers": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get all sessions

Retrieves all sessions. From routes/admin/session.js — calls adminSessionController.getAllSessions Backed by controller adminSessionController.getAllSessions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

View session details

Submits view session details. From routes/admin/session.js — calls adminSessionController.getSessionDetails Backed by controller adminSessionController.getSessionDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

componentType
string

Component type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "componentType": "sample component type"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get program-wise engagement list

Retrieves program-wise engagement list. From routes/admin/session.js — calls adminSessionController.getProgramWiseEngagementList Backed by controller adminSessionController.getProgramWiseEngagementList.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Add new session (group / meeting / 1-on-1 router by componentType)

Submits add new session (group / meeting / 1-on-1 router by componentType). From routes/admin/session.js — branches to adminSessionController.addNewGroupSession (Group/Workshop), addNewMeeting (Meeting/Onboarding), or addNewSession (default 1-on-1)

Authorizations:
bearerAuth
Request Body schema: application/json
required
componentType
string

Component type field

sessionType
string

Session type field

sessionName
string

Session name field

sessionDesc
string

Session desc field

timezone
string

Timezone field

startDateTime
string <date-time>

Start date time field

endDateTime
string <date-time>

End date time field

duration
number

Duration field

sessionMode
number

Session mode field

vcToolType
string

Vc tool type field

vcToolLink
string

Vc tool link field

location
string

Location field

comment
string

Comment field

coachId
number

Coach's user ID

learnerId
number

Learner's user ID

learners
Array of objects

Learners field

engagementId
number

Engagement ID

programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "componentType": "sample component type",
  • "sessionType": "sample session type",
  • "sessionName": "sample session name",
  • "sessionDesc": "sample session desc",
  • "timezone": "sample timezone",
  • "startDateTime": "2026-05-13T09:00:00.000Z",
  • "endDateTime": "2026-05-13T09:00:00.000Z",
  • "duration": 1,
  • "sessionMode": 1,
  • "vcToolType": "sample vc tool type",
  • "vcToolLink": "sample vc tool link",
  • "location": "sample location",
  • "comment": "sample comment",
  • "coachId": 12345,
  • "learnerId": 12345,
  • "learners": [ ],
  • "engagementId": 12345,
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Update session (group / meeting / 1-on-1 router by componentType)

Submits update session (group / meeting / 1-on-1 router by componentType). From routes/admin/session.js — branches to adminSessionController.updateGroupSession, updateMeetingSession, or updateSession by componentType

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

componentType
string

Component type field

sessionType
string

Session type field

userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

sessionName
string

Session name field

startDateTime
string <date-time>

Start date time field

endDateTime
string <date-time>

End date time field

timezone
string

Timezone field

sessionMode
number

Session mode field

vcToolType
string

Vc tool type field

vcToolLink
string

Vc tool link field

location
string

Location field

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "componentType": "sample component type",
  • "sessionType": "sample session type",
  • "userRole": "coach",
  • "sessionName": "sample session name",
  • "startDateTime": "2026-05-13T09:00:00.000Z",
  • "endDateTime": "2026-05-13T09:00:00.000Z",
  • "timezone": "sample timezone",
  • "sessionMode": 1,
  • "vcToolType": "sample vc tool type",
  • "vcToolLink": "sample vc tool link",
  • "location": "sample location",
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Cancel session (group / meeting / 1-on-1 router by componentType)

Submits cancel session (group / meeting / 1-on-1 router by componentType). From routes/admin/session.js — branches to adminSessionController.cancelGroupSession, cancelMeetingSession, or coachSessionController.cancelSession

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

componentType
string

Component type field

sessionType
string

Session type field

userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

comment
string

Comment field

userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "componentType": "sample component type",
  • "sessionType": "sample session type",
  • "userRole": "coach",
  • "comment": "sample comment",
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Manager accept group session request (legacy — no admin UI hook)

Submits manager accept group session request (legacy — no admin UI hook). From routes/admin/session.js — calls adminSessionController.managerAcceptGroupSessionRequest. Per project memory, no admin-accepts-session UI flow exists; controller is dead legacy. Backed by controller adminSessionController.managerAcceptGroupSessionRequest..

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Mark session as completed (Admin role)

Submits mark session as completed (Admin role). From routes/admin/session.js — calls adminSessionController.markSessionCompleted (userRole forced to "Admin") Backed by controller adminSessionController.markSessionCompleted.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get connected learners

Retrieves connected learners. From routes/admin/session.js — calls adminSessionController.connectedLearners Backed by controller adminSessionController.connectedLearners.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected coaches

Retrieves connected coaches. From routes/admin/session.js — calls adminSessionController.connectedCoaches Backed by controller adminSessionController.connectedCoaches.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Admin - Users

Admin - Users operations

Get invite link

Retrieves invite link. From routes/admin/user_management.js — calls userManagementController.getInviteLink Backed by controller userManagementController.getInviteLink.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add member

Creates member. From routes/admin/user_management.js — calls userManagementController.addMember Backed by controller userManagementController.addMember.

Authorizations:
bearerAuth
Request Body schema: application/json
required
id
number

Generic identifier

name
string

Display name

email
string <email>

Email address

role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

programId
number

Program ID

corporateId
number

Corporate (account) ID

createdBy
number

Created by field

activationStatus
string

Activation status field

Responses

Request samples

Content type
application/json
{
  • "id": 12345,
  • "name": "John Doe",
  • "email": "user@example.com",
  • "role": "coach",
  • "programId": 12345,
  • "corporateId": 12345,
  • "createdBy": 1,
  • "activationStatus": "sample activation status"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Create user for invited member (public — no auth)

Creates user for invited member (public — no auth). From routes/admin/user_management.js — calls userManagementController.addInvitedMember. No verifyToken middleware. Backed by controller userManagementController.addInvitedMember..

Request Body schema: application/json
required
name
string

Display name

emailId
string <email>

Email address

role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

password
string

User password (plaintext at API boundary; hashed server-side)

isInvited
boolean

Is invited field

programId
number

Program ID

accountId
string <uuid>

Account id (identifier)

Responses

Request samples

Content type
application/json
{
  • "name": "John Doe",
  • "emailId": "user@example.com",
  • "role": "coach",
  • "password": "Pa$$w0rd123",
  • "isInvited": true,
  • "programId": 12345,
  • "accountId": "550e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Upload members

Uploads members. From routes/admin/user_management.js — calls userManagementController.uploadMember Backed by controller userManagementController.uploadMember.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Export members

Retrieves export members. From routes/admin/user_management.js — calls userManagementController.exportMembers Backed by controller userManagementController.exportMembers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Remove member

Removes member. From routes/admin/user_management.js — calls userManagementController.removeMember Backed by controller userManagementController.removeMember.

Authorizations:
bearerAuth
Request Body schema: application/json
required
emailId
string <email>

Email address

role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

Responses

Request samples

Content type
application/json
{
  • "emailId": "user@example.com",
  • "role": "coach"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get all members

Retrieves all members. From routes/admin/user_management.js — calls userManagementController.allMembers Backed by controller userManagementController.allMembers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Send reminder

Sends reminder. From routes/admin/user_management.js — calls userManagementController.sendReminder Backed by controller userManagementController.sendReminder.

Authorizations:
bearerAuth
Request Body schema: application/json
required
emailId
string <email>

Email address

Responses

Request samples

Content type
application/json
{
  • "emailId": "user@example.com"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Send bulk reminder

Sends bulk reminder. From routes/admin/user_management.js — calls userManagementController.sendBulkReminder Backed by controller userManagementController.sendBulkReminder.

Authorizations:
bearerAuth
Request Body schema: application/json
required
emailIds
Array of strings

Email ids field

Responses

Request samples

Content type
application/json
{
  • "emailIds": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Activate member

Submits activate member. From routes/admin/user_management.js — calls userManagementController.activateMember Backed by controller userManagementController.activateMember.

Authorizations:
bearerAuth
Request Body schema: application/json
required
role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

userId
number

Internal user ID (foreign key)

corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "role": "coach",
  • "userId": 12345,
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Deactivate member

Submits deactivate member. From routes/admin/user_management.js — calls userManagementController.deactivateMember Backed by controller userManagementController.deactivateMember.

Authorizations:
bearerAuth
Request Body schema: application/json
required
role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

userId
number

Internal user ID (foreign key)

corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "role": "coach",
  • "userId": 12345,
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Activate account

Submits activate account. From routes/admin/user_management.js — calls userManagementController.activateAccount Backed by controller userManagementController.activateAccount.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Deactivate account

Submits deactivate account. From routes/admin/user_management.js — calls userManagementController.deactivateAccount Backed by controller userManagementController.deactivateAccount.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Add new account

Creates new account. From routes/admin/user_management.js — calls userManagementController.addNewAccount Backed by controller userManagementController.addNewAccount.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

accountName
string

Account name field

adminName
string

Admin name field

adminEmail
string <email>

Admin email field

adminUserId
number

Admin user id (identifier)

adminAuthId
string <uuid>

Admin auth id (identifier)

adminActivationStatus
string

Admin activation status field

createdBy
number

Created by field

website
string

Website field

address
string

Address field

adminRole
string

Admin role field

licensePlan
string

License plan field

billingType
string

Billing type field

serviceTypes
Array of strings

Service types field

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345,
  • "accountName": "sample account name",
  • "adminName": "sample admin name",
  • "adminEmail": "user@example.com",
  • "adminUserId": 12345,
  • "adminAuthId": "550e8400-e29b-41d4-a716-446655440000",
  • "adminActivationStatus": "sample admin activation status",
  • "createdBy": 1,
  • "website": "sample website",
  • "address": "sample address",
  • "adminRole": "sample admin role",
  • "licensePlan": "sample license plan",
  • "billingType": "sample billing type",
  • "serviceTypes": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get accounts list

Retrieves accounts list. From routes/admin/user_management.js — calls userManagementController.getAccountsList Backed by controller userManagementController.getAccountsList.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update account info

Updates account info. From routes/admin/user_management.js — calls userManagementController.updateAccountInfo Backed by controller userManagementController.updateAccountInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

adminUserId
number

Admin user id (identifier)

accountName
string

Account name field

website
string

Website field

address
string

Address field

role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

licensePlan
string

License plan field

billingType
string

Billing type field

serviceTypes
Array of strings

Service types field

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345,
  • "adminUserId": 12345,
  • "accountName": "sample account name",
  • "website": "sample website",
  • "address": "sample address",
  • "role": "coach",
  • "licensePlan": "sample license plan",
  • "billingType": "sample billing type",
  • "serviceTypes": [ ]
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get account info

Retrieves account info. From routes/admin/user_management.js — calls userManagementController.getAccountInfo Backed by controller userManagementController.getAccountInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get all accounts info

Retrieves all accounts info. From routes/admin/user_management.js — calls userManagementController.getAllAccountsInfo Backed by controller userManagementController.getAllAccountsInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get account-wise members

Retrieves account-wise members. From routes/admin/user_management.js — calls userManagementController.getAccountWiseMembers Backed by controller userManagementController.getAccountWiseMembers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Get role-wise account members

Retrieves role-wise account members. From routes/admin/user_management.js — calls userManagementController.getRoleWiseAccountMembers Backed by controller userManagementController.getRoleWiseAccountMembers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateId
number

Corporate (account) ID

role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

Responses

Request samples

Content type
application/json
{
  • "corporateId": 12345,
  • "role": "coach"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Send appreciation

Sends appreciation. From routes/admin/user_management.js — calls userManagementController.sendAppreciation Backed by controller userManagementController.sendAppreciation.

Authorizations:
bearerAuth
Request Body schema: application/json
required
learnerList
string

Learner list field

Responses

Request samples

Content type
application/json
{
  • "learnerList": "sample learner list"
}

Response samples

Content type
application/json
{
  • "result": "FAILURE",
  • "message": "Server error",
  • "error": {
    }
}

Coach - Actions

Coach - Actions operations

Get actions for a user

Retrieves actions for a user. From routes/coach/actions.js - calls coachActionController.getUserActions with userRole=Coach Backed by controller coachActionController.getUserActions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a new action

Creates a new action. From routes/coach/actions.js - calls coachActionController.addAction with userRole=Coach, isShared=true Backed by controller coachActionController.addAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

actionId
number

Action ID

actionName
string

Action name field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

description
string

Description field

goalId
number

Goal ID

isShared
boolean

Is shared field

competencies
Array of objects

Competencies field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345,
  • "actionId": 12345,
  • "actionName": "sample action name",
  • "dueDate": "2026-05-13",
  • "progress": 50,
  • "description": "sample description",
  • "goalId": 12345,
  • "isShared": true,
  • "competencies": [ ],
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update an action

Updates an action. From routes/coach/actions.js - calls coachActionController.updateAction Backed by controller coachActionController.updateAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

actionName
string

Action name field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "actionName": "sample action name",
  • "dueDate": "2026-05-13",
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update competencies linked to an action

Updates competencies linked to an action. From routes/coach/actions.js - calls coachActionController.updateActionCompetencies Backed by controller coachActionController.updateActionCompetencies.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

competencies
Array of objects

Competencies field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "competencies": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a group action (for multiple coachees)

Creates a group action (for multiple coachees). From routes/coach/actions.js - calls coachActionController.addGroupAction Backed by controller coachActionController.addGroupAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionName
string

Action name field

dueDate
string <date>

Target completion date (ISO 8601)

description
string

Description field

engagementId
number

Engagement ID

sessionId
number

Session ID

coacheeIds
Array of objects

Coachee ids field

Responses

Request samples

Content type
application/json
{
  • "actionName": "sample action name",
  • "dueDate": "2026-05-13",
  • "description": "sample description",
  • "engagementId": 12345,
  • "sessionId": 12345,
  • "coacheeIds": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get details of an action

Retrieves details of an action. From routes/coach/actions.js - calls coachActionController.getActionDetails Backed by controller coachActionController.getActionDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete an action

Removes an action. From routes/coach/actions.js - calls coachActionController.DeleteAction Backed by controller coachActionController.DeleteAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a comment to an action

Creates a comment to an action. From routes/coach/actions.js - calls coachActionController.AddComment Backed by controller coachActionController.AddComment.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

sendToAll
boolean

Send to all field

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "sendToAll": true,
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark an action as completed

Submits mark an action as completed. From routes/coach/actions.js - calls coachActionController.MarkActionCompleted Backed by controller coachActionController.MarkActionCompleted.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create a subtask under an action

Creates a subtask under an action. From routes/coach/actions.js - calls coachActionController.CreateActionSubtask Backed by controller coachActionController.CreateActionSubtask.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

taskName
string

Task name field

taskDesc
string

Task desc field

actionTaskId
number

Action task id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "taskName": "sample task name",
  • "taskDesc": "sample task desc",
  • "actionTaskId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark a task as completed

Submits mark a task as completed. From routes/coach/actions.js - calls coachActionController.MarkTaskCompleted Backed by controller coachActionController.MarkTaskCompleted.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionTaskId
number

Action task id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionTaskId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a task

Removes a task. From routes/coach/actions.js - calls coachActionController.DeleteTask Backed by controller coachActionController.DeleteTask.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionTaskId
number

Action task id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionTaskId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Upload a resource file to an action

Uploads a resource file to an action. From routes/coach/actions.js - calls coachActionController.UploadResource Backed by controller coachActionController.UploadResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

resourceName
string

Resource name field

fileName
string

File name field

filePath
string

File path field

fileSize
number

File size field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "resourceName": "sample resource name",
  • "fileName": "sample file name",
  • "filePath": "sample file path",
  • "fileSize": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a resource from an action

Removes a resource from an action. From routes/coach/actions.js - calls coachActionController.DeleteResource Backed by controller coachActionController.DeleteResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
resourceId
number

Resource id (identifier)

Responses

Request samples

Content type
application/json
{
  • "resourceId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a hyperlink to an action

Creates a hyperlink to an action. From routes/coach/actions.js - calls coachActionController.UploadActionLink Backed by controller coachActionController.UploadActionLink.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

linkName
string

Link name field

actionLink
string

Action link field

actionLinkId
number

Action link id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "linkName": "sample link name",
  • "actionLink": "sample action link",
  • "actionLinkId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a link from an action

Removes a link from an action. From routes/coach/actions.js - calls coachActionController.DeleteActionLink Backed by controller coachActionController.DeleteActionLink.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionLinkId
number

Action link id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionLinkId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach group engagements info

Retrieves coach group engagements info. From routes/coach/actions.js - calls coachActionController.GetGroupEngagementsInfo Backed by controller coachActionController.GetGroupEngagementsInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a follower to an action (not yet used)

Creates a follower to an action (not yet used). From routes/coach/actions.js - calls coachActionController.AddFollowerToAction Backed by controller coachActionController.AddFollowerToAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

followerName
string

Follower name field

followerEmail
string <email>

Follower email field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "followerName": "sample follower name",
  • "followerEmail": "user@example.com"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a follower from an action (not yet used)

Removes a follower from an action (not yet used). From routes/coach/actions.js - calls coachActionController.DeleteFollowerFromAction Backed by controller coachActionController.DeleteFollowerFromAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

followerId
number

Follower id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "followerId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Inform coach about an action (not yet used)

Submits inform coach about an action (not yet used). From routes/coach/actions.js - calls coachActionController.UpdateCoachForAction Backed by controller coachActionController.UpdateCoachForAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Inform coachee about an action (not yet used)

Submits inform coachee about an action (not yet used). From routes/coach/actions.js - calls coachActionController.UpdateCoacheeForAction Backed by controller coachActionController.UpdateCoacheeForAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user engagement program info (not yet used)

Retrieves user engagement program info (not yet used). From routes/coach/actions.js - calls coachActionController.GetUserEngagementProgramInfo Backed by controller coachActionController.GetUserEngagementProgramInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get group engagement program info (not yet used)

Retrieves group engagement program info (not yet used). From routes/coach/actions.js - calls coachActionController.GetGroupEngagementProgramInfo Backed by controller coachActionController.GetGroupEngagementProgramInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a stakeholder (not yet used)

Creates a stakeholder (not yet used). From routes/coach/actions.js - calls coachActionController.AddStakeHolder Backed by controller coachActionController.AddStakeHolder.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userDetails
string

User details field

Responses

Request samples

Content type
application/json
{
  • "userDetails": "sample user details"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get stakeholder info (not yet used)

Retrieves stakeholder info (not yet used). From routes/coach/actions.js - calls coachActionController.GetStakeHolderInfo Backed by controller coachActionController.GetStakeHolderInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get group actions (not yet used)

Retrieves group actions (not yet used). From routes/coach/actions.js - calls coachActionController.GetGroupActions Backed by controller coachActionController.GetGroupActions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit feedback on an action

Submits feedback on an action. From routes/coach/actions.js - calls coachActionController.submitActionFeedback with userRole=Coach Backed by controller coachActionController.submitActionFeedback.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

rating
number

Rating field

objectivity
number

Objectivity field

efficiency
number

Efficiency field

quality
number

Quality field

accuracy
number

Accuracy field

feedback
string

Feedback field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "rating": 1,
  • "objectivity": 1,
  • "efficiency": 1,
  • "quality": 1,
  • "accuracy": 1,
  • "feedback": "sample feedback"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add or update a goal

Creates or update a goal. From routes/coach/actions.js - calls coachActionController.AddUpdateGoal with isShared=true Backed by controller coachActionController.AddUpdateGoal.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

goalId
number

Goal ID

programId
number

Program ID

description
string

Description field

comment
string

Comment field

isShared
boolean

Is shared field

goalName
string

Goal name field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "goalId": 12345,
  • "programId": 12345,
  • "description": "sample description",
  • "comment": "sample comment",
  • "isShared": true,
  • "goalName": "sample goal name",
  • "dueDate": "2026-05-13",
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update progress on a goal

Updates progress on a goal. From routes/coach/actions.js - calls coachActionController.UpdateGoalProgress Backed by controller coachActionController.UpdateGoalProgress.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345,
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a comment to a goal

Creates a comment to a goal. From routes/coach/actions.js - calls coachActionController.AddGoalComment with isShared=true Backed by controller coachActionController.AddGoalComment.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

comment
string

Comment field

isShared
boolean

Is shared field

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345,
  • "comment": "sample comment",
  • "isShared": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Connection

Coach - Connection operations

Get connected users (GET variant)

Retrieves connected users (GET variant). From routes/coach/connection.js - calls coachConnectionController.getConnectedUsers with userRole=Coach Backed by controller coachConnectionController.getConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users (POST variant)

Retrieves connected users (POST variant). From routes/coach/connection.js - calls coachConnectionController.getConnectedUsers with userRole=Coach Backed by controller coachConnectionController.getConnectedUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user details for a connection

Retrieves user details for a connection. From routes/coach/connection.js - calls coachConnectionController.getUserDetails with userRole=Coach Backed by controller coachConnectionController.getUserDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get upcoming sessions for a connected user

Retrieves upcoming sessions for a connected user. From routes/coach/connection.js - calls coachConnectionController.getUserUpcomingSessions with userRole=Coach Backed by controller coachConnectionController.getUserUpcomingSessions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get pending activities for a connected user

Retrieves pending activities for a connected user. From routes/coach/connection.js - calls coachConnectionController.getUserPendingActivities with userRole=Coach Backed by controller coachConnectionController.getUserPendingActivities.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all sessions for a connected user

Retrieves all sessions for a connected user. From routes/coach/connection.js - calls coachConnectionController.getUserSessions with userRole=Coach Backed by controller coachConnectionController.getUserSessions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all sessions for the coach

Retrieves all sessions for the coach. From routes/coach/connection.js - calls coachConnectionController.getAllSessions with userRole=Coach Backed by controller coachConnectionController.getAllSessions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get goals for a connected user

Retrieves goals for a connected user. From routes/coach/connection.js - calls coachConnectionController.getUserGoals with userRole=Coach Backed by controller coachConnectionController.getUserGoals.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get comments on a goal

Retrieves comments on a goal. From routes/coach/connection.js - calls coachConnectionController.getGoalComments Backed by controller coachConnectionController.getGoalComments.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Home

Coach - Home operations

Calculate coach profile completeness percentage

Retrieves calculate coach profile completeness percentage. From routes/coach/home.js - calls coachHomeController.getProfileCompletePercentage Backed by controller coachHomeController.getProfileCompletePercentage.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users (GET variant)

Retrieves connected users (GET variant). From routes/coach/home.js - calls coachHomeController.getConnectedUsers with userRole=Coach Backed by controller coachHomeController.getConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users (POST variant)

Retrieves connected users (POST variant). From routes/coach/home.js - calls coachHomeController.getConnectedUsers with userRole=Coach Backed by controller coachHomeController.getConnectedUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get details of a single connected user

Retrieves details of a single connected user. From routes/coach/home.js - calls coachHomeController.getUserDetails with userRole=Coach Backed by controller coachHomeController.getUserDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get upcoming sessions for coach

Retrieves upcoming sessions for coach. From routes/coach/home.js - calls coachHomeController.getUpcomingSessions with userRole=Coach Backed by controller coachHomeController.getUpcomingSessions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get pending activities for coach

Retrieves pending activities for coach. From routes/coach/home.js - calls coachHomeController.getPendingActivities with userRole=Coach Backed by controller coachHomeController.getPendingActivities.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach engagements (programs)

Retrieves coach engagements (programs). From routes/coach/home.js - calls coachHomeController.getUserEngagements Backed by controller coachHomeController.getUserEngagements.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user calendar availabilities (new)

Retrieves user calendar availabilities (new). From routes/coach/home.js - calls coachHomeController.getUsersAvailabilitiesNew Backed by controller coachHomeController.getUsersAvailabilitiesNew.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user goals (called from home/dashboard)

Retrieves user goals (called from home/dashboard). From routes/coach/home.js - calls coachHomeController.getUserGoals with userRole=Coach Backed by controller coachHomeController.getUserGoals.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Check whether session feedback was given

Checks whether session feedback was given. From routes/coach/home.js - calls coachHomeController.isSessionFeedbackGiven with userRole=Coach Backed by controller coachHomeController.isSessionFeedbackGiven.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Should platform feedback dialog be shown

Retrieves should platform feedback dialog be shown. From routes/coach/home.js - calls coachHomeController.showPlatformFeedback Backed by controller coachHomeController.showPlatformFeedback.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit platform feedback (NPS / rating)

Submits platform feedback (NPS / rating). From routes/coach/home.js - calls coachHomeController.submitPlatformFeedback Backed by controller coachHomeController.submitPlatformFeedback.

Authorizations:
bearerAuth
Request Body schema: application/json
required
rating
boolean

Rating field

feedback
string

Feedback field

easeOfUsage
boolean

Ease of usage field

usefullness
boolean

Usefullness field

goalAchievement
boolean

Goal achievement field

progress
boolean

Progress percentage (0-100)

valueOfTime
boolean

Value of time field

valueOfService
boolean

Value of service field

Responses

Request samples

Content type
application/json
{
  • "rating": true,
  • "feedback": "sample feedback",
  • "easeOfUsage": true,
  • "usefullness": true,
  • "goalAchievement": true,
  • "progress": true,
  • "valueOfTime": true,
  • "valueOfService": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

View a coaching tool report from coach home

Submits view a coaching tool report from coach home. From routes/coach/home.js - calls coachHomeController.viewReport Backed by controller coachHomeController.viewReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Insights

Coach - Insights operations

Get insights filter options

Retrieves insights filter options. From routes/coach/insights.js - calls coachInsightsController.getFilterData (aggregates programs, corporates, connected users) Backed by controller coachInsightsController.getFilterData.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get list of programs the coach is part of

Retrieves list of programs the coach is part of. From routes/coach/insights.js - calls coachInsightsController.getUserPrograms Backed by controller coachInsightsController.getUserPrograms.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get list of corporates the coach is part of

Retrieves list of corporates the coach is part of. From routes/coach/insights.js - calls coachInsightsController.getUserCoprorateInfo Backed by controller coachInsightsController.getUserCoprorateInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users for insights filter

Retrieves connected users for insights filter. From routes/coach/insights.js - calls coachInsightsController.getConnectedUsers Backed by controller coachInsightsController.getConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach insights statistics

Retrieves coach insights statistics. From routes/coach/insights.js - calls coachInsightsController.getCoachInsightStatistics Backed by controller coachInsightsController.getCoachInsightStatistics.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

programId
number

Program ID

corporateId
number

Corporate (account) ID

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "programId": 12345,
  • "corporateId": 12345,
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get insights data (same handler as coach_insights)

Retrieves insights data (same handler as coach_insights). From routes/coach/insights.js - calls coachInsightsController.getCoachInsightStatistics Backed by controller coachInsightsController.getCoachInsightStatistics.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

programId
number

Program ID

corporateId
number

Corporate (account) ID

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "programId": 12345,
  • "corporateId": 12345,
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Internal Services

Coach - Internal Services operations

Fetch facilitation service basic details

Retrieves facilitation service basic details. From routes/coach/settings/internalCoachServices.js - calls getFacilitationBasicDetails Backed by controller getFacilitationBasicDetails.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create or update facilitation service basic details

Creates or update facilitation service basic details. From routes/coach/settings/internalCoachServices.js - calls updateFacilitationBasicDetails. Zod validated. Backed by controller updateFacilitationBasicDetails..

Authorizations:
bearerAuth
Request Body schema: application/json
required
totalYearsExperience
number

Total years experience field

highestLearnerLevel
number

Highest learner level field

totalProgramsFacilitated
number

Total programs facilitated field

Responses

Request samples

Content type
application/json
{
  • "totalYearsExperience": 1,
  • "highestLearnerLevel": 1,
  • "totalProgramsFacilitated": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Fetch all certifications

Retrieves all certifications. From routes/coach/settings/internalCoachServices.js - calls getCertifications Backed by controller getCertifications.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create a new certification (multipart with optional file)

Creates a new certification (multipart with optional file). From routes/coach/settings/internalCoachServices.js - calls createCertification. Uses multer multipart upload to S3, Zod validated. Backed by controller createCertification..

Authorizations:
bearerAuth
Request Body schema: multipart/form-data
required
name
string

Display name

organization
string

Organization field

validFrom
string <date>

Valid from field

validTo
string <date>

Valid to field

folder
string

Folder field

file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a certification (multipart with optional file)

Updates a certification (multipart with optional file). From routes/coach/settings/internalCoachServices.js - calls updateCertification. Path param id (positive int). Backed by controller updateCertification..

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: multipart/form-data
required
name
string

Display name

organization
string

Organization field

validFrom
string <date>

Valid from field

validTo
string <date>

Valid to field

folder
string

Folder field

file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a certification

Removes a certification. From routes/coach/settings/internalCoachServices.js - calls deleteCertification Backed by controller deleteCertification.

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Copy / duplicate a certification

Submits copy / duplicate a certification. From routes/coach/settings/internalCoachServices.js - calls copyCertification Backed by controller copyCertification.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Fetch all memberships

Retrieves all memberships. From routes/coach/settings/internalCoachServices.js - calls getMemberships Backed by controller getMemberships.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create a new membership (multipart with optional file)

Creates a new membership (multipart with optional file). From routes/coach/settings/internalCoachServices.js - calls createMembership. Multer + Zod. Backed by controller createMembership..

Authorizations:
bearerAuth
Request Body schema: multipart/form-data
required
membershipBody
string

Membership body field

membershipName
string

Membership name field

validFrom
string <date>

Valid from field

validTo
string <date>

Valid to field

folder
string

Folder field

file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a membership (multipart with optional file)

Updates a membership (multipart with optional file). From routes/coach/settings/internalCoachServices.js - calls updateMembership Backed by controller updateMembership.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: multipart/form-data
required
membershipBody
string

Membership body field

membershipName
string

Membership name field

validFrom
string <date>

Valid from field

validTo
string <date>

Valid to field

folder
string

Folder field

file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a membership

Removes a membership. From routes/coach/settings/internalCoachServices.js - calls deleteMembership Backed by controller deleteMembership.

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Copy / duplicate a membership

Submits copy / duplicate a membership. From routes/coach/settings/internalCoachServices.js - calls copyMembership Backed by controller copyMembership.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Fetch all signature programs

Retrieves all signature programs. From routes/coach/settings/internalCoachServices.js - calls getSignaturePrograms Backed by controller getSignaturePrograms.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create a new signature program

Creates a new signature program. From routes/coach/settings/internalCoachServices.js - calls createSignatureProgram. Zod validated. Backed by controller createSignatureProgram..

Authorizations:
bearerAuth
Request Body schema: application/json
required
programName
string

Program name

organization
string

Organization field

audienceLevel
number

Audience level field

focusArea
string

Focus area field

behavioralSkills
Array of strings

Behavioral skills field

functionalSkills
Array of strings

Functional skills field

technicalSkills
Array of strings

Technical skills field

Responses

Request samples

Content type
application/json
{
  • "programName": "Q3 Leadership Cohort",
  • "organization": "sample organization",
  • "audienceLevel": 1,
  • "focusArea": "sample focus area",
  • "behavioralSkills": [ ],
  • "functionalSkills": [ ],
  • "technicalSkills": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a signature program

Updates a signature program. From routes/coach/settings/internalCoachServices.js - calls updateSignatureProgram Backed by controller updateSignatureProgram.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
programName
string

Program name

organization
string

Organization field

audienceLevel
number

Audience level field

focusArea
string

Focus area field

behavioralSkills
Array of strings

Behavioral skills field

functionalSkills
Array of strings

Functional skills field

technicalSkills
Array of strings

Technical skills field

Responses

Request samples

Content type
application/json
{
  • "programName": "Q3 Leadership Cohort",
  • "organization": "sample organization",
  • "audienceLevel": 1,
  • "focusArea": "sample focus area",
  • "behavioralSkills": [ ],
  • "functionalSkills": [ ],
  • "technicalSkills": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a signature program

Removes a signature program. From routes/coach/settings/internalCoachServices.js - calls deleteSignatureProgram Backed by controller deleteSignatureProgram.

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Copy / duplicate a signature program

Submits copy / duplicate a signature program. From routes/coach/settings/internalCoachServices.js - calls copySignatureProgram Backed by controller copySignatureProgram.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Notes

Coach - Notes operations

Get engagement notes for a user

Retrieves engagement notes for a user. From routes/coach/notes.js - calls coachNoteController.GetEngagementNotes Backed by controller coachNoteController.GetEngagementNotes.

Authorizations:
bearerAuth
Request Body schema: application/json
required
engagementId
number

Engagement ID

engagementType
string

Engagement type field

Responses

Request samples

Content type
application/json
{
  • "engagementId": 12345,
  • "engagementType": "sample engagement type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get notes attached to a session

Retrieves notes attached to a session. From routes/coach/notes.js - calls coachNoteController.GetSessionNotes Backed by controller coachNoteController.GetSessionNotes.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a note

Creates a note. From routes/coach/notes.js - calls coachNoteController.AddUpdateNote Backed by controller coachNoteController.AddUpdateNote.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

noteType
string

Note type field

noteTitle
string

Note title field

textNote
string

Text note field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345,
  • "noteType": "sample note type",
  • "noteTitle": "sample note title",
  • "textNote": "sample text note",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a note (same handler as add_note)

Updates a note (same handler as add_note). From routes/coach/notes.js - calls coachNoteController.AddUpdateNote Backed by controller coachNoteController.AddUpdateNote.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

noteType
string

Note type field

noteTitle
string

Note title field

textNote
string

Text note field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345,
  • "noteType": "sample note type",
  • "noteTitle": "sample note title",
  • "textNote": "sample text note",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update note summary text

Updates note summary text. From routes/coach/notes.js - calls coachNoteController.updateNoteSummary Backed by controller coachNoteController.updateNoteSummary.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

noteSummary
string

Note summary field

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345,
  • "noteSummary": "sample note summary"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a note

Removes a note. From routes/coach/notes.js - calls coachNoteController.DeleteNote Backed by controller coachNoteController.DeleteNote.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Upload a voice note resource (resourceType=VOICE)

Uploads a voice note resource (resourceType=VOICE). From routes/coach/notes.js - calls coachNoteController.UploadNoteResource with resourceType=VOICE Backed by controller coachNoteController.UploadNoteResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
resourceTitle
string

Resource title field

fileName
string

File name field

filePath
string

File path field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "resourceTitle": "sample resource title",
  • "fileName": "sample file name",
  • "filePath": "sample file path",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Upload a file resource (resourceType=FILE)

Uploads a file resource (resourceType=FILE). From routes/coach/notes.js - calls coachNoteController.UploadNoteResource with resourceType=FILE Backed by controller coachNoteController.UploadNoteResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
resourceTitle
string

Resource title field

fileName
string

File name field

filePath
string

File path field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "resourceTitle": "sample resource title",
  • "fileName": "sample file name",
  • "filePath": "sample file path",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Profile

Coach - Profile operations

Update profile image

Updates profile image. From routes/coach/profile.js — calls coachProfileController.updateProfileImage Backed by controller coachProfileController.updateProfileImage.

Authorizations:
bearerAuth
Request Body schema: application/json
required
profileImage
string

Profile image field

Responses

Request samples

Content type
application/json
{
  • "profileImage": "sample profile image"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update profile banner

Updates profile banner. From routes/coach/profile.js — calls coachProfileController.updateProfileBanner Backed by controller coachProfileController.updateProfileBanner.

Authorizations:
bearerAuth
Request Body schema: application/json
required
bannerImage
string

Banner image field

Responses

Request samples

Content type
application/json
{
  • "bannerImage": "sample banner image"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get education info

Retrieves education info. From routes/coach/profile.js — calls coachProfileController.educationInfo Backed by controller coachProfileController.educationInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add education info

Creates education info. From routes/coach/profile.js — calls coachProfileController.addEducationInfo Backed by controller coachProfileController.addEducationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
educationInfo
Array of objects

Education info field

Responses

Request samples

Content type
application/json
{
  • "educationInfo": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove education info

Removes education info. From routes/coach/profile.js — calls coachProfileController.removeEducationInfo Backed by controller coachProfileController.removeEducationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
studyField
string

Study field field

qualification
string

Qualification field

university
string

University field

Responses

Request samples

Content type
application/json
{
  • "studyField": "sample study field",
  • "qualification": "sample qualification",
  • "university": "sample university"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get corporate experience info

Retrieves corporate experience info. From routes/coach/profile.js — calls coachProfileController.getUserCorporateInfo Backed by controller coachProfileController.getUserCorporateInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update corporate experience info

Updates corporate experience info. From routes/coach/profile.js — calls coachProfileController.updateUserCorporateInfo Backed by controller coachProfileController.updateUserCorporateInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateExp
number

Corporate exp field

corporateExpYear
number

Corporate exp year field

corporateExpMonth
number

Corporate exp month field

industries
Array of objects

Industries field

functions
Array of objects

Functions field

currentRole
number

Current role field

designation
string

Designation field

organizationsWorked
Array of objects

Organizations worked field

Responses

Request samples

Content type
application/json
{
  • "corporateExp": 1,
  • "corporateExpYear": 1,
  • "corporateExpMonth": 1,
  • "industries": [ ],
  • "functions": [ ],
  • "currentRole": 1,
  • "designation": "sample designation",
  • "organizationsWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add organization info

Creates organization info. From routes/coach/profile.js — calls coachProfileController.addOrganizationInfo Backed by controller coachProfileController.addOrganizationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
organizationsWorked
Array of objects

Organizations worked field

Responses

Request samples

Content type
application/json
{
  • "organizationsWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove organization info

Removes organization info. From routes/coach/profile.js — calls coachProfileController.removeOrganizationInfo Backed by controller coachProfileController.removeOrganizationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
organizationName
string

Organization name field

Responses

Request samples

Content type
application/json
{
  • "organizationName": "sample organization name"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach bio

Retrieves coach bio. From routes/coach/profile.js — calls coachProfileController.getUserBio Backed by controller coachProfileController.getUserBio.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coach bio

Updates coach bio. From routes/coach/profile.js — calls coachProfileController.updateUserBio Backed by controller coachProfileController.updateUserBio.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coaching service data

Retrieves coaching service data. From routes/coach/profile.js — calls coachProfileController.coachingService Backed by controller coachProfileController.coachingService.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coaching service - section 1 (certifications)

Updates coaching service - section 1 (certifications). From routes/coach/profile.js — calls coachProfileController.updateCoachingServiceSec1 Backed by controller coachProfileController.updateCoachingServiceSec1.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachingCertificationEnabled
boolean

Coaching certification enabled field

coachingCredentialEnabled
boolean

Coaching credential enabled field

certifications
Array of objects

Certifications field

credentials
Array of objects

Credentials field

Responses

Request samples

Content type
application/json
{
  • "coachingCertificationEnabled": true,
  • "coachingCredentialEnabled": true,
  • "certifications": [ ],
  • "credentials": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coaching service - section 2 (experience)

Updates coaching service - section 2 (experience). From routes/coach/profile.js — calls coachProfileController.updateCoachingServiceSec2 Backed by controller coachProfileController.updateCoachingServiceSec2.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachingExperience
number

Coaching experience field

coachingHours
number

Coaching hours field

clientsCoached
number

Clients coached field

clientsCoachedLevel
number

Clients coached level field

coachingSkills
Array of objects

Coaching skills field

isGroupCoachingExperienced
boolean

Is group coaching experienced field

isSupervisionExperienced
boolean

Is supervision experienced field

clientCoached
Array of objects

Client coached field

Responses

Request samples

Content type
application/json
{
  • "coachingExperience": 1,
  • "coachingHours": 1,
  • "clientsCoached": 1,
  • "clientsCoachedLevel": 1,
  • "coachingSkills": [ ],
  • "isGroupCoachingExperienced": true,
  • "isSupervisionExperienced": true,
  • "clientCoached": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coaching service - section 3 (delivery mode)

Updates coaching service - section 3 (delivery mode). From routes/coach/profile.js — calls coachProfileController.updateCoachingServiceSec3 Backed by controller coachProfileController.updateCoachingServiceSec3.

Authorizations:
bearerAuth
Request Body schema: application/json
required
deliveryMode
number

Delivery mode field

openToInPersonSession
boolean

Open to in person session field

openToTravelSameCity
boolean

Open to travel same city field

openToTravelOtherCity
boolean

Open to travel other city field

openToTravelOverseas
boolean

Open to travel overseas field

Responses

Request samples

Content type
application/json
{
  • "deliveryMode": 1,
  • "openToInPersonSession": true,
  • "openToTravelSameCity": true,
  • "openToTravelOtherCity": true,
  • "openToTravelOverseas": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add coaching fee

Creates coaching fee. From routes/coach/profile.js — calls coachProfileController.updateCoachingFeeInfo with actionType=Add Backed by controller coachProfileController.updateCoachingFeeInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionType
string

Session type field

coachingFeeInfo
object

Coaching fee info field

Responses

Request samples

Content type
application/json
{
  • "sessionType": "sample session type",
  • "coachingFeeInfo": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove coaching fee

Removes coaching fee. From routes/coach/profile.js — calls coachProfileController.updateCoachingFeeInfo with actionType=Remove Backed by controller coachProfileController.updateCoachingFeeInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionType
string

Session type field

coachingFeeInfo
object

Coaching fee info field

Responses

Request samples

Content type
application/json
{
  • "sessionType": "sample session type",
  • "coachingFeeInfo": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get facilitation service data

Retrieves facilitation service data. From routes/coach/profile.js — calls coachProfileController.facilitationService Backed by controller coachProfileController.facilitationService.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update facilitation service - section 1 (certifications)

Updates facilitation service - section 1 (certifications). From routes/coach/profile.js — calls coachProfileController.updateFacilitationServiceSec1 Backed by controller coachProfileController.updateFacilitationServiceSec1.

Authorizations:
bearerAuth
Request Body schema: application/json
required
facilitationCertificationEnabled
boolean

Facilitation certification enabled field

facilitationCredentialEnabled
boolean

Facilitation credential enabled field

certifications
Array of objects

Certifications field

credentials
Array of objects

Credentials field

Responses

Request samples

Content type
application/json
{
  • "facilitationCertificationEnabled": true,
  • "facilitationCredentialEnabled": true,
  • "certifications": [ ],
  • "credentials": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update facilitation service - section 2 (experience)

Updates facilitation service - section 2 (experience). From routes/coach/profile.js — calls coachProfileController.updateFacilitationServiceSec2 Backed by controller coachProfileController.updateFacilitationServiceSec2.

Authorizations:
bearerAuth
Request Body schema: application/json
required
facilitationExperience
number

Facilitation experience field

highestClientLevel
number

Highest client level field

facilitationProgramCount
number

Facilitation program count field

isContentCreator
boolean

Is content creator field

facilitationWorkEnabled
boolean

Facilitation work enabled field

facilitationWork
Array of objects

Facilitation work field

clientFacilitated
Array of objects

Client facilitated field

Responses

Request samples

Content type
application/json
{
  • "facilitationExperience": 1,
  • "highestClientLevel": 1,
  • "facilitationProgramCount": 1,
  • "isContentCreator": true,
  • "facilitationWorkEnabled": true,
  • "facilitationWork": [ ],
  • "clientFacilitated": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update facilitation service - section 3 (delivery mode)

Updates facilitation service - section 3 (delivery mode). From routes/coach/profile.js — calls coachProfileController.updateFacilitationServiceSec3 Backed by controller coachProfileController.updateFacilitationServiceSec3.

Authorizations:
bearerAuth
Request Body schema: application/json
required
deliveryMode
Array of objects

Delivery mode field

openToTravelOtherCity
boolean

Open to travel other city field

openToTravelOverseas
boolean

Open to travel overseas field

Responses

Request samples

Content type
application/json
{
  • "deliveryMode": [ ],
  • "openToTravelOtherCity": true,
  • "openToTravelOverseas": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add facilitation fee

Creates facilitation fee. From routes/coach/profile.js — calls coachProfileController.updateFacilitationFeeInfo with actionType=Add Backed by controller coachProfileController.updateFacilitationFeeInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
facilitationFeeInfo
object

Facilitation fee info field

facilitationDayType
string

Facilitation day type field

facilitationModeType
string

Facilitation mode type field

Responses

Request samples

Content type
application/json
{
  • "facilitationFeeInfo": { },
  • "facilitationDayType": "sample facilitation day type",
  • "facilitationModeType": "sample facilitation mode type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove facilitation fee

Removes facilitation fee. From routes/coach/profile.js — calls coachProfileController.updateFacilitationFeeInfo with actionType=Remove Backed by controller coachProfileController.updateFacilitationFeeInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
facilitationFeeInfo
object

Facilitation fee info field

facilitationDayType
string

Facilitation day type field

facilitationModeType
string

Facilitation mode type field

Responses

Request samples

Content type
application/json
{
  • "facilitationFeeInfo": { },
  • "facilitationDayType": "sample facilitation day type",
  • "facilitationModeType": "sample facilitation mode type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get assessment service data

Retrieves assessment service data. From routes/coach/profile.js — calls coachProfileController.assessmentService Backed by controller coachProfileController.assessmentService.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update assessment service - section 1 (certifications)

Updates assessment service - section 1 (certifications). From routes/coach/profile.js — calls coachProfileController.updateAssessmentServiceSec1 Backed by controller coachProfileController.updateAssessmentServiceSec1.

Authorizations:
bearerAuth
Request Body schema: application/json
required
assessmentCertificationEnabled
boolean

Assessment certification enabled field

certifications
Array of objects

Certifications field

Responses

Request samples

Content type
application/json
{
  • "assessmentCertificationEnabled": true,
  • "certifications": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update assessment service - section 2 (experience)

Updates assessment service - section 2 (experience). From routes/coach/profile.js — calls coachProfileController.updateAssessmentServiceSec2 Backed by controller coachProfileController.updateAssessmentServiceSec2.

Authorizations:
bearerAuth
Request Body schema: application/json
required
assessmentExperience
number

Assessment experience field

assessmentProgramCount
number

Assessment program count field

isCertifiedAccessor
boolean

Is certified accessor field

isDesigningAssessmentTool
boolean

Is designing assessment tool field

assessmentProgramEnabled
boolean

Assessment program enabled field

assessmentProgram
Array of objects

Assessment program field

Responses

Request samples

Content type
application/json
{
  • "assessmentExperience": 1,
  • "assessmentProgramCount": 1,
  • "isCertifiedAccessor": true,
  • "isDesigningAssessmentTool": true,
  • "assessmentProgramEnabled": true,
  • "assessmentProgram": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update assessment service - section 3 (delivery mode)

Updates assessment service - section 3 (delivery mode). From routes/coach/profile.js — calls coachProfileController.updateAssessmentServiceSec3 Backed by controller coachProfileController.updateAssessmentServiceSec3.

Authorizations:
bearerAuth
Request Body schema: application/json
required
deliveryMode
Array of objects

Delivery mode field

openToTravelOtherCity
boolean

Open to travel other city field

openToTravelOverseas
boolean

Open to travel overseas field

Responses

Request samples

Content type
application/json
{
  • "deliveryMode": [ ],
  • "openToTravelOtherCity": true,
  • "openToTravelOverseas": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add assessment fee

Creates assessment fee. From routes/coach/profile.js — calls coachProfileController.updateAssessmentFeeInfo with actionType=Add Backed by controller coachProfileController.updateAssessmentFeeInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
assessmentFeeInfo
object

Assessment fee info field

assessmentType
string

Assessment type field

Responses

Request samples

Content type
application/json
{
  • "assessmentFeeInfo": { },
  • "assessmentType": "sample assessment type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove assessment fee

Removes assessment fee. From routes/coach/profile.js — calls coachProfileController.updateAssessmentFeeInfo with actionType=Remove Backed by controller coachProfileController.updateAssessmentFeeInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
assessmentFeeInfo
object

Assessment fee info field

assessmentType
string

Assessment type field

Responses

Request samples

Content type
application/json
{
  • "assessmentFeeInfo": { },
  • "assessmentType": "sample assessment type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get profile header (branding)

Retrieves profile header (branding). From routes/coach/profile.js — calls coachProfileController.brandingHeader Backed by controller coachProfileController.brandingHeader.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update profile header (branding)

Updates profile header (branding). From routes/coach/profile.js — calls coachProfileController.updateBrandingHeader Backed by controller coachProfileController.updateBrandingHeader.

Authorizations:
bearerAuth
Request Body schema: application/json
required
header
number

Header field

description
string

Description field

aboutMe
string

About me field

myBelief
string

My belief field

keyAchievements
string

Key achievements field

Responses

Request samples

Content type
application/json
{
  • "header": 1,
  • "description": "sample description",
  • "aboutMe": "sample about me",
  • "myBelief": "sample my belief",
  • "keyAchievements": "sample key achievements"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach 'my belief' branding text

Retrieves coach 'my belief' branding text. From routes/coach/profile.js — calls coachProfileController.brandingMybelief Backed by controller coachProfileController.brandingMybelief.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coach 'my belief' branding text

Updates coach 'my belief' branding text. From routes/coach/profile.js — calls coachProfileController.updateBrandingMybelief Backed by controller coachProfileController.updateBrandingMybelief.

Authorizations:
bearerAuth
Request Body schema: application/json
required
myBelief
string

My belief field

Responses

Request samples

Content type
application/json
{
  • "myBelief": "sample my belief"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get social info links

Retrieves social info links. From routes/coach/profile.js — calls coachProfileController.brandingSocial Backed by controller coachProfileController.brandingSocial.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update social info links

Updates social info links. From routes/coach/profile.js — calls coachProfileController.updateBrandingSocial Backed by controller coachProfileController.updateBrandingSocial.

Authorizations:
bearerAuth
Request Body schema: application/json
required
socialData
Array of objects

Social data field

Responses

Request samples

Content type
application/json
{
  • "socialData": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove a social info link

Removes a social info link. From routes/coach/profile.js — calls coachProfileController.removeSocialInfo Backed by controller coachProfileController.removeSocialInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
socialKey
string

Social key field

Responses

Request samples

Content type
application/json
{
  • "socialKey": "sample social key"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach global exposure countries

Retrieves coach global exposure countries. From routes/coach/profile.js — calls coachProfileController.globalExposure Backed by controller coachProfileController.globalExposure.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coach global exposure countries

Updates coach global exposure countries. From routes/coach/profile.js — calls coachProfileController.updateGlobalExposure Backed by controller coachProfileController.updateGlobalExposure.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachingCountries
Array of objects

Coaching countries field

corporateExpCountries
Array of objects

Corporate exp countries field

Responses

Request samples

Content type
application/json
{
  • "coachingCountries": [ ],
  • "corporateExpCountries": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get profile completion progress info

Retrieves profile completion progress info. From routes/coach/profile.js — calls coachProfileController.getProfileProgressInfo Backed by controller coachProfileController.getProfileProgressInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach's own public profile (internal view, authenticated)

Retrieves coach's own public profile (internal view, authenticated). From routes/coach/profile.js — calls coachProfileController.getPublicProfileData Backed by controller coachProfileController.getPublicProfileData.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach public profile as learner sees (no auth required)

Retrieves coach public profile as learner sees (no auth required). From routes/coach/profile.js — calls coachProfileController.getPublicProfileData (no verifyToken middleware) Backed by controller coachProfileController.getPublicProfileData.

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Fetch coach public profile without login

Retrieves coach public profile without login. From routes/coach/profile.js — calls coachProfileController.fetchPublicProfileData (no verifyToken middleware) Backed by controller coachProfileController.fetchPublicProfileData.

Request Body schema: application/json
required
coachId
number

Coach's user ID

authId
string <uuid>

External identity provider's user ID

Responses

Request samples

Content type
application/json
{
  • "coachId": 12345,
  • "authId": "550e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update profile summary

Updates profile summary. From routes/coach/profile.js — calls coachProfileController.updateSummary Backed by controller coachProfileController.updateSummary.

Authorizations:
bearerAuth
Request Body schema: application/json
required
profileSummary
string

Profile summary field

Responses

Request samples

Content type
application/json
{
  • "profileSummary": "sample profile summary"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update industries worked list

Updates industries worked list. From routes/coach/profile.js — calls coachProfileController.updateIndustries Backed by controller coachProfileController.updateIndustries.

Authorizations:
bearerAuth
Request Body schema: application/json
required
industriesWorked
Array of objects

Industries worked field

Responses

Request samples

Content type
application/json
{
  • "industriesWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update functions worked list

Updates functions worked list. From routes/coach/profile.js — calls coachProfileController.updateFunctions Backed by controller coachProfileController.updateFunctions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
functionsWorked
Array of objects

Functions worked field

Responses

Request samples

Content type
application/json
{
  • "functionsWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update certifications (deprecated)

Updates certifications (deprecated). From routes/coach/profile.js — calls coachProfileController.updateCertifications. Deprecated. Backed by controller coachProfileController.updateCertifications..

Authorizations:
bearerAuth
Request Body schema: application/json
required
credentials
Array of objects

Credentials field

Responses

Request samples

Content type
application/json
{
  • "credentials": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get internal coach - coaching service info

Retrieves internal coach - coaching service info. From routes/coach/profile.js — calls coachProfileController.getCoachingServiceInfo Backed by controller coachProfileController.getCoachingServiceInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update internal coach - coaching service info

Updates internal coach - coaching service info. From routes/coach/profile.js — calls coachProfileController.updateCoachingServiceInfo Backed by controller coachProfileController.updateCoachingServiceInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
enableCoaching
boolean

Enable coaching field

coachingSkills
Array of objects

Coaching skills field

certifications
Array of objects

Certifications field

Responses

Request samples

Content type
application/json
{
  • "enableCoaching": true,
  • "coachingSkills": [ ],
  • "certifications": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get internal coach - mentoring service info

Retrieves internal coach - mentoring service info. From routes/coach/profile.js — calls coachProfileController.getMentoringServiceInfo Backed by controller coachProfileController.getMentoringServiceInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update internal coach - mentoring service info

Updates internal coach - mentoring service info. From routes/coach/profile.js — calls coachProfileController.updateMentoringServiceInfo Backed by controller coachProfileController.updateMentoringServiceInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
enableMentoring
boolean

Enable mentoring field

mentoringSkills
Array of objects

Mentoring skills field

certifications
Array of objects

Certifications field

Responses

Request samples

Content type
application/json
{
  • "enableMentoring": true,
  • "mentoringSkills": [ ],
  • "certifications": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach's calendar connection status

Retrieves coach's calendar connection status. From routes/coach/profile.js — calls coachProfileController.getCalendarStatus with userRole=Coach Backed by controller coachProfileController.getCalendarStatus.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Session

Coach - Session operations

Create a new session

Creates a new session. From routes/coach/session.js - calls coachSessionController.createSession with userRole=Coach Backed by controller coachSessionController.createSession.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachId
number

Coach's user ID

userId
number

Internal user ID (foreign key)

engagementId
number

Engagement ID

programId
number

Program ID

sessionName
string

Session name field

sessionDesc
string

Session desc field

sessionType
string

Session type field

startDateTime
string <date-time>

Start date time field

endDateTime
string <date-time>

End date time field

duration
number

Duration field

timezone
string

Timezone field

sessionMode
number

Session mode field

vcToolType
string

Vc tool type field

vcToolLink
string

Vc tool link field

location
string

Location field

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "coachId": 12345,
  • "userId": 12345,
  • "engagementId": 12345,
  • "programId": 12345,
  • "sessionName": "sample session name",
  • "sessionDesc": "sample session desc",
  • "sessionType": "sample session type",
  • "startDateTime": "2026-05-13T09:00:00.000Z",
  • "endDateTime": "2026-05-13T09:00:00.000Z",
  • "duration": 1,
  • "timezone": "sample timezone",
  • "sessionMode": 1,
  • "vcToolType": "sample vc tool type",
  • "vcToolLink": "sample vc tool link",
  • "location": "sample location",
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update session name

Updates session name. From routes/coach/session.js - calls coachSessionController.updateSessionName with userRole=Coach Backed by controller coachSessionController.updateSessionName.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionName
string

Session name field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionName": "sample session name"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Reschedule a session (one-on-one or group/workshop)

Submits reschedule a session (one-on-one or group/workshop). From routes/coach/session.js - routes to coachSessionController.rescheduleSession or coachGroupSessionController.rescheduleGroupSession based on sessionType. No verifyToken middleware.

Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

startDateTime
string <date-time>

Start date time field

endDateTime
string <date-time>

End date time field

timezone
string

Timezone field

comment
string

Comment field

sessionName
string

Session name field

sessionMode
number

Session mode field

vcType
string

Vc type field

meetingUrl
string <uri>

Meeting url field

saveAsDefaultVcLink
boolean

Save as default vc link field

location
string

Location field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "startDateTime": "2026-05-13T09:00:00.000Z",
  • "endDateTime": "2026-05-13T09:00:00.000Z",
  • "timezone": "sample timezone",
  • "comment": "sample comment",
  • "sessionName": "sample session name",
  • "sessionMode": 1,
  • "vcType": "sample vc type",
  • "saveAsDefaultVcLink": true,
  • "location": "sample location"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Cancel a session (one-on-one or group/workshop)

Submits cancel a session (one-on-one or group/workshop). From routes/coach/session.js - routes to coachSessionController.cancelSession or coachGroupSessionController.cancelGroupSession based on sessionType. No verifyToken middleware.

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "userRole": "coach",
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get session meeting info

Retrieves session meeting info. From routes/coach/session.js - calls coachSessionController.GetSessionMeetingInfo. No verifyToken middleware. Backed by controller coachSessionController.GetSessionMeetingInfo..

Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Accept a session as coach (one-on-one or group/workshop)

Submits accept a session as coach (one-on-one or group/workshop). From routes/coach/session.js - routes to coachSessionController.coachAcceptSession or coachGroupSessionController.coachAcceptGroupSession based on sessionType. No verifyToken middleware.

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get session feedback / reflection info for a user

Retrieves session feedback / reflection info for a user. From routes/coach/session.js - calls coachSessionController.getUserFeedbackInfo with userRole=Coach Backed by controller coachSessionController.getUserFeedbackInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

View group session reflection (forces sessionType=Group)

Submits view group session reflection (forces sessionType=Group). From routes/coach/session.js - calls coachSessionController.getUserFeedbackInfo with sessionType=Group Backed by controller coachSessionController.getUserFeedbackInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

View workshop reflection (forces sessionType=Workshop)

Submits view workshop reflection (forces sessionType=Workshop). From routes/coach/session.js - calls coachSessionController.getWorkshopFeedbackInfo Backed by controller coachSessionController.getWorkshopFeedbackInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit session reflection / feedback

Submits session reflection / feedback. From routes/coach/session.js - calls coachSessionController.submitSessionRelection with userRole=Coach. No verifyToken middleware. Backed by controller coachSessionController.submitSessionRelection.

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

openToFeedback
number

Open to feedback field

willingnessToAct
number

Willingness to act field

involvement
number

Involvement field

knowledgeSharing
number

Knowledge sharing field

areaOfChange
string

Area of change field

potentialObstacles
string

Potential obstacles field

supportNeeded
string

Support needed field

feedback
string

Feedback field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "openToFeedback": 1,
  • "willingnessToAct": 1,
  • "involvement": 1,
  • "knowledgeSharing": 1,
  • "areaOfChange": "sample area of change",
  • "potentialObstacles": "sample potential obstacles",
  • "supportNeeded": "sample support needed",
  • "feedback": "sample feedback"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit group session reflection (same handler as submit_feedback)

Submits group session reflection (same handler as submit_feedback). From routes/coach/session.js - calls coachSessionController.submitSessionRelection. No verifyToken middleware. Backed by controller coachSessionController.submitSessionRelection..

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

openToFeedback
number

Open to feedback field

willingnessToAct
number

Willingness to act field

involvement
number

Involvement field

knowledgeSharing
number

Knowledge sharing field

areaOfChange
string

Area of change field

potentialObstacles
string

Potential obstacles field

supportNeeded
string

Support needed field

feedback
string

Feedback field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "openToFeedback": 1,
  • "willingnessToAct": 1,
  • "involvement": 1,
  • "knowledgeSharing": 1,
  • "areaOfChange": "sample area of change",
  • "potentialObstacles": "sample potential obstacles",
  • "supportNeeded": "sample support needed",
  • "feedback": "sample feedback"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update session meeting info (VC link / type)

Updates session meeting info (VC link / type). From routes/coach/session.js - calls coachSessionController.updateMeetingInfo. Note - controller method has non-standard signature; route passes (req, res). Backed by controller coachSessionController.updateMeetingInfo..

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

vcToolType
string

Vc tool type field

vcToolLink
string

Vc tool link field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "vcToolType": "sample vc tool type",
  • "vcToolLink": "sample vc tool link"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark session as in-progress

Submits mark session as in-progress. From routes/coach/session.js - calls coachSessionController.changeStatusAsInProgress with userRole=Coach Backed by controller coachSessionController.changeStatusAsInProgress.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark session as completed

Submits mark session as completed. From routes/coach/session.js - calls coachSessionController.markSessionCompleted with userRole=Coach Backed by controller coachSessionController.markSessionCompleted.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user session calendar event id

Updates user session calendar event id. From routes/coach/session.js - calls coachSessionController.updateUserSessionCalendarEvent with userRole=Coach Backed by controller coachSessionController.updateUserSessionCalendarEvent.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

calType
string

Cal type field

eventId
string <uuid>

Event id (identifier)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "calType": "sample cal type",
  • "eventId": "550e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Fetch user session calendar event id

Retrieves user session calendar event id. From routes/coach/session.js - calls coachSessionController.fetchUserSessionCalendarEvent with userRole=Coach Backed by controller coachSessionController.fetchUserSessionCalendarEvent.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Invite users to a session

Invites a user to users to a session. From routes/coach/session.js - calls coachSessionController.inviteSessionUsers Backed by controller coachSessionController.inviteSessionUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

invitedUsers
Array of objects

Invited users field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "invitedUsers": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Coach - Tools

Coach - Tools operations

Add a new coaching tool

Creates a new coaching tool. From routes/coach/coaching_tool.js - calls coachingToolController.AddNewCoachingTool Backed by controller coachingToolController.AddNewCoachingTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

toolCategory
string

Tool category field

userLevel
number

User level field

competencies
Array of objects

Competencies field

isAITool
boolean

Is aitool field

toolName
string

Coaching tool name

toolDesc
string

Tool desc field

toolStructure
object

Tool structure field

isClonable
boolean

Is clonable field

isPublic
boolean

Is public field

isSharable
boolean

Is sharable field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "toolCategory": "sample tool category",
  • "userLevel": 1,
  • "competencies": [ ],
  • "isAITool": true,
  • "toolName": "GROW model",
  • "toolDesc": "sample tool desc",
  • "toolStructure": { },
  • "isClonable": true,
  • "isPublic": true,
  • "isSharable": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a coaching tool (same handler as add_tool)

Updates a coaching tool (same handler as add_tool). From routes/coach/coaching_tool.js - calls coachingToolController.AddNewCoachingTool Backed by controller coachingToolController.AddNewCoachingTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

toolCategory
string

Tool category field

userLevel
number

User level field

competencies
Array of objects

Competencies field

isAITool
boolean

Is aitool field

toolName
string

Coaching tool name

toolDesc
string

Tool desc field

toolStructure
object

Tool structure field

isClonable
boolean

Is clonable field

isPublic
boolean

Is public field

isSharable
boolean

Is sharable field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "toolCategory": "sample tool category",
  • "userLevel": 1,
  • "competencies": [ ],
  • "isAITool": true,
  • "toolName": "GROW model",
  • "toolDesc": "sample tool desc",
  • "toolStructure": { },
  • "isClonable": true,
  • "isPublic": true,
  • "isSharable": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coaching tool structure (questions)

Updates coaching tool structure (questions). From routes/coach/coaching_tool.js - calls coachingToolController.UpdateCoachingToolStructure Backed by controller coachingToolController.UpdateCoachingToolStructure.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

toolStructure
object

Tool structure field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "toolStructure": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coaching tool scoring logic

Updates coaching tool scoring logic. From routes/coach/coaching_tool.js - calls coachingToolController.UpdateCoachingToolScoringLogic Backed by controller coachingToolController.UpdateCoachingToolScoringLogic.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

scoringLogic
Array of objects

Scoring logic field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "scoringLogic": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all coaching tools for the coach

Retrieves all coaching tools for the coach. From routes/coach/coaching_tool.js - calls coachingToolController.GetAllCoachingTools Backed by controller coachingToolController.GetAllCoachingTools.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coaching tool details

Retrieves coaching tool details. From routes/coach/coaching_tool.js - calls coachingToolController.GetCoachingToolDetails Backed by controller coachingToolController.GetCoachingToolDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Clone a coaching tool

Submits clone a coaching tool. From routes/coach/coaching_tool.js - calls coachingToolController.CloneCoachingTool Backed by controller coachingToolController.CloneCoachingTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

toolName
string

Coaching tool name

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "toolName": "GROW model",
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark a tool as favorite

Submits mark a tool as favorite. From routes/coach/coaching_tool.js - calls coachingToolController.markFavoriteTool Backed by controller coachingToolController.markFavoriteTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Unmark a tool as favorite

Submits unmark a tool as favorite. From routes/coach/coaching_tool.js - calls coachingToolController.unMarkFavoriteTool Backed by controller coachingToolController.unMarkFavoriteTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all favorite tools

Retrieves all favorite tools. From routes/coach/coaching_tool.js - calls coachingToolController.getAllFavoriteTools Backed by controller coachingToolController.getAllFavoriteTools.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Publish a coaching tool

Submits publish a coaching tool. From routes/coach/coaching_tool.js - calls coachingToolController.PublishCoachingTool Backed by controller coachingToolController.PublishCoachingTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Unpublish a coaching tool

Submits unpublish a coaching tool. From routes/coach/coaching_tool.js - calls coachingToolController.UpdateCoachingToolStatus with status=UnPublish Backed by controller coachingToolController.UpdateCoachingToolStatus.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a coaching tool

Removes a coaching tool. From routes/coach/coaching_tool.js - calls coachingToolController.UpdateCoachingToolStatus with status=Delete Backed by controller coachingToolController.UpdateCoachingToolStatus.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get program-wise connected users

Retrieves program-wise connected users. From routes/coach/coaching_tool.js - calls coachingToolController.GetProgramWiseConnectedUsers Backed by controller coachingToolController.GetProgramWiseConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users for sharing tools

Retrieves connected users for sharing tools. From routes/coach/coaching_tool.js - calls coachingToolController.GetConnectedUsers Backed by controller coachingToolController.GetConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected groups for sharing tools

Retrieves connected groups for sharing tools. From routes/coach/coaching_tool.js - calls coachingToolController.GetConnectedGroups Backed by controller coachingToolController.GetConnectedGroups.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected programs for sharing tools

Retrieves connected programs for sharing tools. From routes/coach/coaching_tool.js - calls coachingToolController.GetConnectedPrograms Backed by controller coachingToolController.GetConnectedPrograms.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Share a coaching tool with selected learners

Submits share a coaching tool with selected learners. From routes/coach/coaching_tool.js - calls coachingToolController.ShareCoachingToolWithCoachees Backed by controller coachingToolController.ShareCoachingToolWithCoachees.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

learners
Array of objects

Learners field

dueDate
string <date>

Target completion date (ISO 8601)

groupId
number

Group id (identifier)

programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "learners": [ ],
  • "dueDate": "2026-05-13",
  • "groupId": 12345,
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Share a coaching tool with groups

Submits share a coaching tool with groups. From routes/coach/coaching_tool.js - calls coachingToolController.ShareCoachingToolWithGroup Backed by controller coachingToolController.ShareCoachingToolWithGroup.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

groupIds
Array of objects

Group ids field

dueDate
string <date>

Target completion date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "groupIds": [ ],
  • "dueDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Share coaching tool with users from one or more programs

Submits share coaching tool with users from one or more programs. From routes/coach/coaching_tool.js - calls coachingToolController.ShareToolWithProgramUsers Backed by controller coachingToolController.ShareToolWithProgramUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

programIds
Array of objects

Program ids field

dueDate
string <date>

Target completion date (ISO 8601)

groupId
number

Group id (identifier)

programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "programIds": [ ],
  • "dueDate": "2026-05-13",
  • "groupId": 12345,
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Bulk invite stakeholders via CSV upload

Submits bulk invite stakeholders via CSV upload. From routes/coach/coaching_tool.js - calls coachingToolController.BulkInviteStakeholdersForLearners. Admin / GroupAdmin / Coach. Backed by controller coachingToolController.BulkInviteStakeholdersForLearners..

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

stakeholders
Array of objects

Stakeholders field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "stakeholders": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Pre-validate CSV learner emails against onboarded users

Submits pre-validate CSV learner emails against onboarded users. From routes/coach/coaching_tool.js - calls coachingToolController.ValidateLearnerEmails. Admin / GroupAdmin / Coach. Backed by controller coachingToolController.ValidateLearnerEmails..

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

learnerEmails
Array of strings

Learner emails field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "learnerEmails": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coaching tool program name

Retrieves coaching tool program name. From routes/coach/coaching_tool.js - calls coachingToolController.GetCoachingToolProgramName Backed by controller coachingToolController.GetCoachingToolProgramName.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get info on whom a tool has been shared with

Retrieves info on whom a tool has been shared with. From routes/coach/coaching_tool.js - calls coachingToolController.GetCoachingToolSharedInfo Backed by controller coachingToolController.GetCoachingToolSharedInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Send reminder to coachees to submit tool

Sends reminder to coachees to submit tool. From routes/coach/coaching_tool.js - calls coachingToolController.SendReminderToCoacheeToSubmit Backed by controller coachingToolController.SendReminderToCoacheeToSubmit.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
Array of objects

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool instance details

Retrieves tool instance details. From routes/coach/coaching_tool.js - calls coachingToolController.GetToolInstanceDetails Backed by controller coachingToolController.GetToolInstanceDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Recall a shared tool

Submits recall a shared tool. From routes/coach/coaching_tool.js - calls coachingToolController.RecallTool Backed by controller coachingToolController.RecallTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Change due date of one or more shared tools

Submits change due date of one or more shared tools. From routes/coach/coaching_tool.js - calls coachingToolController.ChangeDueDateOfTool Backed by controller coachingToolController.ChangeDueDateOfTool.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolIds
Array of objects

Tool ids field

dueDate
string <date>

Target completion date (ISO 8601)

forAllLearners
boolean

For all learners field

forAllStakeholders
boolean

For all stakeholders field

Responses

Request samples

Content type
application/json
{
  • "toolIds": [ ],
  • "dueDate": "2026-05-13",
  • "forAllLearners": true,
  • "forAllStakeholders": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coaching tool report for a coachee

Retrieves coaching tool report for a coachee. From routes/coach/coaching_tool.js - calls coachingToolController.GetCoachingToolReport Backed by controller coachingToolController.GetCoachingToolReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get complete stakeholder tool report

Retrieves complete stakeholder tool report. From routes/coach/coaching_tool.js - calls coachingToolController.GetStakeHolderToolReport Backed by controller coachingToolController.GetStakeHolderToolReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
number

Internal user ID (foreign key)

requestedBy
number

Requested by field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": 12345,
  • "requestedBy": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get stakeholder tool report via token (no auth)

Retrieves stakeholder tool report via token (no auth). From routes/coach/coaching_tool.js - calls coachingToolController.GetStakeHolderToolReportWithToken. No verifyToken middleware. Backed by controller coachingToolController.GetStakeHolderToolReportWithToken..

Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
number

Internal user ID (foreign key)

requestedBy
number

Requested by field

token
string

Auth or session token

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": 12345,
  • "requestedBy": 1,
  • "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get stakeholder tool report by UUID

Retrieves stakeholder tool report by UUID. From routes/coach/coaching_tool.js - calls coachingToolController.GetStakeHolderToolReportByUUID Backed by controller coachingToolController.GetStakeHolderToolReportByUUID.

Authorizations:
bearerAuth
Request Body schema: application/json
required
accessKey
string

Access key field

Responses

Request samples

Content type
application/json
{
  • "accessKey": "sample access key"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Generate a PDF report for a coaching tool

Generates a PDF report for a coaching tool. From routes/coach/coaching_tool.js - calls coachingToolController.generatePdfReport Backed by controller coachingToolController.generatePdfReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
number

Internal user ID (foreign key)

isEmailToSend
boolean

Is email to send field

requestedBy
number

Requested by field

emailToSend
boolean

Email to send field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": 12345,
  • "isEmailToSend": true,
  • "requestedBy": 1,
  • "emailToSend": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool comparison report (across attempts / dates)

Retrieves tool comparison report (across attempts / dates). From routes/coach/coaching_tool.js - calls coachingToolController.GetToolComparisonReport Backed by controller coachingToolController.GetToolComparisonReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolIds
Array of objects

Tool ids field

userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "toolIds": [ ],
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get comparison report via token (no auth)

Retrieves comparison report via token (no auth). From routes/coach/coaching_tool.js - calls coachingToolController.GetComparisionToolReportWithToken. No verifyToken middleware. Backed by controller coachingToolController.GetComparisionToolReportWithToken..

Request Body schema: application/json
required
toolIds
Array of objects

Tool ids field

userId
number

Internal user ID (foreign key)

token
string

Auth or session token

Responses

Request samples

Content type
application/json
{
  • "toolIds": [ ],
  • "userId": 12345,
  • "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Generate comparison PDF report

Generates comparison PDF report. From routes/coach/coaching_tool.js - calls coachingToolController.generateComparisonReportPdf Backed by controller coachingToolController.generateComparisonReportPdf.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolIds
Array of objects

Tool ids field

userId
number

Internal user ID (foreign key)

requestedBy
number

Requested by field

isEmailToSend
boolean

Is email to send field

Responses

Request samples

Content type
application/json
{
  • "toolIds": [ ],
  • "userId": 12345,
  • "requestedBy": 1,
  • "isEmailToSend": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool response summary CSV

Retrieves tool response summary CSV. From routes/coach/coaching_tool.js - calls coachingToolController.getToolResponseSummaryCsv Backed by controller coachingToolController.getToolResponseSummaryCsv.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool rating summary CSV

Retrieves tool rating summary CSV. From routes/coach/coaching_tool.js - calls coachingToolController.getToolRatingSummaryCsv Backed by controller coachingToolController.getToolRatingSummaryCsv.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update tool AI summary

Updates tool AI summary. From routes/coach/coaching_tool.js - calls coachingToolController.UpdateToolAISummary Backed by controller coachingToolController.UpdateToolAISummary.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

aiSummary
object

Ai summary field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "aiSummary": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool AI summary

Retrieves tool AI summary. From routes/coach/coaching_tool.js - calls coachingToolController.GetToolAISummary Backed by controller coachingToolController.GetToolAISummary.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get list of stakeholders a tool has been shared with for a coachee

Retrieves list of stakeholders a tool has been shared with for a coachee. From routes/coach/coaching_tool.js - calls coachingToolController.GetCoacheeStakeholderSharedList Backed by controller coachingToolController.GetCoacheeStakeholderSharedList.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Common - Auth

Common - Auth operations

Login user

Authenticates user. From routes/common/auth.js — calls commonAuthController.userLogin Backed by controller commonAuthController.userLogin.

Authorizations:
bearerAuth
Request Body schema: application/json
required
authId
string <uuid>

External identity provider's user ID

userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

provider
string

External identity provider name (e.g. firebase, google, microsoft)

channelId
string <uuid>

Notification channel identifier

ipAddress
string

Caller's IP address

geoInfo
object

Geographic info derived from IP

Responses

Request samples

Content type
application/json
{
  • "authId": "550e8400-e29b-41d4-a716-446655440000",
  • "userRole": "coach",
  • "provider": "firebase",
  • "channelId": "550e8400-e29b-41d4-a716-446655440000",
  • "ipAddress": "sample ip address",
  • "geoInfo": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Create user account

Creates user account. From routes/common/auth.js — calls commonAuthController.createUserAccount Backed by controller commonAuthController.createUserAccount.

Request Body schema: application/json
required
id
number

Generic identifier

status
string

Status code (see business rules)

authId
string <uuid>

External identity provider's user ID

Responses

Request samples

Content type
application/json
{
  • "id": 12345,
  • "status": "sample status",
  • "authId": "550e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get Outlook OAuth token

Retrieves outlook OAuth token. From routes/common/auth.js — calls commonAuthController.getOutLookToken (delegates to outlook.getToken) Backed by controller commonAuthController.getOutLookToken.

Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Refresh Outlook OAuth token

Submits refresh Outlook OAuth token. From routes/common/auth.js — calls commonAuthController.getOutLookRefreshToken (delegates to outlook.refreshToken) Backed by controller commonAuthController.getOutLookRefreshToken.

Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get Video SDK token

Retrieves video SDK token. From routes/common/auth.js — calls commonAuthController.getVideoSdkToken Backed by controller commonAuthController.getVideoSdkToken.

Responses

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example"
}

Common - Onboarding

Common - Onboarding operations

Load onboarding info for logged-in user

Retrieves load onboarding info for logged-in user. From routes/common/onboarding.js — calls commonOnBoardingController.load_onboarding_info Backed by controller commonOnBoardingController.load_onboarding_info.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user personal info (onboarding)

Retrieves user personal info (onboarding). From routes/common/onboarding.js — calls commonSettingsController.getPersonalInfo Backed by controller commonSettingsController.getPersonalInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user personal info (onboarding)

Updates user personal info (onboarding). From routes/common/onboarding.js — calls commonSettingsController.updatePersonalInfo Backed by controller commonSettingsController.updatePersonalInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
fullName
string

User's full name

salutation
string

Salutation field

mobile
string

E.164 mobile number

zipcode
string

Zipcode field

city
string

City field

country
string

Country field

countryCode
string

Country code field

timezone
string

Timezone field

language
Array of arrays

Language field

enableWhatsapp
boolean

Enable whatsapp field

Responses

Request samples

Content type
application/json
{
  • "fullName": "John Doe",
  • "salutation": "sample salutation",
  • "mobile": "+919876543210",
  • "zipcode": "sample zipcode",
  • "city": "sample city",
  • "country": "sample country",
  • "countryCode": "sample country code",
  • "timezone": "sample timezone",
  • "language": [ ],
  • "enableWhatsapp": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user corporate info (onboarding)

Retrieves user corporate info (onboarding). From routes/common/onboarding.js — calls coachProfileSettingsController.getUserCorporateInfo Backed by controller coachProfileSettingsController.getUserCorporateInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user corporate info (onboarding)

Updates user corporate info (onboarding). From routes/common/onboarding.js — calls coachProfileSettingsController.updateUserCorporateInfo Backed by controller coachProfileSettingsController.updateUserCorporateInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateExp
number

Corporate exp field

corporateExpYear
number

Corporate exp year field

corporateExpMonth
number

Corporate exp month field

industries
Array of arrays

Industries field

functions
Array of arrays

Functions field

currentRole
number

Current role field

designation
string

Designation field

organizationsWorked
Array of arrays

Organizations worked field

Responses

Request samples

Content type
application/json
{
  • "corporateExp": 1,
  • "corporateExpYear": 1,
  • "corporateExpMonth": 1,
  • "industries": [ ],
  • "functions": [ ],
  • "currentRole": 1,
  • "designation": "sample designation",
  • "organizationsWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user coaching info (onboarding)

Retrieves user coaching info (onboarding). From routes/common/onboarding.js — calls commonOnBoardingController.coaching_info Backed by controller commonOnBoardingController.coaching_info.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user coaching info (onboarding)

Updates user coaching info (onboarding). From routes/common/onboarding.js — calls commonOnBoardingController.update_coaching_info Backed by controller commonOnBoardingController.update_coaching_info.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachingExp
number

Coaching exp field

coachingExpYear
number

Coaching exp year field

coachingExpMonth
number

Coaching exp month field

coachingSkills
Array of arrays

Coaching skills field

levelsCoached
number

Levels coached field

isFacilitationEnabled
boolean

Is facilitation enabled field

isAssessmentEnabled
boolean

Is assessment enabled field

Responses

Request samples

Content type
application/json
{
  • "coachingExp": 1,
  • "coachingExpYear": 1,
  • "coachingExpMonth": 1,
  • "coachingSkills": [ ],
  • "levelsCoached": 1,
  • "isFacilitationEnabled": true,
  • "isAssessmentEnabled": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user availability info (onboarding)

Retrieves user availability info (onboarding). From routes/common/onboarding.js — calls commonSettingsController.availabilityInfo Backed by controller commonSettingsController.availabilityInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user availability info (onboarding)

Updates user availability info (onboarding). From routes/common/onboarding.js — calls commonSettingsController.updateAvailabilityInfo Backed by controller commonSettingsController.updateAvailabilityInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
dayTimeRange
Array of arrays

Day time range field

Responses

Request samples

Content type
application/json
{
  • "dayTimeRange": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get calendar connected info (onboarding)

Retrieves calendar connected info (onboarding). From routes/common/onboarding.js — calls commonSettingsController.calendarConnectedInfo Backed by controller commonSettingsController.calendarConnectedInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update calendar connectivity (onboarding)

Updates calendar connectivity (onboarding). From routes/common/onboarding.js — calls commonSettingsController.updateCalendarConnectivity Backed by controller commonSettingsController.updateCalendarConnectivity.

Authorizations:
bearerAuth
Request Body schema: application/json
required
calendarStatus
boolean

Calendar status field

calendarType
string

Calendar type field

Responses

Request samples

Content type
application/json
{
  • "calendarStatus": true,
  • "calendarType": "sample calendar type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user corporate experience (coachee onboarding)

Retrieves user corporate experience (coachee onboarding). From routes/common/onboarding.js — calls commonOnBoardingController.user_experience Backed by controller commonOnBoardingController.user_experience.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user corporate experience (coachee onboarding)

Updates user corporate experience (coachee onboarding). From routes/common/onboarding.js — calls commonOnBoardingController.update_user_experience Backed by controller commonOnBoardingController.update_user_experience.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateExp
number

Corporate exp field

corporateExpYear
number

Corporate exp year field

corporateExpMonth
number

Corporate exp month field

designation
string

Designation field

industries
Array of arrays

Industries field

functions
Array of arrays

Functions field

currentRole
number

Current role field

Responses

Request samples

Content type
application/json
{
  • "corporateExp": 1,
  • "corporateExpYear": 1,
  • "corporateExpMonth": 1,
  • "designation": "sample designation",
  • "industries": [ ],
  • "functions": [ ],
  • "currentRole": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get internal coach service info (onboarding)

Retrieves internal coach service info (onboarding). From routes/common/onboarding.js — calls commonOnBoardingController.service_info Backed by controller commonOnBoardingController.service_info.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update internal coach service info (onboarding)

Updates internal coach service info (onboarding). From routes/common/onboarding.js — calls commonOnBoardingController.update_service_info Backed by controller commonOnBoardingController.update_service_info.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachingSkills
Array of arrays

Coaching skills field

mentoringSkills
Array of arrays

Mentoring skills field

facilitation
object

Facilitation field

Responses

Request samples

Content type
application/json
{
  • "coachingSkills": [ ],
  • "mentoringSkills": [ ],
  • "facilitation": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Common - Settings

Common - Settings operations

Get user profile config

Retrieves user profile config. From routes/common/settings.js — calls commonSettingsController.getUserProfileConfig Backed by controller commonSettingsController.getUserProfileConfig.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach services config

Retrieves coach services config. From routes/common/settings.js — calls commonSettingsController.getCoachServicesConfig Backed by controller commonSettingsController.getCoachServicesConfig.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update coaching service config

Updates coaching service config. From routes/common/settings.js — calls commonSettingsController.updateCoachServicesConfig Backed by controller commonSettingsController.updateCoachServicesConfig.

Authorizations:
bearerAuth
Request Body schema: application/json
required
serviceType
string

Service type field

serviceStatus
boolean

Service status field

Responses

Request samples

Content type
application/json
{
  • "serviceType": "sample service type",
  • "serviceStatus": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Enable coaching service (alias for update_coaching_service)

Submits enable coaching service (alias for update_coaching_service). From routes/common/settings.js — calls commonSettingsController.updateCoachServicesConfig (duplicate route registered twice in source) Backed by controller commonSettingsController.updateCoachServicesConfig.

Authorizations:
bearerAuth
Request Body schema: application/json
required
serviceType
string

Service type field

serviceStatus
boolean

Service status field

enableCoaching
boolean

Enable coaching field

Responses

Request samples

Content type
application/json
{
  • "serviceType": "sample service type",
  • "serviceStatus": true,
  • "enableCoaching": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user personal info

Retrieves user personal info. From routes/common/settings.js — calls commonSettingsController.getPersonalInfo Backed by controller commonSettingsController.getPersonalInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user personal info

Updates user personal info. From routes/common/settings.js — calls commonSettingsController.updatePersonalInfo Backed by controller commonSettingsController.updatePersonalInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
fullName
string

User's full name

salutation
string

Salutation field

mobile
string

E.164 mobile number

zipcode
string

Zipcode field

city
string

City field

country
string

Country field

countryCode
string

Country code field

timezone
string

Timezone field

language
Array of arrays

Language field

enableWhatsapp
boolean

Enable whatsapp field

Responses

Request samples

Content type
application/json
{
  • "fullName": "John Doe",
  • "salutation": "sample salutation",
  • "mobile": "+919876543210",
  • "zipcode": "sample zipcode",
  • "city": "sample city",
  • "country": "sample country",
  • "countryCode": "sample country code",
  • "timezone": "sample timezone",
  • "language": [ ],
  • "enableWhatsapp": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Change user password

Submits change user password. From routes/common/settings.js — calls commonSettingsController.changePassword Backed by controller commonSettingsController.changePassword.

Authorizations:
bearerAuth
Request Body schema: application/json
required
password
string

User password (plaintext at API boundary; hashed server-side)

Responses

Request samples

Content type
application/json
{
  • "password": "Pa$$w0rd123"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Deactivate user account

Submits deactivate user account. From routes/common/settings.js — calls commonSettingsController.deactivateAccount Backed by controller commonSettingsController.deactivateAccount.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete user account

Removes user account. From routes/common/settings.js — calls commonSettingsController.deleteAccount Backed by controller commonSettingsController.deleteAccount.

Authorizations:
bearerAuth
Request Body schema: application/json
required
password
string

User password (plaintext at API boundary; hashed server-side)

Responses

Request samples

Content type
application/json
{
  • "password": "Pa$$w0rd123"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get default meeting link

Retrieves default meeting link. From routes/common/settings.js — calls commonSettingsController.getDefaultMeetingLink Backed by controller commonSettingsController.getDefaultMeetingLink.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update default meeting link

Updates default meeting link. From routes/common/settings.js — calls commonSettingsController.updateDefaultMeetingLink Backed by controller commonSettingsController.updateDefaultMeetingLink.

Authorizations:
bearerAuth
Request Body schema: application/json
required
vcType
string

Vc type field

meetingLink
string

Meeting link field

isDefault
boolean

Is default field

Responses

Request samples

Content type
application/json
{
  • "vcType": "sample vc type",
  • "meetingLink": "sample meeting link",
  • "isDefault": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get notification config

Retrieves notification config. From routes/common/settings.js — calls commonSettingsController.getNotificationConfig Backed by controller commonSettingsController.getNotificationConfig.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update notification config

Updates notification config. From routes/common/settings.js — calls commonSettingsController.updateNotificationConfig Backed by controller commonSettingsController.updateNotificationConfig.

Authorizations:
bearerAuth
Request Body schema: application/json
required
notificationType
string

Notification type field

value
boolean

Value field

channel
string

Channel field

Responses

Request samples

Content type
application/json
{
  • "notificationType": "sample notification type",
  • "value": true,
  • "channel": "sample channel"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user availability info

Retrieves user availability info. From routes/common/settings.js — calls commonSettingsController.availabilityInfo Backed by controller commonSettingsController.availabilityInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user availability info

Updates user availability info. From routes/common/settings.js — calls commonSettingsController.updateAvailabilityInfo Backed by controller commonSettingsController.updateAvailabilityInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
dayTimeRange
Array of arrays

Day time range field

Responses

Request samples

Content type
application/json
{
  • "dayTimeRange": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add unavailable dates (holiday range)

Creates unavailable dates (holiday range). From routes/common/settings.js — calls commonSettingsController.updateUnavailableDates (updateType=ADD) Backed by controller commonSettingsController.updateUnavailableDates.

Authorizations:
bearerAuth
Request Body schema: application/json
required
startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove unavailable dates (holiday range)

Removes unavailable dates (holiday range). From routes/common/settings.js — calls commonSettingsController.updateUnavailableDates (updateType=REMOVE) Backed by controller commonSettingsController.updateUnavailableDates.

Authorizations:
bearerAuth
Request Body schema: application/json
required
startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get unavailable dates (current user)

Retrieves unavailable dates (current user). From routes/common/settings.js — calls commonSettingsController.getUnavailableDates Backed by controller commonSettingsController.getUnavailableDates.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get unavailable dates for a given user

Retrieves unavailable dates for a given user. From routes/common/settings.js — calls commonSettingsController.getUnavailableDates Backed by controller commonSettingsController.getUnavailableDates.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user holiday dates

Retrieves user holiday dates. From routes/common/settings.js — calls commonSettingsController.getHolidayDates Backed by controller commonSettingsController.getHolidayDates.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get calendar connected info

Retrieves calendar connected info. From routes/common/settings.js — calls commonSettingsController.calendarConnectedInfo Backed by controller commonSettingsController.calendarConnectedInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update calendar connectivity

Updates calendar connectivity. From routes/common/settings.js — calls commonSettingsController.updateCalendarConnectivity Backed by controller commonSettingsController.updateCalendarConnectivity.

Authorizations:
bearerAuth
Request Body schema: application/json
required
calendarStatus
boolean

Calendar status field

calendarType
string

Calendar type field

Responses

Request samples

Content type
application/json
{
  • "calendarStatus": true,
  • "calendarType": "sample calendar type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Common - Uploads

Common - Uploads operations

Upload image (multipart)

Submits upload image (multipart). From routes/common/uploads.js — uses imageUploader.array("file", 1)

Request Body schema: multipart/form-data
required
file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "fileName": { }
}

Upload logo (multipart)

Submits upload logo (multipart). From routes/common/uploads.js — uses logoUploader.array("file", 1)

Request Body schema: multipart/form-data
required
file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "fileName": { }
}

Upload file (multipart)

Submits upload file (multipart). From routes/common/uploads.js — uses fileUploader.single("file")

Request Body schema: multipart/form-data
required
file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "fileName": "sample file name"
}

Upload notes file (multipart)

Submits upload notes file (multipart). From routes/common/uploads.js — uses noteFileUploader.single("file")

Request Body schema: multipart/form-data
required
file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "fileName": "sample file name"
}

Upload credential file (multipart)

Submits upload credential file (multipart). From routes/common/uploads.js — uses fileUploader.array("file", 1)

Request Body schema: multipart/form-data
required
file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "fileName": { }
}

Upload tool file (multipart)

Submits upload tool file (multipart). From routes/common/uploads.js — uses fileUploader.array("file", 1)

Request Body schema: multipart/form-data
required
file
string <binary>

File field

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "fileName": { }
}

Common - User

Common - User operations

Load brand configs for logged-in user

Retrieves load brand configs for logged-in user. From routes/common/userRequest.js — calls commonUserRequestController.loadBrandConfigs Backed by controller commonUserRequestController.loadBrandConfigs.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Switch user role

Submits switch user role. From routes/common/userRequest.js — calls commonUserRequestController.switchRole Backed by controller commonUserRequestController.switchRole.

Authorizations:
bearerAuth
Request Body schema: application/json
required
role
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

Responses

Request samples

Content type
application/json
{
  • "role": "coach"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user profile timezone

Retrieves user profile timezone. From routes/common/userRequest.js — calls commonUserRequestController.getUserTimezone Backed by controller commonUserRequestController.getUserTimezone.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update user profile timezone

Updates user profile timezone. From routes/common/userRequest.js — calls commonUserRequestController.updateUserTimezone Backed by controller commonUserRequestController.updateUserTimezone.

Authorizations:
bearerAuth
Request Body schema: application/json
required
timezone
string

Timezone field

Responses

Request samples

Content type
application/json
{
  • "timezone": "sample timezone"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get onboarding info for user

Retrieves onboarding info for user. From routes/common/userRequest.js — calls commonUserRequestController.onboardingInfo Backed by controller commonUserRequestController.onboardingInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

Responses

Request samples

Content type
application/json
{
  • "userRole": "coach"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Dismiss onboarding for logged-in user

Submits dismiss onboarding for logged-in user. From routes/common/userRequest.js — calls commonUserRequestController.dismissOnboarding Backed by controller commonUserRequestController.dismissOnboarding.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

Responses

Request samples

Content type
application/json
{
  • "userRole": "coach"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tour info for user

Retrieves tour info for user. From routes/common/userRequest.js — calls commonUserRequestController.getUserTourInfo Backed by controller commonUserRequestController.getUserTourInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark tour as finished

Submits mark tour as finished. From routes/common/userRequest.js — calls commonUserRequestController.updateUserTourInfo Backed by controller commonUserRequestController.updateUserTourInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
tourType
string

Tour type field

markFinished
boolean

Mark finished field

Responses

Request samples

Content type
application/json
{
  • "tourType": "sample tour type",
  • "markFinished": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all active notifications for user

Retrieves all active notifications for user. From routes/common/userRequest.js — calls commonUserRequestController.getUserNotifications Backed by controller commonUserRequestController.getUserNotifications.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark a notification as read

Submits mark a notification as read. From routes/common/userRequest.js — calls commonUserRequestController.updateNotification (action=mark_read_notification) Backed by controller commonUserRequestController.updateNotification.

Authorizations:
bearerAuth
Request Body schema: application/json
required
notificationId
number

Notification id (identifier)

Responses

Request samples

Content type
application/json
{
  • "notificationId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark all notifications as read

Submits mark all notifications as read. From routes/common/userRequest.js — calls commonUserRequestController.updateNotification (action=mark_read_all) Backed by controller commonUserRequestController.updateNotification.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark a notification as unread

Submits mark a notification as unread. From routes/common/userRequest.js — calls commonUserRequestController.updateNotification (action=mark_unread_notification) Backed by controller commonUserRequestController.updateNotification.

Authorizations:
bearerAuth
Request Body schema: application/json
required
notificationId
number

Notification id (identifier)

Responses

Request samples

Content type
application/json
{
  • "notificationId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark all notifications as unread

Submits mark all notifications as unread. From routes/common/userRequest.js — calls commonUserRequestController.updateNotification (action=mark_unread_all) Backed by controller commonUserRequestController.updateNotification.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove a notification (mark complete)

Removes a notification (mark complete). From routes/common/userRequest.js — calls commonUserRequestController.updateNotification (action=mark_complete) Backed by controller commonUserRequestController.updateNotification.

Authorizations:
bearerAuth
Request Body schema: application/json
required
notificationId
number

Notification id (identifier)

Responses

Request samples

Content type
application/json
{
  • "notificationId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove all notifications (mark complete all)

Removes all notifications (mark complete all). From routes/common/userRequest.js — calls commonUserRequestController.updateNotification (action=mark_complete_all) Backed by controller commonUserRequestController.updateNotification.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Perform session action from email link

Submits perform session action from email link. From routes/common/userRequest.js — calls commonUserRequestController.performEmailAction Backed by controller commonUserRequestController.performEmailAction.

Request Body schema: application/json
required
sessionInfo
string

Session info field

Responses

Request samples

Content type
application/json
{
  • "sessionInfo": "sample session info"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Join meeting from email link

Submits join meeting from email link. From routes/common/userRequest.js — calls commonUserRequestController.joinMeeting Backed by controller commonUserRequestController.joinMeeting.

Request Body schema: application/json
required
sessionInfo
string

Session info field

Responses

Request samples

Content type
application/json
{
  • "sessionInfo": "sample session info"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Fetch feedback form data from email link

Retrieves feedback form data from email link. From routes/common/userRequest.js — calls commonUserRequestController.fetchFeedbackFormData Backed by controller commonUserRequestController.fetchFeedbackFormData.

Request Body schema: application/json
required
sessionInfo
string

Session info field

Responses

Request samples

Content type
application/json
{
  • "sessionInfo": "sample session info"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Actions

Learner - Actions operations

Get user actions

Retrieves user actions. From routes/learner/actions.js - calls coachActionController.getUserActions (userRole=Coachee) Backed by controller coachActionController.getUserActions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all actions for the learner

Retrieves all actions for the learner. From routes/learner/actions.js - calls coachActionController.getAllActions (userRole=Coachee) Backed by controller coachActionController.getAllActions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add an action

Creates an action. From routes/learner/actions.js - calls coachActionController.addAction (userRole=Coachee) Backed by controller coachActionController.addAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

actionId
number

Action ID

actionName
string

Action name field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

description
string

Description field

goalId
number

Goal ID

isShared
boolean

Is shared field

competencies
Array of objects

Competencies field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345,
  • "actionId": 12345,
  • "actionName": "sample action name",
  • "dueDate": "2026-05-13",
  • "progress": 50,
  • "description": "sample description",
  • "goalId": 12345,
  • "isShared": true,
  • "competencies": [ ],
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update an action

Updates an action. From routes/learner/actions.js - calls coachActionController.updateAction Backed by controller coachActionController.updateAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

actionName
string

Action name field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

description
string

Description field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "actionName": "sample action name",
  • "dueDate": "2026-05-13",
  • "progress": 50,
  • "description": "sample description"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update action competencies

Updates action competencies. From routes/learner/actions.js - calls coachActionController.updateActionCompetencies Backed by controller coachActionController.updateActionCompetencies.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

competencies
Array of objects

Competencies field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "competencies": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get action details

Retrieves action details. From routes/learner/actions.js - calls coachActionController.getActionDetails Backed by controller coachActionController.getActionDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete an action

Removes an action. From routes/learner/actions.js - calls coachActionController.DeleteAction Backed by controller coachActionController.DeleteAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add comment to an action

Creates comment to an action. From routes/learner/actions.js - calls coachActionController.AddComment Backed by controller coachActionController.AddComment.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

sendToAll
boolean

Send to all field

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "sendToAll": true,
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark action as completed

Submits mark action as completed. From routes/learner/actions.js - calls coachActionController.MarkActionCompleted Backed by controller coachActionController.MarkActionCompleted.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a subtask to an action

Creates a subtask to an action. From routes/learner/actions.js - calls coachActionController.CreateActionSubtask Backed by controller coachActionController.CreateActionSubtask.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

taskName
string

Task name field

taskDesc
string

Task desc field

actionTaskId
number

Action task id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "taskName": "sample task name",
  • "taskDesc": "sample task desc",
  • "actionTaskId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark subtask as completed

Submits mark subtask as completed. From routes/learner/actions.js - calls coachActionController.MarkTaskCompleted Backed by controller coachActionController.MarkTaskCompleted.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionTaskId
number

Action task id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionTaskId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a subtask

Removes a subtask. From routes/learner/actions.js - calls coachActionController.DeleteTask Backed by controller coachActionController.DeleteTask.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionTaskId
number

Action task id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionTaskId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Upload a resource to an action

Uploads a resource to an action. From routes/learner/actions.js - calls coachActionController.UploadResource Backed by controller coachActionController.UploadResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

resourceName
string

Resource name field

fileName
string

File name field

filePath
string

File path field

fileSize
number

File size field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "resourceName": "sample resource name",
  • "fileName": "sample file name",
  • "filePath": "sample file path",
  • "fileSize": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete an action resource

Removes an action resource. From routes/learner/actions.js - calls coachActionController.DeleteResource Backed by controller coachActionController.DeleteResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
resourceId
number

Resource id (identifier)

Responses

Request samples

Content type
application/json
{
  • "resourceId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a link to an action

Creates a link to an action. From routes/learner/actions.js - calls coachActionController.UploadActionLink Backed by controller coachActionController.UploadActionLink.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

linkName
string

Link name field

actionLink
string

Action link field

actionLinkId
number

Action link id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "linkName": "sample link name",
  • "actionLink": "sample action link",
  • "actionLinkId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete an action link

Removes an action link. From routes/learner/actions.js - calls coachActionController.DeleteActionLink Backed by controller coachActionController.DeleteActionLink.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionLinkId
number

Action link id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionLinkId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get group engagements info

Retrieves group engagements info. From routes/learner/actions.js - calls coachActionController.GetGroupEngagementsInfo Backed by controller coachActionController.GetGroupEngagementsInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add follower to an action (not yet used)

Creates follower to an action (not yet used). From routes/learner/actions.js - calls coachActionController.AddFollowerToAction Backed by controller coachActionController.AddFollowerToAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

followerName
string

Follower name field

followerEmail
string <email>

Follower email field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "followerName": "sample follower name",
  • "followerEmail": "user@example.com"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete follower from an action (not yet used)

Removes follower from an action (not yet used). From routes/learner/actions.js - calls coachActionController.DeleteFollowerFromAction Backed by controller coachActionController.DeleteFollowerFromAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

followerId
number

Follower id (identifier)

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "followerId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Inform coach for action (not yet used)

Submits inform coach for action (not yet used). From routes/learner/actions.js - calls coachActionController.UpdateCoacheeForAction Backed by controller coachActionController.UpdateCoacheeForAction.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user engagement program info (not yet used)

Retrieves user engagement program info (not yet used). From routes/learner/actions.js - calls coachActionController.GetUserEngagementProgramInfo Backed by controller coachActionController.GetUserEngagementProgramInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get group engagement program info (not yet used)

Retrieves group engagement program info (not yet used). From routes/learner/actions.js - calls coachActionController.GetGroupEngagementProgramInfo Backed by controller coachActionController.GetGroupEngagementProgramInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add stakeholder (not yet used)

Creates stakeholder (not yet used). From routes/learner/actions.js - calls coachActionController.AddStakeHolder Backed by controller coachActionController.AddStakeHolder.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userDetails
string

User details field

Responses

Request samples

Content type
application/json
{
  • "userDetails": "sample user details"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get stakeholder info (not yet used)

Retrieves stakeholder info (not yet used). From routes/learner/actions.js - calls coachActionController.GetStakeHolderInfo Backed by controller coachActionController.GetStakeHolderInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get group actions (not yet used)

Retrieves group actions (not yet used). From routes/learner/actions.js - calls coachActionController.GetGroupActions Backed by controller coachActionController.GetGroupActions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit action feedback

Submits action feedback. From routes/learner/actions.js - calls coachActionController.submitActionFeedback (userRole=Coachee) Backed by controller coachActionController.submitActionFeedback.

Authorizations:
bearerAuth
Request Body schema: application/json
required
actionId
number

Action ID

rating
number

Rating field

objectivity
number

Objectivity field

efficiency
number

Efficiency field

quality
number

Quality field

accuracy
number

Accuracy field

feedback
string

Feedback field

Responses

Request samples

Content type
application/json
{
  • "actionId": 12345,
  • "rating": 1,
  • "objectivity": 1,
  • "efficiency": 1,
  • "quality": 1,
  • "accuracy": 1,
  • "feedback": "sample feedback"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a goal

Creates a goal. From routes/learner/actions.js - calls coachActionController.AddUpdateGoal Backed by controller coachActionController.AddUpdateGoal.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

goalId
number

Goal ID

programId
number

Program ID

goalName
string

Goal name field

description
string

Description field

comment
string

Comment field

isShared
boolean

Is shared field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "goalId": 12345,
  • "programId": 12345,
  • "goalName": "sample goal name",
  • "description": "sample description",
  • "comment": "sample comment",
  • "isShared": true,
  • "dueDate": "2026-05-13",
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a goal

Updates a goal. From routes/learner/actions.js - calls coachActionController.AddUpdateGoal Backed by controller coachActionController.AddUpdateGoal.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

goalId
number

Goal ID

programId
number

Program ID

goalName
string

Goal name field

description
string

Description field

comment
string

Comment field

isShared
boolean

Is shared field

dueDate
string <date>

Target completion date (ISO 8601)

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "goalId": 12345,
  • "programId": 12345,
  • "goalName": "sample goal name",
  • "description": "sample description",
  • "comment": "sample comment",
  • "isShared": true,
  • "dueDate": "2026-05-13",
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update goal progress

Updates goal progress. From routes/learner/actions.js - calls coachActionController.UpdateGoalProgress Backed by controller coachActionController.UpdateGoalProgress.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

progress
number

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345,
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add comment to a goal (isShared forced to true)

Creates comment to a goal (isShared forced to true). From routes/learner/actions.js - calls coachActionController.AddGoalComment Backed by controller coachActionController.AddGoalComment.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345,
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove a goal

Removes a goal. From routes/learner/actions.js - calls coachActionController.RemoveGoal Backed by controller coachActionController.RemoveGoal.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Activities

Learner - Activities operations

List learner programs

Retrieves learner programs. From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.getPrograms Backed by controller learnerActivitiesController.getPrograms.

Authorizations:
bearerAuth
query Parameters
search
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [ ]
}

Get engagements with actions for a program

Retrieves engagements with actions for a program. From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.getEngagementsWithActionsByProgram Backed by controller learnerActivitiesController.getEngagementsWithActionsByProgram.

Authorizations:
bearerAuth
path Parameters
programId
required
string
query Parameters
status
string
Enum: "In Progress" "Completed" "Overdue"
search
string
sortBy
string
Enum: "dueDate" "createdAt" "updatedAt"
sortOrder
string
Enum: "asc" "desc"

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [ ]
}

Get action details

Retrieves action details. From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.getActionDetails Backed by controller learnerActivitiesController.getActionDetails.

Authorizations:
bearerAuth
path Parameters
actionId
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": { }
}

Update task status (complete/incomplete)

Updates task status (complete/incomplete). From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.updateTaskStatus Backed by controller learnerActivitiesController.updateTaskStatus.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
taskId
required
string
Request Body schema: application/json
required
action
string
Enum: "complete" "incomplete"

Action field

Responses

Request samples

Content type
application/json
{
  • "action": "sample action"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": { }
}

Update action progress

Updates action progress. From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.updateActionProgress Backed by controller learnerActivitiesController.updateActionProgress.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
Request Body schema: application/json
required
progress
number [ 0 .. 100 ]

Progress percentage (0-100)

Responses

Request samples

Content type
application/json
{
  • "progress": 50
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": { }
}

Submit action with files and/or links

Submits action with files and/or links. From routes/learner/connections/activities/activities.js - multipart/form-data upload, calls learnerActivitiesController.submitAction Backed by controller learnerActivitiesController.submitAction.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
Request Body schema: multipart/form-data
required
files[]
Array of strings <binary> [ items <binary > ]

Files[] field

links
string

JSON array of objects with title and url fields

comment
string

Comment field

folder
string

Folder field

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": { }
}

Remove an action submission (file or link)

Removes an action submission (file or link). From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.removeSubmission Backed by controller learnerActivitiesController.removeSubmission.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
type
required
string
Enum: "file" "link"
submissionId
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": { }
}

Send chat message on an action

Sends chat message on an action. From routes/learner/connections/activities/activities.js - calls learnerActivitiesController.sendChatMessage Backed by controller learnerActivitiesController.sendChatMessage.

Authorizations:
bearerAuth
path Parameters
actionId
required
string
Request Body schema: application/json
required
message
string

Human-readable status message

Responses

Request samples

Content type
application/json
{
  • "message": "Operation completed"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": { }
}

Learner - Connection

Learner - Connection operations

Get connected coaches for the learner (external app friendly)

Retrieves connected coaches for the learner (external app friendly). From routes/learner/connection.js - calls learnerConnectionController.getConnectedCoaches Backed by controller learnerConnectionController.getConnectedCoaches.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users (GET variant, legacy)

Retrieves connected users (GET variant, legacy). From routes/learner/connection.js - calls coachConnectionController.getConnectedUsers (userRole=Coachee). TODO remove after UI change. Backed by controller coachConnectionController.getConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users

Retrieves connected users. From routes/learner/connection.js - calls coachConnectionController.getConnectedUsers (userRole=Coachee) Backed by controller coachConnectionController.getConnectedUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user details for a connected user

Retrieves user details for a connected user. From routes/learner/connection.js - calls coachConnectionController.getUserDetails (userRole=Coachee) Backed by controller coachConnectionController.getUserDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get upcoming sessions for a connected user

Retrieves upcoming sessions for a connected user. From routes/learner/connection.js - calls coachConnectionController.getUserUpcomingSessions (userRole=Coachee) Backed by controller coachConnectionController.getUserUpcomingSessions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get pending activities for a connected user

Retrieves pending activities for a connected user. From routes/learner/connection.js - calls coachConnectionController.getUserPendingActivities (userRole=Coachee) Backed by controller coachConnectionController.getUserPendingActivities.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get sessions for a connected user

Retrieves sessions for a connected user. From routes/learner/connection.js - calls coachConnectionController.getUserSessions (userRole=Coachee) Backed by controller coachConnectionController.getUserSessions.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get all sessions for the learner

Retrieves all sessions for the learner. From routes/learner/connection.js - calls coachConnectionController.getAllSessions (userRole=Coachee) Backed by controller coachConnectionController.getAllSessions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user goals for a connection

Retrieves user goals for a connection. From routes/learner/connection.js - calls coachConnectionController.getUserGoals (userRole=Coachee) Backed by controller coachConnectionController.getUserGoals.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get comments on a goal

Retrieves comments on a goal. From routes/learner/connection.js - calls coachConnectionController.getGoalComments Backed by controller coachConnectionController.getGoalComments.

Authorizations:
bearerAuth
Request Body schema: application/json
required
goalId
number

Goal ID

Responses

Request samples

Content type
application/json
{
  • "goalId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Discovery

Learner - Discovery operations

Get matching growth areas

Retrieves matching growth areas. From routes/learner/coach-search.js - calls coachSearchController.getMatchingGrowthAreas Backed by controller coachSearchController.getMatchingGrowthAreas.

Authorizations:
bearerAuth
Request Body schema: application/json
required
statements
Array of strings

Statements field

Responses

Request samples

Content type
application/json
{
  • "statements": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get recommended (searched) coaches

Retrieves recommended (searched) coaches. From routes/learner/coach-search.js - calls coachSearchController.getSearchedCoaches Backed by controller coachSearchController.getSearchedCoaches.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

behaviouralSkills
Array of objects

Behavioural skills field

technicalSkills
Array of objects

Technical skills field

functionalSkills
Array of objects

Functional skills field

userLevel
number

User level field

corporateId
number

Corporate (account) ID

statements
Array of strings

Statements field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "behaviouralSkills": [ ],
  • "technicalSkills": [ ],
  • "functionalSkills": [ ],
  • "userLevel": 1,
  • "corporateId": 12345,
  • "statements": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get past searched coaches

Retrieves past searched coaches. From routes/learner/coach-search.js - calls coachSearchController.getPastSearchedCoaches Backed by controller coachSearchController.getPastSearchedCoaches.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get engaged coaches

Retrieves engaged coaches. From routes/learner/coach-search.js - calls coachSearchController.getEngagedCoaches Backed by controller coachSearchController.getEngagedCoaches.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach search statements

Retrieves coach search statements. From routes/learner/coach-search.js - calls coachSearchController.getCoachSearchStatements Backed by controller coachSearchController.getCoachSearchStatements.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get coach public profile data

Retrieves coach public profile data. From routes/learner/coach-search.js - calls coachProfileController.getPublicProfileData Backed by controller coachProfileController.getPublicProfileData.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get discovery sessions

Retrieves discovery sessions. From routes/learner/coach-search.js - calls coachSearchController.getDiscoverySessions Backed by controller coachSearchController.getDiscoverySessions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit discovery feedback

Submits discovery feedback. From routes/learner/coach-search.js - calls coachSearchController.submitDiscoveryFeedback. No auth middleware. Backed by controller coachSearchController.submitDiscoveryFeedback..

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

comment
string

Comment field

feedbackType
number

Feedback type field

ableToRelateMyNeed
boolean

Able to relate my need field

approachToSession
boolean

Approach to session field

likedSessionStructure
boolean

Liked session structure field

empathetic
boolean

Empathetic field

goodListener
boolean

Good listener field

coachingStyle
boolean

Coaching style field

buildRapport
boolean

Build rapport field

relevantQuestions
boolean

Relevant questions field

comfortableOpening
boolean

Comfortable opening field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "comment": "sample comment",
  • "feedbackType": 1,
  • "ableToRelateMyNeed": true,
  • "approachToSession": true,
  • "likedSessionStructure": true,
  • "empathetic": true,
  • "goodListener": true,
  • "coachingStyle": true,
  • "buildRapport": true,
  • "relevantQuestions": true,
  • "comfortableOpening": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Home

Learner - Home operations

Calculate learner profile completeness percentage

Retrieves calculate learner profile completeness percentage. From routes/learner/home.js - calls coachHomeController.getProfileCompletePercentage Backed by controller coachHomeController.getProfileCompletePercentage.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users (GET variant, legacy)

Retrieves connected users (GET variant, legacy). From routes/learner/home.js - calls coachHomeController.getConnectedUsers (userRole=Coachee). TODO remove after UI change. Backed by controller coachHomeController.getConnectedUsers.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get connected users

Retrieves connected users. From routes/learner/home.js - calls coachHomeController.getConnectedUsers (userRole=Coachee) Backed by controller coachHomeController.getConnectedUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user details (coach details for a learner)

Retrieves user details (coach details for a learner). From routes/learner/home.js - calls coachHomeController.getUserDetails (userRole=Coachee) Backed by controller coachHomeController.getUserDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get upcoming sessions for learner

Retrieves upcoming sessions for learner. From routes/learner/home.js - calls coachHomeController.getUpcomingSessions (userRole=Coachee) Backed by controller coachHomeController.getUpcomingSessions.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get pending activities for learner

Retrieves pending activities for learner. From routes/learner/home.js - calls coachHomeController.getPendingActivities (userRole=Coachee) Backed by controller coachHomeController.getPendingActivities.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user calendar availabilities

Retrieves user calendar availabilities. From routes/learner/home.js - calls coachHomeController.getUsersAvailabilitiesNew Backed by controller coachHomeController.getUsersAvailabilitiesNew.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

userRole
string
Enum: "admin" "coach" "coachee" "manager" "groupadmin" "superadmin"

Application role of the user

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "userRole": "coach"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user's default video conference info

Retrieves user's default video conference info. From routes/learner/home.js - calls coachHomeController.getUsersDefaultVcInfo Backed by controller coachHomeController.getUsersDefaultVcInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user goals

Retrieves user goals. From routes/learner/home.js - calls coachHomeController.getUserGoals (userRole=Coachee) Backed by controller coachHomeController.getUserGoals.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

coachId
number

Coach's user ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "coachId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Check if last session feedback is given

Checks if last session feedback is given. From routes/learner/home.js - calls coachHomeController.isSessionFeedbackGiven (userRole=Coachee) Backed by controller coachHomeController.isSessionFeedbackGiven.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Show platform feedback options

Retrieves platform feedback options. From routes/learner/home.js - calls coachHomeController.showPlatformFeedback Backed by controller coachHomeController.showPlatformFeedback.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit platform feedback

Submits platform feedback. From routes/learner/home.js - calls coachHomeController.submitPlatformFeedback Backed by controller coachHomeController.submitPlatformFeedback.

Authorizations:
bearerAuth
Request Body schema: application/json
required
rating
number

Rating field

feedback
string

Feedback field

easeOfUsage
boolean

Ease of usage field

usefullness
boolean

Usefullness field

goalAchievement
boolean

Goal achievement field

progress
boolean

Progress percentage (0-100)

valueOfTime
boolean

Value of time field

valueOfService
boolean

Value of service field

Responses

Request samples

Content type
application/json
{
  • "rating": 1,
  • "feedback": "sample feedback",
  • "easeOfUsage": true,
  • "usefullness": true,
  • "goalAchievement": true,
  • "progress": true,
  • "valueOfTime": true,
  • "valueOfService": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

View report (handler not implemented in controller)

Submits view report (handler not implemented in controller). From routes/learner/home.js - calls coachHomeController.viewReport Backed by controller coachHomeController.viewReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get active programs for learner

Retrieves active programs for learner. From routes/learner/home.js - calls learnerHomeController.getActivePrograms Backed by controller learnerHomeController.getActivePrograms.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get program info (with components and health)

Retrieves program info (with components and health). From routes/learner/home.js - calls learnerHomeController.getProgramInfo Backed by controller learnerHomeController.getProgramInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get program insights for learner

Retrieves program insights for learner. From routes/learner/home.js - calls learnerHomeController.getProgramInsights Backed by controller learnerHomeController.getProgramInsights.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get assessment info for learner

Retrieves assessment info for learner. From routes/learner/home.js - calls learnerHomeController.getAssessmentInfo Backed by controller learnerHomeController.getAssessmentInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get development plan (AI-generated)

Retrieves development plan (AI-generated). From routes/learner/home.js - calls learnerHomeController.getDevelopmentPlan Backed by controller learnerHomeController.getDevelopmentPlan.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

blindSpots
Array of objects

Blind spots field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "blindSpots": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get learner leaderboard

Retrieves learner leaderboard. From routes/learner/home.js - calls learnerHomeController.getLeaderboard Backed by controller learnerHomeController.getLeaderboard.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Send email/query to admin

Sends email/query to admin. From routes/learner/home.js - calls learnerHomeController.sendEmailToAdmin Backed by controller learnerHomeController.sendEmailToAdmin.

Authorizations:
bearerAuth
Request Body schema: application/json
required
programId
number

Program ID

subject
string

Subject field

description
string

Description field

Responses

Request samples

Content type
application/json
{
  • "programId": 12345,
  • "subject": "sample subject",
  • "description": "sample description"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Insights

Learner - Insights operations

Get filter options for learner insights

Retrieves filter options for learner insights. From routes/learner/insights.js - calls learnerInsightsController.getFilterData Backed by controller learnerInsightsController.getFilterData.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get learner insight statistics

Retrieves learner insight statistics. From routes/learner/insights.js - calls learnerInsightsController.getLeanerInsightStatistics Backed by controller learnerInsightsController.getLeanerInsightStatistics.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

programId
number

Program ID

startDate
string <date>

Start date (ISO 8601)

endDate
string <date>

End date (ISO 8601)

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "programId": 12345,
  • "startDate": "2026-05-13",
  • "endDate": "2026-05-13",
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Notes

Learner - Notes operations

Get engagement notes for a user

Retrieves engagement notes for a user. From routes/learner/notes.js - calls coachNoteController.GetEngagementNotes Backed by controller coachNoteController.GetEngagementNotes.

Authorizations:
bearerAuth
Request Body schema: application/json
required
engagementId
number

Engagement ID

engagementType
string

Engagement type field

Responses

Request samples

Content type
application/json
{
  • "engagementId": 12345,
  • "engagementType": "sample engagement type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get session notes

Retrieves session notes. From routes/learner/notes.js - calls coachNoteController.GetSessionNotes Backed by controller coachNoteController.GetSessionNotes.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add a note

Creates a note. From routes/learner/notes.js - calls coachNoteController.AddUpdateNote Backed by controller coachNoteController.AddUpdateNote.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

noteType
string

Note type field

noteTitle
string

Note title field

textNote
string

Text note field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345,
  • "noteType": "sample note type",
  • "noteTitle": "sample note title",
  • "textNote": "sample text note",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update a note

Updates a note. From routes/learner/notes.js - calls coachNoteController.AddUpdateNote Backed by controller coachNoteController.AddUpdateNote.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

noteType
string

Note type field

noteTitle
string

Note title field

textNote
string

Text note field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345,
  • "noteType": "sample note type",
  • "noteTitle": "sample note title",
  • "textNote": "sample text note",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update note summary

Updates note summary. From routes/learner/notes.js - calls coachNoteController.updateNoteSummary Backed by controller coachNoteController.updateNoteSummary.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

noteSummary
string

Note summary field

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345,
  • "noteSummary": "sample note summary"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Delete a note

Removes a note. From routes/learner/notes.js - calls coachNoteController.DeleteNote Backed by controller coachNoteController.DeleteNote.

Authorizations:
bearerAuth
Request Body schema: application/json
required
noteId
number

Note ID

Responses

Request samples

Content type
application/json
{
  • "noteId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Upload voice note resource (resourceType=VOICE)

Uploads voice note resource (resourceType=VOICE). From routes/learner/notes.js - calls coachNoteController.UploadNoteResource Backed by controller coachNoteController.UploadNoteResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
resourceTitle
string

Resource title field

fileName
string

File name field

filePath
string

File path field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "resourceTitle": "sample resource title",
  • "fileName": "sample file name",
  • "filePath": "sample file path",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Upload file note resource (resourceType=FILE)

Uploads file note resource (resourceType=FILE). From routes/learner/notes.js - calls coachNoteController.UploadNoteResource Backed by controller coachNoteController.UploadNoteResource.

Authorizations:
bearerAuth
Request Body schema: application/json
required
resourceTitle
string

Resource title field

fileName
string

File name field

filePath
string

File path field

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "resourceTitle": "sample resource title",
  • "fileName": "sample file name",
  • "filePath": "sample file path",
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Profile

Learner - Profile operations

Update learner profile image

Updates learner profile image. From routes/learner/profile.js - calls coachProfileController.updateProfileImage Backed by controller coachProfileController.updateProfileImage.

Authorizations:
bearerAuth
Request Body schema: application/json
required
profileImage
string

Profile image field

Responses

Request samples

Content type
application/json
{
  • "profileImage": "sample profile image"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update learner profile banner

Updates learner profile banner. From routes/learner/profile.js - calls coachProfileController.updateProfileBanner Backed by controller coachProfileController.updateProfileBanner.

Authorizations:
bearerAuth
Request Body schema: application/json
required
bannerImage
string

Banner image field

Responses

Request samples

Content type
application/json
{
  • "bannerImage": "sample banner image"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get learner education info

Retrieves learner education info. From routes/learner/profile.js - calls coachProfileController.educationInfo Backed by controller coachProfileController.educationInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add learner education info

Creates learner education info. From routes/learner/profile.js - calls coachProfileController.addEducationInfo Backed by controller coachProfileController.addEducationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
studyField
string

Study field field

qualification
string

Qualification field

university
string

University field

Responses

Request samples

Content type
application/json
{
  • "studyField": "sample study field",
  • "qualification": "sample qualification",
  • "university": "sample university"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove learner education info

Removes learner education info. From routes/learner/profile.js - calls coachProfileController.removeEducationInfo Backed by controller coachProfileController.removeEducationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
educationInfo
object

Education info field

Responses

Request samples

Content type
application/json
{
  • "educationInfo": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Add learner organization info

Creates learner organization info. From routes/learner/profile.js - calls coachProfileController.addOrganizationInfo Backed by controller coachProfileController.addOrganizationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
organizationsWorked
Array of objects

Organizations worked field

Responses

Request samples

Content type
application/json
{
  • "organizationsWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Remove learner organization info

Removes learner organization info. From routes/learner/profile.js - calls coachProfileController.removeOrganizationInfo Backed by controller coachProfileController.removeOrganizationInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
organizationName
string

Organization name field

Responses

Request samples

Content type
application/json
{
  • "organizationName": "sample organization name"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get learner corporate experience info

Retrieves learner corporate experience info. From routes/learner/profile.js - calls coachProfileController.getUserCorporateInfo Backed by controller coachProfileController.getUserCorporateInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update learner corporate experience info

Updates learner corporate experience info. From routes/learner/profile.js - calls coachProfileController.updateUserCorporateInfo Backed by controller coachProfileController.updateUserCorporateInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
corporateExp
number

Corporate exp field

corporateExpYear
number

Corporate exp year field

corporateExpMonth
number

Corporate exp month field

industries
Array of objects

Industries field

functions
Array of objects

Functions field

currentRole
number

Current role field

designation
string

Designation field

organizationsWorked
Array of objects

Organizations worked field

Responses

Request samples

Content type
application/json
{
  • "corporateExp": 1,
  • "corporateExpYear": 1,
  • "corporateExpMonth": 1,
  • "industries": [ ],
  • "functions": [ ],
  • "currentRole": 1,
  • "designation": "sample designation",
  • "organizationsWorked": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get learner profile progress info

Retrieves learner profile progress info. From routes/learner/profile.js - calls coachProfileController.getProfileProgressInfo Backed by controller coachProfileController.getProfileProgressInfo.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get learner calendar status info

Retrieves learner calendar status info. From routes/learner/profile.js - calls coachProfileController.getCalendarStatus (userRole forced to Learner) Backed by controller coachProfileController.getCalendarStatus.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Session

Learner - Session operations

Add (create) session

Creates (create) session. From routes/learner/session.js - calls coachSessionController.createSession (userRole=Coachee) Backed by controller coachSessionController.createSession.

Authorizations:
bearerAuth
Request Body schema: application/json
required
coachId
number

Coach's user ID

userId
number

Internal user ID (foreign key)

engagementId
number

Engagement ID

programId
number

Program ID

sessionName
string

Session name field

sessionDesc
string

Session desc field

sessionType
string

Session type field

startDateTime
string <date-time>

Start date time field

endDateTime
string <date-time>

End date time field

duration
number

Duration field

timezone
string

Timezone field

sessionMode
number

Session mode field

vcToolType
string

Vc tool type field

vcToolLink
string

Vc tool link field

location
string

Location field

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "coachId": 12345,
  • "userId": 12345,
  • "engagementId": 12345,
  • "programId": 12345,
  • "sessionName": "sample session name",
  • "sessionDesc": "sample session desc",
  • "sessionType": "sample session type",
  • "startDateTime": "2026-05-13T09:00:00.000Z",
  • "endDateTime": "2026-05-13T09:00:00.000Z",
  • "duration": 1,
  • "timezone": "sample timezone",
  • "sessionMode": 1,
  • "vcToolType": "sample vc tool type",
  • "vcToolLink": "sample vc tool link",
  • "location": "sample location",
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update session name

Updates session name. From routes/learner/session.js - calls coachSessionController.updateSessionName (userRole=Coachee) Backed by controller coachSessionController.updateSessionName.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionName
string

Session name field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionName": "sample session name"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Reschedule a session

Submits reschedule a session. From routes/learner/session.js - calls coachSessionController.rescheduleSession (userRole=Coachee). No auth middleware. Backed by controller coachSessionController.rescheduleSession.

Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

startDateTime
string <date-time>

Start date time field

endDateTime
string <date-time>

End date time field

timezone
string

Timezone field

comment
string

Comment field

sessionName
string

Session name field

sessionMode
number

Session mode field

vcType
string

Vc type field

meetingUrl
string <uri>

Meeting url field

saveAsDefaultVcLink
boolean

Save as default vc link field

location
string

Location field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "startDateTime": "2026-05-13T09:00:00.000Z",
  • "endDateTime": "2026-05-13T09:00:00.000Z",
  • "timezone": "sample timezone",
  • "comment": "sample comment",
  • "sessionName": "sample session name",
  • "sessionMode": 1,
  • "vcType": "sample vc type",
  • "saveAsDefaultVcLink": true,
  • "location": "sample location"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Cancel a session

Removes a session. From routes/learner/session.js - calls coachSessionController.cancelSession (userRole=Coachee). No auth middleware. Backed by controller coachSessionController.cancelSession.

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

comment
string

Comment field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "comment": "sample comment"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Accept a session (learner)

Accepts a session (learner). From routes/learner/session.js - calls learnerSessionController.learnerAcceptSession. No auth middleware. Backed by controller learnerSessionController.learnerAcceptSession..

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get session meeting info

Retrieves session meeting info. From routes/learner/session.js - calls coachSessionController.GetSessionMeetingInfo. No auth middleware. Backed by controller coachSessionController.GetSessionMeetingInfo..

Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get user feedback info for a session

Retrieves user feedback info for a session. From routes/learner/session.js - calls coachSessionController.getUserFeedbackInfo (userRole=Coachee) Backed by controller coachSessionController.getUserFeedbackInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit session feedback (routes to OneOnOne, Group, or Workshop based on sessionType)

Submits submit session feedback (routes to OneOnOne, Group, or Workshop based on sessionType). From routes/learner/session.js - dispatches to learnerSessionController.submitSessionFeedback or submitGroupSessionFeedback. No auth middleware.

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

rating
number

Rating field

comment
string

Comment field

coachHelpedToProgress
boolean

Coach helped to progress field

actionPlansHelped
boolean

Action plans helped field

coachAndIWorkedOnMyGoals
boolean

Coach and iworked on my goals field

timeSpentEfficiently
boolean

Time spent efficiently field

usefulActivities
boolean

Useful activities field

understoodByMyCoach
boolean

Understood by my coach field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "rating": 1,
  • "comment": "sample comment",
  • "coachHelpedToProgress": true,
  • "actionPlansHelped": true,
  • "coachAndIWorkedOnMyGoals": true,
  • "timeSpentEfficiently": true,
  • "usefulActivities": true,
  • "understoodByMyCoach": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit group session feedback

Submits group session feedback. From routes/learner/session.js - calls learnerSessionController.submitGroupSessionFeedback. No auth middleware. Backed by controller learnerSessionController.submitGroupSessionFeedback..

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

rating
number

Rating field

comment
string

Comment field

coachHelpedToProgress
boolean

Coach helped to progress field

coachWorkedOnOurGoals
boolean

Coach worked on our goals field

feltConnectedWithCoach
boolean

Felt connected with coach field

feltUnderstoodByCoach
boolean

Felt understood by coach field

timeSpentEfficiently
boolean

Time spent efficiently field

usefulActivities
boolean

Useful activities field

comfortableWithOtherMembers
boolean

Comfortable with other members field

knowledgeSharingInGroup
boolean

Knowledge sharing in group field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "rating": 1,
  • "comment": "sample comment",
  • "coachHelpedToProgress": true,
  • "coachWorkedOnOurGoals": true,
  • "feltConnectedWithCoach": true,
  • "feltUnderstoodByCoach": true,
  • "timeSpentEfficiently": true,
  • "usefulActivities": true,
  • "comfortableWithOtherMembers": true,
  • "knowledgeSharingInGroup": true
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit workshop session feedback

Submits workshop session feedback. From routes/learner/session.js - calls learnerSessionController.submitWorkSessionFeedback. No auth middleware. Backed by controller learnerSessionController.submitWorkSessionFeedback..

Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

achieveObjectives
number

Achieve objectives field

contentRelevance
number

Content relevance field

alignedExpectations
number

Aligned expectations field

effectiveActivities
number

Effective activities field

toolsAndApproaches
number

Tools and approaches field

actionStepsClarity
number

Action steps clarity field

facilitatorEnvironment
number

Facilitator environment field

feltHeardAndIncluded
number

Felt heard and included field

facilitatorEffectiveness
number

Facilitator effectiveness field

keyInsight
string

Key insight field

furtherLearning
string

Further learning field

workshopImprovement
string

Workshop improvement field

rating
number

Rating field

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "achieveObjectives": 1,
  • "contentRelevance": 1,
  • "alignedExpectations": 1,
  • "effectiveActivities": 1,
  • "toolsAndApproaches": 1,
  • "actionStepsClarity": 1,
  • "facilitatorEnvironment": 1,
  • "feltHeardAndIncluded": 1,
  • "facilitatorEffectiveness": 1,
  • "keyInsight": "sample key insight",
  • "furtherLearning": "sample further learning",
  • "workshopImprovement": "sample workshop improvement",
  • "rating": 1
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

View session reflection

Submits view session reflection. From routes/learner/session.js - calls coachSessionController.getSessionReflection Backed by controller coachSessionController.getSessionReflection.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update meeting info on a session

Updates meeting info on a session. From routes/learner/session.js - calls coachSessionController.updateMeetingInfo Backed by controller coachSessionController.updateMeetingInfo.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

invities
Array of objects

Invities field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "invities": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Mark session joined by coachee

Submits mark session joined by coachee. From routes/learner/session.js - calls coachSessionController.markSessionJoinedByCoachee (userRole=Coachee) Backed by controller coachSessionController.markSessionJoinedByCoachee.

Authorizations:
bearerAuth
Request Body schema: application/json
required
userId
number

Internal user ID (foreign key)

sessionId
number

Session ID

sessionType
string

Session type field

calType
string

Cal type field

eventId
string <uuid>

Event id (identifier)

Responses

Request samples

Content type
application/json
{
  • "userId": 12345,
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "calType": "sample cal type",
  • "eventId": "550e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Check if AI coaching is allowed

Checks if AI coaching is allowed. From routes/learner/session.js - calls learnerSessionController.isAICoachingAllowed Backed by controller learnerSessionController.isAICoachingAllowed.

Authorizations:
bearerAuth
Request Body schema: application/json
required
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Start an AI coaching session

Starts an AI coaching session. From routes/learner/session.js - calls learnerSessionController.startAICoachingSession Backed by controller learnerSessionController.startAICoachingSession.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
string <uuid>

Session ID

programId
number

Program ID

Responses

Request samples

Content type
application/json
{
  • "sessionId": "550e8400-e29b-41d4-a716-446655440000",
  • "programId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

End an AI coaching session

Ends an AI coaching session. From routes/learner/session.js - calls learnerSessionController.endAICoachingSession Backed by controller learnerSessionController.endAICoachingSession.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
string <uuid>

Session ID

Responses

Request samples

Content type
application/json
{
  • "sessionId": "550e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Save AI coaching session data

Saves aI coaching session data. From routes/learner/session.js - calls learnerSessionController.saveAICoachingSessionData Backed by controller learnerSessionController.saveAICoachingSessionData.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
string <uuid>

Session ID

saveSessionData
boolean

Save session data field

summary
object

Summary field

goals
Array of objects

Goals field

actions
Array of objects

Actions field

Responses

Request samples

Content type
application/json
{
  • "sessionId": "550e8400-e29b-41d4-a716-446655440000",
  • "saveSessionData": true,
  • "summary": { },
  • "goals": [ ],
  • "actions": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Update AI coaching session rating

Updates aI coaching session rating. From routes/learner/session.js - calls learnerSessionController.updateAICoachingSessionRating Backed by controller learnerSessionController.updateAICoachingSessionRating.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
string <uuid>

Session ID

rating
string

Rating field

Responses

Request samples

Content type
application/json
{
  • "sessionId": "550e8400-e29b-41d4-a716-446655440000",
  • "rating": "sample rating"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Invite users to a session

Invites a user to users to a session. From routes/learner/session.js - calls coachSessionController.inviteSessionUsers Backed by controller coachSessionController.inviteSessionUsers.

Authorizations:
bearerAuth
Request Body schema: application/json
required
sessionId
number

Session ID

sessionType
string

Session type field

invitedUsers
Array of objects

Invited users field

Responses

Request samples

Content type
application/json
{
  • "sessionId": 12345,
  • "sessionType": "sample session type",
  • "invitedUsers": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Learner - Tools

Learner - Tools operations

Get coaching tools for coachee

Retrieves coaching tools for coachee. From routes/learner/coaching_tool.js - calls coachingToolController.GetCoachingToolsForCoachee Backed by controller coachingToolController.GetCoachingToolsForCoachee.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool instance details

Retrieves tool instance details. From routes/learner/coaching_tool.js - calls coachingToolController.GetToolInstanceDetails Backed by controller coachingToolController.GetToolInstanceDetails.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Save coaching tool instance (draft)

Saves coaching tool instance (draft). From routes/learner/coaching_tool.js - calls coachingToolController.SaveCoachingToolInstance Backed by controller coachingToolController.SaveCoachingToolInstance.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

toolStructure
object

Tool structure field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "toolStructure": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit coaching tool (coachee)

Submits coaching tool (coachee). From routes/learner/coaching_tool.js - calls coachingToolController.SubmitCoachingToolByCoachee Backed by controller coachingToolController.SubmitCoachingToolByCoachee.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

toolStructure
object

Tool structure field

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "toolStructure": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Share tool with stakeholders

Submits share tool with stakeholders. From routes/learner/coaching_tool.js - calls coachingToolController.SharingWithStakeHolders Backed by controller coachingToolController.SharingWithStakeHolders.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

stakeHolderInfo
Array of objects

Stake holder info field

dueDate
string <date>

Target completion date (ISO 8601)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "stakeHolderInfo": [ ],
  • "dueDate": "2026-05-13"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get stakeholder shared list for coachee

Retrieves stakeholder shared list for coachee. From routes/learner/coaching_tool.js - calls coachingToolController.GetCoacheeStakeholderSharedList Backed by controller coachingToolController.GetCoacheeStakeholderSharedList.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get stakeholder sharing report

Retrieves stakeholder sharing report. From routes/learner/coaching_tool.js - calls coachingToolController.GetStakeHolderSharingReport Backed by controller coachingToolController.GetStakeHolderSharingReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get tool details using access key (public)

Retrieves tool details using access key (public). From routes/learner/coaching_tool.js - calls coachingToolController.GetToolDetailsWithAccessKey. No auth middleware. Backed by controller coachingToolController.GetToolDetailsWithAccessKey..

Request Body schema: application/json
required
accessKey
string

Access key field

Responses

Request samples

Content type
application/json
{
  • "accessKey": "sample access key"
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Save tool using access key (public)

Saves tool using access key (public). From routes/learner/coaching_tool.js - calls coachingToolController.SaveCoachingToolWithAccessKey. No auth middleware. Backed by controller coachingToolController.SaveCoachingToolWithAccessKey..

Request Body schema: application/json
required
accessKey
string

Access key field

isAnonymous
boolean

Is anonymous field

toolStructure
object

Tool structure field

Responses

Request samples

Content type
application/json
{
  • "accessKey": "sample access key",
  • "isAnonymous": true,
  • "toolStructure": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Submit tool using access key (public)

Submits tool using access key (public). From routes/learner/coaching_tool.js - calls coachingToolController.SubmitCoachingToolWithAccessKey. No auth middleware. Backed by controller coachingToolController.SubmitCoachingToolWithAccessKey..

Request Body schema: application/json
required
accessKey
string

Access key field

isAnonymous
boolean

Is anonymous field

toolStructure
object

Tool structure field

Responses

Request samples

Content type
application/json
{
  • "accessKey": "sample access key",
  • "isAnonymous": true,
  • "toolStructure": { }
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Send reminder to stakeholder to submit

Sends reminder to stakeholder to submit. From routes/learner/coaching_tool.js - calls coachingToolController.SendReminderToStakeHolderToSubmit Backed by controller coachingToolController.SendReminderToStakeHolderToSubmit.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

stakeHolderId
Array of numbers

Stake holder id (identifier)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "stakeHolderId": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Recall tool from stakeholders

Submits recall tool from stakeholders. From routes/learner/coaching_tool.js - calls coachingToolController.RecallToolForStakeholders Backed by controller coachingToolController.RecallToolForStakeholders.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

stakeHolderId
Array of numbers

Stake holder id (identifier)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "stakeHolderId": [ ]
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Share tool report with coach

Submits share tool report with coach. From routes/learner/coaching_tool.js - calls coachingToolController.ShareToolReportWithCoach Backed by controller coachingToolController.ShareToolReportWithCoach.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

userId
number

Internal user ID (foreign key)

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345,
  • "userId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}

Get self tool report (coachee)

Retrieves self tool report (coachee). From routes/learner/coaching_tool.js - calls coachingToolController.GetCoacheeSelfToolReport Backed by controller coachingToolController.GetCoacheeSelfToolReport.

Authorizations:
bearerAuth
Request Body schema: application/json
required
toolId
number

Coaching tool ID

Responses

Request samples

Content type
application/json
{
  • "toolId": 12345
}

Response samples

Content type
application/json
{
  • "result": "SUCCESS",
  • "message": "Operation completed",
  • "data": { }
}