KinesteX

AI Trainer Chat Parameters

Parameters specific to the AI Trainer Chat view. Applies to: AI Trainer only — every other integration option ignores them.


ParameterTypeDefaultApplies toWhat it does internally
isSubscribedbooleantrueAI TrainerMissing or true = subscribed. Only an explicit false (string "false" is also accepted for URL launches) gates workout generation and triggers the open_subscription_flow event — see the subscription gating guide. For session-authenticated companies the backend's subscription status overrides this flag entirely — the server is the source of truth and also gates generation server-side
subscriptionReturnUrlstringAI TrainerFor link/standalone integrations with no host app: non-subscribed users are redirected here at the generation step instead of receiving open_subscription_flow. Accepts https:// URLs or app deep links; script-executing schemes are rejected
aiTrainerNamestringAI TrainerRenames the AI trainer everywhere it's labelled (header title, reply labels). Shown verbatim in every language
aiTrainerColorstringAI TrainerRecolors the trainer's star icon — any CSS color, e.g. "#7C3AED". Missing = the theme's brand color

Runtime subscription reply: after your host handles open_subscription_flow, post { subscription_result: "purchased" } (resumes the parked generation) or { subscription_result: "dismissed" } back to the WebView.


Fitness-profile prefill fields (same names as the trainer_profile_updated event, so you can round-trip the schema; invalid values are silently dropped, never errored):


FieldAccepted values
fitness_goalsstring[] from: weight_loss, muscle_gain, strength, general_fitness, wellness_flexibility, cardio_endurance
injuriesArray of { body_part, preference, severity }. body_part: Neck, Shoulders, Chest, Arms, Forearms, Abdomen, Knees, Hips, Ankles, Upper Back, Lower Back, Glutes, Hamstrings, Calves, Heels (case/underscore-insensitive). preference: avoid (default) or include. severity (optional): light, moderate, severe. Empty array = explicitly "no injuries"
health_conditionsstring[] — standard values: Diabetes, Hypertension, Asthma, Osteoporosis, Other. Non-standard strings are kept as free-text "Other" details
fitness_level_pushups"0-5", "6-15", "16+"
fitness_level_squats"0-10", "11-21", "22+"
fitness_level_cardioOne of the cardio self-assessment sentences shown in the trainer wizard (unrecognized values make the wizard re-ask)
other_preferencesFree text

See Pre-filling user data for the full guide. Prefill seeds the wizard's answers — the questions are still shown, pre-answered. Demographics (age/height/weight/gender/lifestyle) also prefill the trainer, but only when explicitly provided at launch.