KinesteX

Feedback Events

Events dispatched when a user submits feedback.


EventDescription
feedback_submittedUser submitted training rating or per-exercise feedback

Training Feedback Payload:

typescript
1{
2  type: "feedback_submitted",
3  source: string,              // Where the feedback was given, e.g. "Form End"
4                               // or "No reps detected - <exerciseId>"
5  rating: string,              // "feedback.Too hard", "feedback.Hard", "feedback.Okay",
6                               // "feedback.Good", "feedback.Perfect", or ""
7  is_like: boolean,            // Whether the user liked the workout
8  description: string,         // Text feedback
9  workout_id: string | null,   // Workout ID
10  workout_title: string | null // Workout name
11}

Any source other than "exercise_feedback" is training feedback. Don't match on exact source strings; they can change.


Per-Exercise Feedback Payload (source: "exercise_feedback"):

typescript
1{
2  type: "feedback_submitted",
3  source: "exercise_feedback",
4  workout_id: string,          // Workout ID
5  workout_title: string,       // Workout name
6  feedbacks: Array<{           // Per-exercise feedback entries
7    exercise_id: string,       // Exercise ID
8    exercise_title: string,    // Exercise name
9    is_like: boolean,          // Whether the user liked the exercise
10    description: string        // Optional text feedback
11  }>
12}