The structure returned by POST /api/protocols/v2/analyze, per activity type.
Every family is documented, and the field lists have been verified against the live API. One assessment is documented from its result definition only, because no recording of it was available: posture pictures.
Every analyse call returns the same outer structure, irrespective of the activity types involved.
POST /api/protocols/v2/analyze?detailed=false
[ "f8055bc0-…" ]
→ {
"protocolsResults": [
{
"protocolCode": "f8055bc0-…",
"activitiesResults": "{ … }" ← stringified JSON, shape depends on activity type
}
]
}
activitiesResultsThis field is a string containing JSON, not a nested object. It must be parsed a second time before use:
const results = JSON.parse(protocolResult.activitiesResults);
The contents of the parsed object depend on the exerciseType and
activityType of the activity analysed. A strength test and a balance test return
different measures, so no single schema covers all of them.
detailed flag| Value | Returns | Use when |
|---|---|---|
false (default) | Summary values per activity | Lists, dashboards and progression over time. |
true | Adds the per-repetition breakdown | Rendering a single session in detail. The response grows considerably. |
A family corresponds to an interface — the measurement method chosen when an activity is created. Every activity built on the same interface returns the same result structure, whichever body part or assessment it belongs to.
A practitioner arrives at an interface in one of two ways:
Either route produces the same result shape, so the interface is what determines how a response should be read.
Families divide the same way the application does: assessments, which measure a participant's current capacity, and training, which prescribes work against a reference an assessment has already established.
| Family | Sensors | What the interface assesses | |
|---|---|---|---|
| Assessments | |||
| Max Evaluation Endurance |
K-Grip, K-Pull, K-Move, K-Bubble, K-Myo | Max Evaluation — the maximal capacity in a specific situation. The max
corresponds to 100% of the participant's abilities: a short, strong effort, useful as a
work reference. Endurance — the ability to keep a physical effort over time: a long, sustained effort, described best by the average. |
|
| Jump Analysis | K-Plates, K-Deltas, K-Deltas 3D | Jump height together with the propelling parameters, thrust and rate of force development. | |
| Stance Evaluation | K-Plates, K-Deltas, K-Deltas 3D | Centre-of-pressure parameters while standing: surface, displacement and amplitude. | |
| Dynamic Report | K-Plates, K-Deltas, K-Deltas 3D | Ground reaction forces measured while moving: squats, hops, landings and changes of direction, including the single-leg hop, skater jump, forward horizontal jump and drop and side jump. | |
| Total Evaluation | K-Plates, K-Deltas, K-Myo | A single effort measured across both limbs at once, such as the isometric mid-thigh pull. Includes the body-weight measurement. | |
| Nordic Hamstring | K-Pull, K-Deltas | The Nordic hamstring test, in a standard and an advanced variant. | |
| K-Power field tests | K-Power | Sprint, long sprint, agility, ADA and 3-hop field tests. Barbell lifts recorded with K-Power are not here — they are a Dynamic Report. | |
| Timed functional tests | K-Move, K-Plates | Timed up and go, climbing nine stairs, and tests combining two device types. | |
| Records without a measurement | no sensor | Posture photographs, free-timer activities and free-mode records. | |
| Questionnaires | no sensor | Answers scored into an index: WOMAC, IKDC, VISA, ODI, FAAM and related instruments. | |
| Training | |||
| Rep Count | K-Grip, K-Pull, K-Power | Work in a targeted way against an assessment reference, over a set number of repetitions and a target expressed as a percentage of the max. | |
| Isometric | K-Grip, K-Pull, K-Myo | A sustained, static contraction held in an unchanged position, over a number of repetitions and against a target. | |
| Tempo | K-Grip, K-Pull, K-Myo | Repetitions performed to a controlled speed, with the eccentric, isometric, concentric and rest phases timed separately. | |
| Static Distribution | K-Plates, K-Deltas | Holding a target weight distribution for as long as possible, scored on time spent on target. | |
| Games | K-Plates, K-Deltas | Rehabilitation games, scored by the training mode the game was configured with. | |
Family names below the documented one are provisional and will be revised as each is written.
An activity records which of the two it is in its activityType:
EVALUATION or EXERCISE. The grouping above reflects how each interface is
normally used rather than a restriction — the result structure a family returns is the same either
way.
One sensor, one effort at a time. Max Evaluation captures the strongest moment of a short effort; Endurance captures how well an effort is held over time. Both return the structure below, so they are documented together.
The built-in Grip Strength assessment is a Max Evaluation on K-Grip, and is used as the worked example throughout this section.
Any activity built on the Max Evaluation or Endurance interface, on any of these sensors:
| Device | _device | What it measures | Unit |
|---|---|---|---|
| K-Grip | KFORCE_GRIP | Grip force. This is the sensor behind the built-in Grip Strength assessment. | Kg |
| K-Pull | LINK | Pull and push force, for manual muscle testing against a fixed point or a strap. | Kg |
| K-Move | SENS | Joint angle, for range-of-motion measurements. | ° |
| K-Bubble | BUBBLE | Force applied through an inflatable tool. The tool is already accounted for during measurement, so the value arrives as a force. | Kg |
| K-Myo | EMG | Muscle activation. Values are carried in _emgChannelsData; the force
fields read zero. |
see EMG |
The field that selects the family is the activity's exercise type — here
METER or METER_ENDURANCE. That field will be documented alongside the
protocol structure; it is named here only so the routing can be traced in full.
The primary measurement carries a different quantity per device. The same fields hold force, angle or pressure depending on the sensor used:
K-Grip, K-Pull and K-Bubble report kilograms-force.
K-Move reports degrees of rotation. K-Myo
reports zero in every force field and carries its values in _emgChannelsData
instead.
The tables below write this shared unit as Kg | °. The sensor is identifiable
per repetition from _device.
Aggregates across all repetitions. Every …PerSide field is an array of
{"_key": <body side>, "_value": <number>}, where the side is one of
LEFT, RIGHT, BOTH, NONE or
UNKNOWN.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| includeAllFields | boolean | — | Mirrors the detailed query parameter. When true, each repetition also
carries the raw signal arrays. |
| _resultsPerRep | array | — | One entry per repetition. See the next table. |
| _maxPerSide | array | Kg | ° | Highest _maxValue recorded on that side. |
| _meanOfMaxPerSide | array | Kg | ° | Mean of the per-repetition _maxValue for that side. |
| _meanRfdPerSide | array | Kg/s | Mean of the per-repetition _rfdToMax for that side. |
| _deviationsOfMaxForcePerSide | array | Kg | ° | Standard deviation of _maxValue across that side's repetitions.
Zero when the side has a single repetition. |
| _deviationsOfRfdPerSide | array | Kg/s | Standard deviation of _rfdToMax across that side's repetitions. |
| _minCoactivationIndex | array | ratio | EMG activities only. Empty otherwise. |
| _maxPerSideEmg | object | — | Per EMG channel, keyed ch1 and ch2. Empty objects when the
activity has no EMG device. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| Identity | |||
| _repCode | string | uuid | Code of the repetition this result belongs to. |
| _repOrdinal | number | index | Position of the repetition within its side, starting at 1. |
| _repSide | string | enum | Body side: LEFT, RIGHT, BOTH, NONE or UNKNOWN. |
| Primary measurement | |||
| _maxValue | number | Kg | ° | Peak value reached during the repetition. |
| _averageValue | number | Kg | ° | Mean across every sample in the repetition. |
| _netMaxForce | number | Kg | ° | Peak with the tare subtracted, where the configuration supports taring. |
| _forcesAtSteps | array[3] | Kg | ° | Value at 50 ms, 100 ms and 250 ms after the contraction begins, in that order. |
| Rate of force development | |||
| _rfdToMax | number | Kg/s | Steepest rise between the start of the contraction and the peak. |
| _rfdFromMax | number | Kg/s | Rate of decline after the peak. Negative. |
| _averageRfd | number | Kg/s | Rate across the whole detected rise interval. |
| _rfd20To80FMax | number | Kg/s | Rate between 20% and 80% of the peak. |
| _rfds | array | Kg/s | Rate sampled at successive intervals from the contraction start. |
| _rfdsSince0 | array | Kg/s | As above, measured from zero rather than from the detected start. |
| Rise-interval boundaries | |||
| _rfdStartTime | number | s | Start of the detected rise, relative to the repetition. |
| _rfdEndTime | number | s | End of the detected rise. |
| _rfdStartTime200MsBefore | number | s | 200 ms before the detected start. |
| _forceAtRfdStartTime | number | Kg | Value at _rfdStartTime. |
| _forceAtRfdEndTime | number | Kg | Value at _rfdEndTime. |
| _forceAtRfdStartTime200MsBefore | number | Kg | Value 200 ms before the detected start. |
| _rfdToMaxStartTime | number | s | Start of the steepest interval used for _rfdToMax. |
| _rfdToMaxEndTime | number | s | End of that interval. |
| _rfdToMaxStartTimeForce | number | Kg | Value at the start of that interval. |
| _rfdToMaxEndTimeForce | number | Kg | Value at the end of that interval. |
| Impulse | |||
| _impulse | number | N·s | Area under the curve for the whole repetition. Converted to newtons — see the note below. |
| _impulses | array | Kg·s | Impulse accumulated at successive intervals. Not converted. |
| _impulsesSince0 | array | Kg·s | As above, measured from zero. The first element may be null. |
| Timing | |||
| _timeToMax | number | ms | Time from the contraction start to the peak. Milliseconds, unlike the boundary fields above. |
| _maxTimeOnTarget | number | — | Not populated by this family. Always 0. |
| Torque | |||
| _maxTorque | number | N·m | Peak value converted to torque using the configured segment length. 0 when no segment length is set. |
| _averageTorque | number | N·m | Mean value converted the same way. 0 when no segment length is set. |
| Provenance | |||
| _device | string | enum | Device that produced the measurement: KFORCE_GRIP, LINK, SENS, BUBBLE, EMG. Absent on EMG-only repetitions. |
| _serialCode | string | — | Serial number of that device. |
| _measurementVersion | string | — | Version of the application that recorded the measurement. |
| _frequency | number | Hz | Sampling rate of the measurement. |
| EMG | |||
| _emgChannelsData | object | — | Per-channel EMG results. Present only on activities with an EMG device. |
detailed=trueEach repetition additionally carries the raw signal. These arrays are large and are the reason the flag exists.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _forces | array | Kg | ° | Every sample in the repetition. |
| _deltas | array | — | Delta stream stored alongside the samples in the measurement cache. |
| _syncedSamples | array | — | Samples aligned across devices, for activities recording from more than one sensor. |
No fields are added at the top level.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_resultsPerRep": [
{
"_repCode": "anon-9ce9a66e14",
"_repOrdinal": 1,
"_repSide": "RIGHT",
"_maxValue": 2.093,
"_averageValue": 0.66,
"_rfdToMax": 50.338,
"_rfdToMaxStartTime": 0.04,
"_rfdToMaxEndTime": 0.708,
"_rfdToMaxStartTimeForce": 0.419,
"_rfdToMaxEndTimeForce": 1.679,
"_rfdFromMax": -1.033,
"_timeToMax": 1092,
"_maxTimeOnTarget": 0,
"_impulse": 19.561,
"_impulsesSince0": [
0.015,
0.052,
0.107,
"… 1 more"
],
"_impulses": [
0.015,
0.036,
0.053,
"… 1 more"
],
"_rfds": [
6.542,
9.372,
4.549,
"… 1 more"
],
"_rfdsSince0": [
6.542,
7.957,
6.821,
"… 1 more"
],
"_rfdStartTime": 0,
"_rfdEndTime": 1.092,
"_forceAtRfdStartTime": 0.183,
"_forceAtRfdEndTime": 2.093,
"_rfdStartTime200MsBefore": 0,
"_forceAtRfdStartTime200MsBefore": 1.796,
"_maxTorque": 0,
"_averageTorque": 0,
"_rfd20To80FMax": 1.886,
"_forcesAtSteps": [
0.51,
0.979,
1.426
],
"_averageRfd": 0.996,
"_netMaxForce": 2.093,
"_device": "KFORCE_GRIP",
"_measurementVersion": "2.25.2",
"_frequency": 500
},
"… 1 more"
],
"_maxPerSide": [
{
"_key": "RIGHT",
"_value": 2.093
},
"… 1 more"
],
"_minCoactivationIndex": [],
"_meanOfMaxPerSide": [
{
"_key": "RIGHT",
"_value": 2.093
},
"… 1 more"
],
"_meanRfdPerSide": [
{
"_key": "RIGHT",
"_value": 50.338
},
"… 1 more"
],
"_deviationsOfMaxForcePerSide": [
{
"_key": "RIGHT",
"_value": 0
},
"… 1 more"
],
"_deviationsOfRfdPerSide": [
{
"_key": "RIGHT",
"_value": 0
},
"… 1 more"
],
"_maxPerSideEmg": {
"ch1": [],
"ch2": []
}
}
Jump height and the propelling parameters behind it, measured from a force platform: how the participant unweights, brakes, propels, takes off and lands.
Activities recorded on K-Plates, K-Deltas or K-Deltas 3D with a jump interface. The analyzer is chosen by the jump performed and by whether it is done on one leg or two — never by the platform, so all three record the same structure.
Three single jumps are recognised, reported in the jumpType field:
jumpType | Jump | What the participant does |
|---|---|---|
| CMJ | Counter Movement Jump | Starts standing, dips into a countermovement and jumps straight up in one continuous action. |
| SJ | Squat Jump | Starts from a held squat with no countermovement, so the propulsion is measured without the stretch-shortening contribution. |
| DROP | Drop Jump | Steps off a box, lands, and rebounds immediately. This is the jump the reactive strength fields describe. |
| MULTIPLE_JUMPS | Repeated jumping | Continuous jumping over a set duration rather than a single effort. |
| Variation | Covers | Result shape |
|---|---|---|
| Jump Analysis | CMJ, SJ and DROP performed on two legs, together with custom single jumps. | 22 summary fields, then one entry per jump with the full breakdown. |
| Unipodal Jump | CMJ, SJ and DROP performed on one leg. | The same measurements per side, with the two-platform fields removed. |
| Multiple Jumps | Repeated jumping on two legs over a set duration. | Fatigue and pace across the set, then one short entry per jump. |
| Multiple Single-Leg Jumps | Repeated jumping on one leg. | One entry per side, each summarising that side’s set. |
| Skipping | Skipping over a set duration. | Skip count and airborne time, then one entry per cycle. |
On K-Deltas 3D each foot is recorded by its own sensor, reported as
DELTAS_3D_LEFT and DELTAS_3D_RIGHT. The per-side fields are populated the
same way as for a pair of platforms.
The jump result carries a large number of fields, but they are combinations of a smaller set of measurements with four consistent modifiers. Learning the modifiers makes the whole set readable.
| Pattern | Meaning | Example |
|---|---|---|
| relative… | The same measurement normalised to the participant. Where the base field is in newtons the relative form is in N/kg, and where it is in watts the relative form is in W/kg. | relativeMaxForce |
| …Left / …Right | The value from one platform only. The unmodified field is the combined total. | maxPowerLeft |
| …L / …R | The same per-side split, in the shorter form used by a few older fields. | rfdAverageL |
| …Pair | An object {"_force", "_time"}
carrying a value together with the moment it occurred. | maxValuePair |
The base measurement maxPower therefore appears as maxPower,
maxPowerLeft, maxPowerRight, relativeMaxPower,
maxPowerPair and so on. 217 per-jump fields reduce to roughly 87 measurements once the
modifiers are set aside.
Values for the activity as a whole.
| Field | Type |
|---|---|
| _repResults | array<object> |
| _resultsModels | array<object> |
| contactTime | number |
| decelerationRFDLeft | number |
| decelerationRFDRight | number |
| decelerationRFDTotal | number |
| flightTime | number |
| includeAllFields | boolean |
| jumpHeight | number |
| jumpHeightByVelocity | number |
| jumpType | string |
| peakAbsolutePowerLeft | number |
| peakAbsolutePowerRight | number |
| peakAbsolutePowerTotal | number |
| peakForceLeft | number |
| peakForceRight | number |
| peakForceTotal | number |
| peakPowerLeft | number |
| peakPowerRight | number |
| peakPowerTotal | number |
| rsi | number |
| weight | number |
Each entry of _resultsModels. A unit marked * is inherited from a
declared sibling rather than stated on the field itself.
| Field | Type | Unit |
|---|---|---|
| Identity and context (16) | ||
| _repCode | string | — |
| bodySide | string | — |
| bodypart | string | — |
| freq | number | ? |
| hasTimeToStabilize | boolean | s* |
| hasTridelData | boolean | — |
| jump | object | ? |
| leftDevice | string | — |
| mass | number | kg |
| peakForceIndex | number | N* |
| phases | array<object> | ? |
| pointWhereJumpProcedureStarted | object | ? |
| repOrdinal | number | ? |
| rightDevice | string | — |
| takeOffIndex | number | ? |
| weight | number | N |
| Phase timing (16) | ||
| contactTime | number | s |
| contractionTime | number | s |
| movementTime | number | s |
| reactiveStrengthIndexByHeightAndTimeToTakeOff | number | m/s |
| reactiveStrengthIndexByTimeToTakeOff | number | — |
| timeAtMaxVelocity | number | m/s* |
| timeToMaxForce | number | ms |
| timeToMaxForceL | number | ms |
| timeToMaxForceR | number | ms |
| timeToMaxPower | number | ms |
| timeToMaxPowerL | number | ms |
| timeToMaxPowerR | number | ms |
| timeToMinForceUnweighting | number | ms |
| timeToMinForceUnweightingL | number | ms |
| timeToMinForceUnweightingR | number | ms |
| timeToStabilize | number | s* |
| Reactive strength (4) | ||
| legStifness | number | N/m |
| legStifnessL | number | N/m |
| reactiveStrengthIndex | number | — |
| reactiveStrengthIndexByHeight | number | m/s |
| Force (53) | ||
| forceAtMaxPower | number | W* |
| forceAtMaxPowerLeft | number | W* |
| forceAtMaxPowerRight | number | W* |
| forceAtZeroVelocity | number | N |
| forceAtZeroVelocityLeft | number | N |
| jumpAverageForceAsymetry | number | %* |
| maxForceAsymmetry | number | %* |
| netAverageBrakingForce | number | N |
| netAverageForce | number | N |
| netAveragePropulsiveForce | number | N |
| netMaxContactForce | number | N* |
| netMaxForce | number | N |
| netMaxPropulsiveForce | number | N |
| netMeanContactForce | number | N* |
| netPeakBrakingForce | number | N |
| relativeAverageForce | number | N/kg |
| relativeAverageForceLeft | number | N/kg |
| relativeBrakingAverageForce | number | N/kg |
| relativeBrakingPeakForce | number | N/kg |
| relativeBrakingPeakForceLeft | number | N/kg |
| relativeBrakingPeakForceRight | number | N/kg |
| relativeForceAtMaxPower | number | N/kg |
| relativeForceAtMaxPowerLeft | number | N/kg |
| relativeForceAtMaxPowerRight | number | N/kg |
| relativeForceAtZeroVelocity | number | N |
| relativeMaxForce | number | N/kg |
| relativeMaxForceLeft | number | N/kg |
| relativeMeanLandingForce | number | N* |
| relativeNetAverageBrakingForce | number | N |
| relativeNetAveragePropulsiveForce | number | N |
| relativeNetMaxContactForce | number | N* |
| relativeNetMaxForce | number | N |
| relativeNetMaxPropulsiveForce | number | N |
| relativeNetMeanContactForce | number | N* |
| relativePeakLandingForce | number | N/kg |
| relativePeakLandingForceBw | number | N* |
| relativePeakLandingForceBwLeft | number | N* |
| relativePeakLandingForceBwRight | number | N* |
| relativePeakLandingForceLeft | number | N/kg |
| relativePeakLandingForceRight | number | N/kg |
| relativePropulsiveAverageForce | number | N* |
| relativePropulsivePeakForce | number | N/kg |
| relativePropulsivePeakForceLeft | number | N/kg |
| takeOffForce | number | N |
| unweightingMinForce | number | N |
| unweightingMinForceAssymetry | number | N* |
| unweightingMinForceBwPercent | number | % |
| unweightingMinForceLeft | number | N |
| unweightingMinForceRelative | number | N/kg |
| unweightingMinForceRelativeLeft | number | N/kg |
| unweightingMinForceRelativeRight | number | N/kg |
| unweightingMinForceRight | number | N |
| velocityAtMaxForce | number | N* |
| Power (38) | ||
| maxPower | number | W |
| maxPowerAsymmetry | number | %* |
| maxPowerLeft | number | W |
| maxPowerLeftPercentage | number | % |
| maxPowerPair | object | W* |
| maxPowerRight | number | W |
| maxPowerRightPercentage | number | % |
| meanPower | number | W |
| meanPowerLeft | number | W |
| meanPowerRight | number | W |
| relativeBrakingPeakPower | number | W/kg |
| relativeMaxPower | number | W |
| relativeMaxPowerLeft | number | W |
| relativeMeanPower | number | W/kg |
| relativeMeanPowerLeft | number | W/kg |
| relativePropulsiveAveragePower | number | W/kg |
| relativePropulsivePeakPower | number | W |
| relativePropulsivePeakPowerLeft | number | W |
| relativePropulsiveRpdAverage | number | W/s/kg |
| relativeRpdMax | number | W/s* |
| relativeRpdMaxLeft | number | W/s* |
| relativeRpds | array<unknown> | W/s* |
| relativeRpdsLeft | array<unknown> | W/s* |
| relativeRpdsRight | array<unknown> | W/s* |
| relativeRpdsSince0 | array<number> | W/s* |
| relativeRpdsSince0Left | array<number> | W/s* |
| relativeRpdsSince0Right | array<number> | W/s* |
| rpdAverage | number | W/s* |
| rpdMax | number | W/s* |
| rpdMaxLeft | number | W/s* |
| rpds | array<unknown> | W/s* |
| rpdsLeft | array<unknown> | W/s* |
| rpdsLeftSince0 | array<number> | W/s* |
| rpdsRight | array<unknown> | W/s* |
| rpdsRightSince0 | array<number> | W/s* |
| rpdsSince0 | array<number> | W/s* |
| takeOffPower | number | W |
| velocityAtMaxPower | number | W* |
| Rate of force development (42) | ||
| eccentricBrakingDecelerationRfd | number | N/kg |
| eccentricBrakingDecelerationRfdLeft | number | N/kg |
| eccentricBrakingDecelerationRfdRight | number | N/kg |
| eccentricBrakingRfd | number | N/kg |
| eccentricBrakingRfdLeft | number | N/kg |
| eccentricBrakingRfdRight | number | N/kg |
| leftRfd | number | N/s* |
| maxRfdPair | object | N/s* |
| maxRfdValuePair | object | N/s* |
| minRfdValuePair | object | N/s* |
| negativeMaxRfd | number | N/s* |
| negativeMaxRfdLeft | number | N/s* |
| negativeMaxRfdRight | number | N/s* |
| relativeBrakingRfdAverage | number | N/s* |
| relativeEccentricBrakingDecelerationRfd | number | N/kg |
| relativeEccentricBrakingDecelerationRfdLeft | number | N/kg |
| relativeEccentricBrakingRfd | number | N/kg |
| relativeEccentricBrakingRfdLeft | number | N/kg |
| relativeNegativeMaxRfd | number | N/s* |
| relativeNegativeMaxRfdLeft | number | N/s* |
| relativeRfdAverage | number | N/s* |
| relativeRfdAverageLeft | number | N/s* |
| relativeRfdMax | number | N/s* |
| relativeRfdMaxLeft | number | N/s* |
| relativeRfds | array<number> | N/s* |
| relativeRfdsFrom0 | array<number> | N/s* |
| relativeRfdsFrom0Left | array<number> | N/s* |
| relativeRfdsFrom0Right | array<number> | N/s* |
| relativeRfdsLeft | array<number> | N/s* |
| relativeRfdsRight | array<number> | N/s* |
| rfdAverage | number | N/s* |
| rfdAverageL | number | N/s* |
| rfdAverageR | number | N/s* |
| rfdMaxAsymmetry | number | %* |
| rfds | array<number> | N/s* |
| rfdsFrom0 | array<number> | N/s* |
| rfdsFrom0Left | array<number> | N/s* |
| rfdsFrom0Right | array<number> | N/s* |
| rfdsLeft | array<number> | N/s* |
| rfdsRight | array<number> | N/s* |
| rightRfd | number | N/s* |
| totalRfd | number | N/s |
| Impulse (37) | ||
| impulses | array<number> | N·s |
| impulsesLeft | array<number> | N·s |
| impulsesRight | array<number> | N·s |
| impulsion | number | N·s |
| leftImpulsion | number | N·s* |
| leftImpulsionPercentage | number | % |
| netBrakingImpulse | number | N·s |
| netContactImpulse | number | N·s* |
| netImpulse | number | N·s* |
| netPropulsiveImpulse | number | N·s |
| propulsiveImpulsePhase1 | number | N·s |
| propulsiveImpulsePhase1Left | number | N·s |
| propulsiveImpulsePhase1Right | number | N·s |
| propulsiveImpulsePhase2 | number | N·s |
| propulsiveImpulsePhase2Left | number | N·s |
| propulsiveImpulsePhase2Right | number | N·s |
| relativeImpulses | array<number> | N·s |
| relativeImpulsesLeft | array<number> | N·s |
| relativeImpulsesRight | array<number> | N·s |
| relativeNetBrakingImpulse | number | N·s |
| relativeNetContactImpulse | number | N·s* |
| relativeNetImpulse | number | N·s* |
| relativeNetPropulsiveImpulse | number | N·s |
| relativePropulsiveImpulse | number | N·s/kg |
| relativePropulsiveImpulsePhase1 | number | N·s |
| relativePropulsiveImpulsePhase1Left | number | N·s |
| relativePropulsiveImpulsePhase1Right | number | N·s |
| relativePropulsiveImpulsePhase2 | number | N·s |
| relativePropulsiveImpulsePhase2Left | number | N·s |
| relativePropulsiveImpulsePhase2Right | number | N·s |
| relativeTotalImpulse | number | N·s* |
| relativeTotalImpulseLeft | number | N·s* |
| relativebrakingImpulse | number | N·s* |
| rightImpulsion | number | N·s* |
| rightImpulsionPercentage | number | % |
| totalImpulseAsymetry | number | %* |
| unweightingNetImpulse | number | N·s* |
| Velocity and displacement (6) | ||
| maxDisplacementPair | object | ? |
| maxNegativeVelocity | number | m/s |
| maxPositiveVelocity | number | m/s |
| maxVelocity | number | m/s |
| maxVelocityPair | object | m/s* |
| minDisplacement | number | cm |
| Unweighting (1) | ||
| relativeMaxUnweighting | number | ? |
| Other (4) | ||
| maxValuePair | object | ? |
| minValuePair | object | ? |
| relativeLegStifness | number | N/m |
| relativeLegStifnessLeft | number | N/m |
| Field | Type |
|---|---|
| _averageContactTime | number |
| _averageForceLeft | number |
| _averageForceLeftPercent | number |
| _averageForceRight | number |
| _averageForceRightPercent | number |
| _averageOfTopFiveJumpHeights | number |
| _averageOfTopFiveShortestContactTimes | number |
| _averagePower | number |
| _duration | number |
| _fatigueIndex | number |
| _heightAverage | number |
| _jumps | array<object> |
| _mrsi | number |
| _numberOfJumps | number |
| _pace | number |
| _peakForce | number |
| _peakJumpHeight | number |
| _peakMRSI | number |
| _peakRSI | number |
| _performanceDropoff | number |
| _rsi | number |
| _shortestContactTime | number |
| _topFiveAverageForce | number |
| _topFiveAverageMRSI | number |
| _topFiveAverageRSI | number |
| _totalFlightTime | number |
| includeAllFields | boolean |
| Field | Type |
|---|---|
| _resultsModel | object |
| averageForcesPerCycle | array<object> |
| duration | number |
| includeAllFields | boolean |
| timeOnAirBothSides | number |
| totalSkips | number |
detailed=trueEach jump additionally carries the raw platform signal: _totalForces,
_leftForces, _rightForces, _velocities,
_accelerations, _displacement, _powers,
_powersLeft, _powersRight, _deltas and
_syncedDataPerDevice. Multiple Jumps adds _syncedForces at the top level
instead; Skipping adds _leftForces and _rightForces.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"totalSkips": 20,
"duration": 5,
"timeOnAirBothSides": 0,
"averageForcesPerCycle": [
{
"_leftForce": 33.571,
"_rightForce": 36.812,
"_delta": 0.664
},
"… 19 more"
],
"_resultsModel": {
"_pace": 240,
"_leftAvgForce": 38,
"_rightAvgForce": 54,
"_leftTimeOnAir": 1.14,
"_rightTimeOnAir": 1.18,
"_leftAvgTimeOnAir": 54.295,
"_rightAvgTimeOnAir": 56.186,
"_leftContactTime": 3.829,
"_rightContactTime": 2.903,
"_leftAvgContactTime": 182.324,
"_rightAvgContactTime": 138.238,
"_skipsLeft": [
{
"startTime": 607,
"stopTime": 664,
"contactTime": 607,
"timeOnAir": 57
},
"… 19 more"
],
"_skipsRight": [
{
"startTime": 463,
"stopTime": 571,
"contactTime": 463,
"timeOnAir": 108
},
"… 19 more"
],
"_avgPower": 54.954,
"_fatigueIndex": 1.159
}
}
With detailed=true this response also carries: _leftForces, _rightForces.
{
"includeAllFields": false,
"_resultsModels": [
{
"_repCode": "anon-f6e3f7c9e0",
"bodypart": "LEG",
"bodySide": "BOTH",
"leftDevice": "HEXAS_LEFT",
"rightDevice": "HEXAS_RIGHT",
"impulsion": 1032.053,
"rightImpulsion": 517.317,
"leftImpulsion": 514.736,
"rightImpulsionPercentage": 50.125,
"leftImpulsionPercentage": 49.875,
"totalRfd": 11716.839,
"leftRfd": 5484.346,
"rightRfd": 6232.493,
"pointWhereJumpProcedureStarted": {
"_force": 635.156,
"_time": 3064
},
"minRfdValuePair": {
"_force": 635.292,
"_time": 3559
},
"maxRfdValuePair": {
"_force": 1070.441,
"_time": 3719
},
"minValuePair": {
"_force": 401.559,
"_time": 3457
},
"maxValuePair": {
"_force": 1621.649,
"_time": 3781
},
"maxVelocityPair": {
"_force": 1.493,
"_time": 3859
},
"maxRfdPair": {
"_force": 11716.839,
"_time": 2427
},
"maxDisplacementPair": {
"_force": 24.943,
"_time": 7119
},
"maxPowerPair": {
"_force": 1709.796,
"_time": 3819
},
"jump": {
"_leftForceInMaxTotal": 814.028,
"_timestamp": 4134.9,
"_timeOnAir": 230.0,
"_ordinal": 1,
"_maxForce": 1621.649,
"_avgForce": 688.263,
"_maxLeftForce": 823.832,
"_maxRightForce": 816.282,
"_jumpHeight": 0.065,
"invalidSj99": false,
"invalidSj97_5": false,
"invalidSj95": false,
"invalidSjDisplacement": false,
"invalidSjDisplacement100ms": false,
"_avgLeftForce": 343.277,
"_pace": 0,
"_maxVelocity": 1.493,
"_avgVelocity": 0.107,
"_takeOffVelocity": 1.237,
"_thrustDistance": 0,
"_jumpHeightByTakeOffVelocity": 0.078
},
"contractionTime": 345.9,
"contactTime": 0,
"reactiveStrengthIndex": 0.665,
"reactiveStrengthIndexByTimeToTakeOff": 0.359,
"reactiveStrengthIndexByHeight": 0.188,
"reactiveStrengthIndexByHeightAndTimeToTakeOff": 0.101,
"maxPower": 1709.796,
"maxPowerLeft": 939.076,
"maxPowerRight": 780.928,
"relativeMeanPower": 2.002,
"relativeMeanPowerLeft": 1.169,
"meanPower": 129.417,
"meanPowerLeft": 75.549,
"meanPowerRight": 53.869,
"maxPowerLeftPercentage": 54.923,
"maxPowerRightPercentage": 45.674,
"phases": [
{
"type": "BODY_WEIGHT",
"startTime": 2404.9,
"endTime": 3263.9
},
"… 5 more"
],
"forceAtZeroVelocity": 1070.441,
"forceAtZeroVelocityLeft": 531.994,
"relativeForceAtZeroVelocity": 16.559,
"freq": 1000,
"takeOffIndex": 0,
"maxVelocity": 1.493,
"relativeMaxForce": 25.087,
"relativeMaxForceLeft": 12.744,
"maxPositiveVelocity": 1.493,
"netPropulsiveImpulse": 81.174,
"relativeNetPropulsiveImpulse": 1.256,
"relativePropulsiveImpulse": 3.07,
"relativePropulsiveRpdAverage": 286.439,
"relativePropulsiveAveragePower": 13.763,
"relativePropulsivePeakPower": 26.45,
"relativePropulsivePeakPowerLeft": 14.527,
"relativePropulsivePeakForce": 25.087,
"relativePropulsivePeakForceLeft": 12.744,
"relativePropulsiveAverageForce": 16.559,
"netMaxPropulsiveForce": 987.509,
"relativeNetMaxPropulsiveForce": 15.277,
"netAveragePropulsiveForce": 436.263,
"relativeNetAveragePropulsiveForce": 6.749,
"maxNegativeVelocity": -0.419,
"minDisplacement": -8.958,
"legStifness": 11754.307,
"legStifnessL": 5839.032,
"relativeLegStifness": 181.836,
"relativeLegStifnessLeft": 90.328,
"unweightingMinForceBwPercent": 36.677,
"unweightingMinForce": 401.559,
"unweightingMinForceLeft": 201.428,
"unweightingMinForceRight": 199.779,
"unweightingMinForceRelative": 6.212,
"unweightingMinForceRelativeLeft": 3.116,
"unweightingMinForceRelativeRight": 3.091,
"netBrakingImpulse": 26.593,
"relativeNetBrakingImpulse": 0.411,
"movementTime": 641,
"impulses": [
34.14,
38.408,
43.091,
"… 1 more"
],
"impulsesLeft": [
17.362,
18.925,
21.135,
"… 1 more"
],
"impulsesRight": [
16.777,
19.482,
21.956,
"… 1 more"
],
"relativeImpulses": [
0.528,
0.594,
0.667,
"… 1 more"
],
"relativeImpulsesLeft": [
0.269,
0.293,
0.327,
"… 1 more"
],
"relativeImpulsesRight": [
0.26,
0.301,
0.34,
"… 1 more"
],
"relativeBrakingPeakForce": 16.421,
"relativeBrakingPeakForceLeft": 8.158,
"relativeBrakingPeakForceRight": 8.263,
"relativeEccentricBrakingRfd": 39.494,
"relativeEccentricBrakingRfdLeft": 19.518,
"eccentricBrakingRfd": 2552.984,
"eccentricBrakingRfdLeft": 1261.701,
"eccentricBrakingRfdRight": 1291.283,
"relativeEccentricBrakingDecelerationRfd": 42.073,
"relativeEccentricBrakingDecelerationRfdLeft": 19.936,
"eccentricBrakingDecelerationRfd": 2719.683,
"eccentricBrakingDecelerationRfdLeft": 1288.689,
"eccentricBrakingDecelerationRfdRight": 1430.993,
"relativeBrakingAverageForce": 12.402,
"relativeBrakingPeakPower": -4.409,
"relativeBrakingRfdAverage": 36.801,
"relativebrakingImpulse": 1.971,
"netPeakBrakingForce": 427.347,
"netAverageBrakingForce": 167.548,
"relativeNetAverageBrakingForce": 2.592,
"relativeNegativeMaxRfd": -41.387,
"relativeNegativeMaxRfdLeft": -24.877,
"negativeMaxRfd": -2675.329,
"negativeMaxRfdLeft": -1608.116,
"negativeMaxRfdRight": -1606.273,
"unweightingMinForceAssymetry": 0.819,
"timeToMinForceUnweighting": 393,
"timeToMinForceUnweightingL": 393,
"timeToMinForceUnweightingR": 399,
"timeToMaxForce": 717,
"timeToMaxForceL": 724,
"timeToMaxForceR": 709.9,
"timeToMaxPower": 555.1,
"timeToMaxPowerL": 556.1,
"timeToMaxPowerR": 548.1,
"rfdMaxAsymmetry": 12.004,
"rfdAverage": 1206.622,
"rfdAverageL": 594.133,
"rfdAverageR": 612.489,
"rpdAverage": 0,
"maxPowerAsymmetry": 16.841,
"jumpAverageForceAsymetry": 0.495,
"timeAtMaxVelocity": 3859,
"maxForceAsymmetry": 0.916,
"relativeMaxPower": 26.45,
"relativeMaxPowerLeft": 14.527,
"relativeRpdMax": 393.561,
"relativeRpdMaxLeft": 203.034,
"rpdMax": 25440.618,
"rpdMaxLeft": 13124.562,
"relativeTotalImpulse": 15.966,
"relativeTotalImpulseLeft": 7.963,
"totalImpulseAsymetry": 0.499,
"forceAtMaxPower": 1355.28,
"relativeForceAtMaxPower": 20.966,
"relativeForceAtMaxPowerLeft": 11.506,
"relativeForceAtMaxPowerRight": 9.459,
"forceAtMaxPowerLeft": 743.801,
"forceAtMaxPowerRight": 611.48,
"relativeMaxUnweighting": 0.828,
"relativeRfdMax": 181.257,
"relativeRfdMaxLeft": 84.842,
"relativeNetMaxForce": 15.277,
"netMaxForce": 987.509,
"netAverageForce": 0,
"relativeAverageForce": 10.647,
"relativeAverageForceLeft": 5.31,
"relativeRfdAverage": 18.666,
"relativeRfdAverageLeft": 9.191,
"rfdsFrom0": [
2302.166,
1817.144,
2378.911,
"… 1 more"
],
"relativeRfdsFrom0": [
35.614,
28.111,
36.801,
"… 1 more"
],
"rfdsFrom0Left": [
1014.545,
699.831,
1101.025,
"… 1 more"
],
"relativeRfdsFrom0Left": [
15.695,
10.826,
17.033,
"… 1 more"
],
"rfdsFrom0Right": [
1287.621,
1117.313,
1277.886,
"… 1 more"
],
"relativeRfdsFrom0Right": [
19.919,
17.285,
19.769,
"… 1 more"
],
"rfds": [
2302.166,
1332.121,
3502.446
],
"relativeRfds": [
35.614,
20.608,
54.182
],
"rfdsLeft": [
1014.545,
385.116,
1903.414
],
"relativeRfdsLeft": [
15.695,
5.958,
29.445
],
"rfdsRight": [
1287.621,
947.005,
1599.032
],
"relativeRfdsRight": [
19.919,
14.65,
24.737
],
"rpdsSince0": [
18301.607,
16955.472
],
"rpdsLeftSince0": [
9001.443,
9323.914
],
"rpdsRightSince0": [
9300.164,
7631.558
],
"relativeRpdsSince0": [
283.122,
262.297
],
"relativeRpdsSince0Left": [
139.25,
144.239
],
"relativeRpdsSince0Right": [
143.871,
118.058
],
"rpds": [],
"rpdsLeft": [],
"rpdsRight": [],
"relativeRpds": [],
"relativeRpdsLeft": [],
"relativeRpdsRight": [],
"netImpulse": 81.477,
"relativeNetImpulse": 1.26,
"relativePeakLandingForce": 31.61,
"relativePeakLandingForceLeft": 16.418,
"relativePeakLandingForceRight": 15.241,
"relativePeakLandingForceBw": 3.222,
"relativePeakLandingForceBwLeft": 1.674,
"relativePeakLandingForceBwRight": 1.554,
"relativeMeanLandingForce": 0,
"propulsiveImpulsePhase1": 133.152,
"relativePropulsiveImpulsePhase1": 2.06,
"relativePropulsiveImpulsePhase1Left": 1.039,
"relativePropulsiveImpulsePhase1Right": 1.021,
"propulsiveImpulsePhase1Left": 67.145,
"propulsiveImpulsePhase1Right": 66.007,
"propulsiveImpulsePhase2": 63.875,
"relativePropulsiveImpulsePhase2": 0.988,
"relativePropulsiveImpulsePhase2Left": 0.585,
"relativePropulsiveImpulsePhase2Right": 0.403,
"propulsiveImpulsePhase2Left": 37.817,
"propulsiveImpulsePhase2Right": 26.058,
"peakForceIndex": 0,
"netMaxContactForce": 0,
"relativeNetMaxContactForce": 0,
"netMeanContactForce": 0,
"relativeNetMeanContactForce": 0,
"netContactImpulse": 0,
"relativeNetContactImpulse": 0,
"unweightingNetImpulse": -27.11,
"hasTridelData": false,
"repOrdinal": 1,
"mass": 64.642,
"weight": 634.14,
"takeOffForce": 50.915,
"hasTimeToStabilize": true,
"timeToStabilize": 894.1,
"velocityAtMaxForce": 0.745,
"velocityAtMaxPower": 1.262,
"takeOffPower": 62.98
},
"… 2 more"
],
"_repResults": [
{
"jumpHeightByVelocity": 7.799,
"bodySide": "BOTH",
"jumpHeight": 6.487,
"ordinal": 1,
"contractionTime": 345.9,
"movementTime": 641,
"peakForceTotal": 165.306,
"peakForceRelative": 2.557,
"peakForceLeft": 83.979,
"peakForceLeftRelative": 1.299,
"peakForceRight": 81.327,
"peakForceRightRelative": 1.258,
"decelRfdTotal": 277.236,
"decelRfdLeft": 131.365,
"decelRfdRight": 145.871,
"relativeDecelRfdTotal": 4.289,
"relativeDecelRfdLeft": 2.032,
"relativeDecelRfdRight": 2.257,
"maxPowerTotal": 1709.796,
"maxPowerLeft": 939.076,
"maxPowerRight": 770.72,
"peakForceLandingTotal": 208.292,
"peakForceLandingLeft": 108.184,
"peakForceLandingRight": 100.108,
"reactiveStrengthIndex": 0.665,
"brakingRfd100_150": 0,
"propulsiveImpulsePhaseOne": 0,
"propulsiveImpulsePhaseTwo": 0,
"landingTimeToStabilization": 0,
"peakPowerRelativeLeft": 14.527,
"peakPowerRelativeRight": 11.923,
"peakPowerRelativeTotal": 26.45,
"peakRFDLeft": 0,
"peakRFDRight": 0,
"peakRFDTotal": 0,
"rsi": 0,
"flightTime": 0
},
"… 2 more"
],
"jumpType": "CMJ",
"jumpHeightByVelocity": 7.585,
"jumpHeight": 6.291,
"flightTime": 226.3,
"peakForceLeft": 1.274,
"peakForceRight": 1.21,
"peakForceTotal": 2.483,
"decelerationRFDLeft": 171.744,
"decelerationRFDRight": 162.717,
"decelerationRFDTotal": 334.461,
"peakPowerLeft": 14.017,
"peakPowerRight": 12.021,
"peakPowerTotal": 26.038,
"peakAbsolutePowerLeft": 906.121,
"peakAbsolutePowerRight": 777.048,
"peakAbsolutePowerTotal": 1683.169,
"weight": 64.642,
"contactTime": 0,
"rsi": 0.665
}
{
"includeAllFields": false,
"_resultsModels": [
{
"bodypart": "LEG",
"bodySide": "RIGHT",
"device": "HEXAS_RIGHT",
"impulsion": 488.489,
"rfd": 2425.257,
"pointWhereJumpProcedureStarted": {
"_force": 601.549,
"_time": 0
},
"minRfdValuePair": {
"_force": 641.407,
"_time": 231.9
},
"maxRfdValuePair": {
"_force": 897.982,
"_time": 383.9
},
"minValuePair": {
"_force": 493.589,
"_time": 132
},
"maxValuePair": {
"_force": 1186.767,
"_time": 519.9
},
"maxVelocityPair": {
"_force": 1.346,
"_time": 600
},
"maxRfdPair": {
"_force": 2425.257,
"_time": 56
},
"maxDisplacementPair": {
"_force": 20.42,
"_time": 760
},
"maxPowerPair": {
"_force": 1304.461,
"_time": 560
},
"jump": {
"_leftForceInMaxTotal": 1186.767,
"_timestamp": 856,
"_timeOnAir": 200.0,
"_ordinal": 1,
"_maxForce": 1186.767,
"_avgForce": 746.707,
"_maxLeftForce": 0,
"_maxRightForce": 0,
"_jumpHeight": 0.049,
"invalidSj99": false,
"invalidSj97_5": false,
"invalidSj95": false,
"invalidSjDisplacement": false,
"invalidSjDisplacement100ms": false,
"_avgLeftForce": 0,
"_pace": 0,
"_maxVelocity": 1.346,
"_avgVelocity": 0.22,
"_takeOffVelocity": 1.07,
"_thrustDistance": 0,
"_jumpHeightByTakeOffVelocity": 0.058
},
"contractionTime": 424.1,
"contactTime": 0,
"reactiveStrengthIndex": 0.472,
"reactiveStrengthIndexByTimeToTakeOff": 0.305,
"reactiveStrengthIndexByHeight": 0.116,
"reactiveStrengthIndexByHeightAndTimeToTakeOff": 0.075,
"maxPower": 1304.461,
"relativeMeanPower": 3.192,
"meanPower": 206.847,
"phases": [
{
"type": "BODY_WEIGHT",
"startTime": 0,
"endTime": 0
},
"… 5 more"
],
"forceAtZeroVelocity": 897.982,
"relativeForceAtZeroVelocity": 13.859,
"freq": 250,
"maxVelocity": 1.346,
"relativeMaxForce": 18.316,
"maxPositiveVelocity": 1.346,
"netPropulsiveImpulse": 74.686,
"relativeNetPropulsiveImpulse": 1.153,
"relativePropulsiveImpulse": 3.783,
"relativePropulsiveRpdAverage": 120.827,
"relativePropulsiveAveragePower": 10.248,
"relativePropulsivePeakPower": 20.133,
"relativePropulsivePeakForce": 18.316,
"relativePropulsiveAverageForce": 14.012,
"netMaxPropulsiveForce": 551.141,
"relativeNetMaxPropulsiveForce": 8.506,
"netAveragePropulsiveForce": 272.275,
"relativeNetAveragePropulsiveForce": 4.202,
"maxNegativeVelocity": -0.321,
"minDisplacement": -7.121,
"legStifness": 12510.789,
"relativeLegStifness": 193.086,
"unweightingMinForceBwPercent": 22.346,
"unweightingMinForce": 493.589,
"unweightingMinForceRelative": 7.618,
"netBrakingImpulse": 19.134,
"relativeNetBrakingImpulse": 0.295,
"movementTime": 656,
"impulses": [
30.167,
36.319,
37.073,
"… 2 more"
],
"relativeImpulses": [
0.466,
0.561,
0.572,
"… 2 more"
],
"relativeBrakingPeakForce": 13.75,
"relativeEccentricBrakingRfd": 24.777,
"eccentricBrakingRfd": 1605.372,
"relativeEccentricBrakingDecelerationRfd": 26.052,
"eccentricBrakingDecelerationRfd": 1687.996,
"relativeBrakingAverageForce": 11.806,
"relativeBrakingPeakPower": -3.272,
"relativeBrakingRfdAverage": 25.872,
"relativebrakingImpulse": 1.747,
"netPeakBrakingForce": 255.306,
"netAverageBrakingForce": 129.314,
"relativeNetAverageBrakingForce": 1.996,
"relativeNegativeMaxRfd": -18.237,
"negativeMaxRfd": -1181.614,
"timeToMinForceUnweighting": 132,
"timeToMaxForce": 519.9,
"timeToMaxPower": 560,
"rfdAverage": 1134.137,
"rpdAverage": 0,
"timeAtMaxVelocity": 600,
"relativeMaxPower": 20.133,
"relativeRpdMax": 166.748,
"rpdMax": 10804.227,
"relativeImpulse": 7.539,
"forceAtMaxPower": 1086.991,
"relativeForceAtMaxPower": 16.776,
"relativeMaxUnweighting": -0.06,
"relativeRfdMax": 37.43,
"relativeNetMaxForce": 8.506,
"netMaxForce": 551.141,
"netAverageForce": 0,
"relativeAverageForce": 11.524,
"relativeRfdAverage": 17.504,
"rfdsFrom0": [
1868.077,
1541.962,
1687.996,
"… 1 more"
],
"relativeRfdsFrom0": [
28.831,
23.798,
26.052,
"… 1 more"
],
"rpdsSince0": [
5227.765,
6801.037,
7953.988,
"… 1 more"
],
"relativeRpdsSince0": [
80.683,
104.964,
122.759,
"… 1 more"
],
"netImpulse": -147.137,
"relativeNetImpulse": -2.271,
"relativePeakLandingForce": 24.27,
"relativePeakLandingForceBw": 2.474,
"relativeMeanLandingForce": 0,
"propulsiveImpulsePhase1": 137.442,
"relativePropulsiveImpulsePhase1": 2.121,
"propulsiveImpulsePhase2": 102.897,
"relativePropulsiveImpulsePhase2": 1.588,
"netMaxContactForce": 0,
"relativeNetMaxContactForce": 0,
"netMeanContactForce": 0,
"relativeNetMeanContactForce": 0,
"netContactImpulse": 0,
"relativeNetContactImpulse": 0,
"unweightingNetImpulsion": -20.768,
"hasTridelData": false,
"repOrdinal": 1,
"mass": 64.794,
"weight": 635.627,
"takeOffForce": 73.765,
"hasTimeToStabilize": true,
"timeToStabilize": 1248.0,
"velocityAtMaxForce": 0.885,
"velocityAtMaxPower": 1.2,
"takeOffPower": 78.897
}
],
"_resultsPerRep": [
{
"includeAllFields": false,
"_bodySide": "RIGHT",
"_repOrdinal": 1,
"_jumpHeightVelocity": 5.831,
"_peakForce": 1.867,
"_peakPower": 20.133,
"_decelerationRFD": 172.069,
"_rsi": 0,
"_contactTime": 0,
"_flightTime": 0
}
],
"jumpType": "CMJ"
}
{
"includeAllFields": false,
"_jumps": [],
"_numberOfJumps": 0,
"_fatigueIndex": 0,
"_heightAverage": 0,
"_pace": 0,
"_duration": 3,
"_averagePower": 0,
"_rsi": 0,
"_mrsi": 0,
"_totalFlightTime": 0,
"_averageContactTime": 0,
"_shortestContactTime": 0,
"_averageOfTopFiveShortestContactTimes": 0,
"_topFiveAverageRSI": 0,
"_topFiveAverageMRSI": 0,
"_peakRSI": 0,
"_peakMRSI": 0,
"_averageOfTopFiveJumpHeights": 0,
"_peakJumpHeight": 0,
"_topFiveAverageForce": 0,
"_peakForce": 0,
"_averageForceLeft": 0,
"_averageForceRight": 0,
"_averageForceLeftPercent": 50,
"_averageForceRightPercent": 50,
"_performanceDropoff": 0
}
With detailed=true this response also carries: _syncedForces.
{
"includeAllFields": false,
"_resultsModels": [
{
"_repCode": "anon-1dbd73b21b",
"bodySide": "RIGHT",
"weight": 65.37,
"duration": 5,
"jumps": [
{
"_leftForceInMaxTotal": 0,
"_timestamp": 950.1,
"_timeOnAir": 121,
"_ordinal": 1,
"_maxForce": 136.724,
"_avgForce": 70.133,
"_maxLeftForce": 0,
"_maxRightForce": 0,
"_jumpHeight": 0.018,
"invalidSj99": false,
"invalidSj97_5": false,
"invalidSj95": false,
"invalidSjDisplacement": false,
"invalidSjDisplacement100ms": false,
"_avgLeftForce": 0,
"_pace": 63.151,
"_maxVelocity": 0,
"_avgVelocity": 0,
"_takeOffVelocity": 0,
"_thrustDistance": 0,
"_jumpHeightByTakeOffVelocity": 0
},
"… 9 more"
],
"groundContactTimes": [
0,
239.9,
201.1,
"… 7 more"
],
"jumpsDone": 10,
"pace": 120,
"averageJumpHeight": 0.055,
"totalFlightTime": 2.033,
"averageContactTime": 192.322,
"averagePower": 8.243,
"averageForce": 96.267,
"fatigueIndex": 0.551,
"averageRSI": 1.461,
"averageMRSI": 0.445,
"topFiveAverageRSI": 2.096,
"topFiveAverageMRSI": 0.691,
"peakRSI": 3.584,
"peakMRSI": 1.34,
"averageOfTopFiveJumpHeights": 0.081,
"peakJumpHeight": 0.114,
"shortestContactTime": 85.1,
"averageOfTopFiveShortestContactTimes": 135.6,
"topFiveAverageForce": 116.432,
"peakForce": 127.259,
"performanceDropoff": 48.913,
"repOrdinal": 1
},
"… 1 more"
]
}
How steadily a participant holds a position. The measurement follows the centre of pressure — the point under the foot through which body weight acts — and describes how far and how quickly it wanders while the position is held.
Activities recorded on K-Plates, K-Deltas or K-Deltas 3D with a stance interface. The analyzer is chosen by how many feet are being measured and how many sensors are used:
| Variation | Setup | Result shape |
|---|---|---|
| Bipodal stance | Standing on two sensors, one per foot. | 36 fields per repetition, with centre-of-pressure measures for each foot and for both combined. |
| Bipodal drop-land | The same, landing from a drop rather than standing still. | As above plus _dropLandResults. |
| Unipodal stance | Standing on one foot, one sensor. | 18 fields per repetition, with a single set of centre-of-pressure measures. |
| Unipodal drop-land | Landing on one foot. | As above plus _dropLandResults. |
| Heel-tip and lateral stance | One foot across two sensors, separating heel from forefoot. | A shorter, differently named summary. See below. |
Every variation returns _repResults, one entry per repetition, and
includeAllFields. Everything else sits inside the repetition.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _bodyPart | string | — | Body part recorded against. |
| _bodySide | string | — | LEFT, RIGHT, BOTH, NONE or UNKNOWN. |
| _copResults | object | — | Centre-of-pressure measures for both feet combined. See the table below. |
| _copResultsLeft | object | — | The same measures for the left platform only. |
| _copResultsRight | object | — | The same measures for the right platform only. |
| _deviceType | string | — | Sensor family used. |
| _dropLandResults | object | — | Present on drop-land activities only. See the table below. |
| _durationMs | number | ms | |
| _eyesOpen | boolean | — | Whether the stance was held with the eyes open. |
| _frequency | number | Hz | |
| _heelAverageForceLeft | number | Kg | |
| _heelAverageForceRight | number | Kg | |
| _heelForcePercentageLeft | number | % | |
| _heelForcePercentageRight | number | % | |
| _leftDevice | string | — | Bluetooth identifier of the left platform. |
| _leftDeviceMean | number | Kg | |
| _leftSerialCode | string | — | Serial number of the left platform. |
| _oval | object | — | Confidence ellipse fitted to the centre-of-pressure path. |
| _ovalLeft | object | — | The ellipse for the left platform. |
| _ovalRight | object | — | The ellipse for the right platform. |
| _physicalDevice | object | — | Bluetooth identifier of the sensor. |
| _repCode | string | — | |
| _repOrdinal | number | index | |
| _rightDevice | string | — | Bluetooth identifier of the right platform. |
| _rightDeviceMean | number | Kg | |
| _rightSerialCode | string | — | Serial number of the right platform. |
| _samplingRateMs | number | ms | |
| _standardDeviation | number | — | Spread of the recorded force. |
| _tipAverageForceLeft | number | Kg | |
| _tipAverageForceRight | number | Kg | |
| _tipForcePercentageLeft | number | % | |
| _tipForcePercentageRight | number | % | |
| _totalMeanForce | number | Kg | |
| _vfy | number | — | Vertical force asymmetry indicator. |
| _weight | number | Kg | |
| _weightDistributionLeft | number | % | Share of body weight carried on the left. |
| _weightDistributionRight | number | % | Share of body weight carried on the right. |
_dropLandResults is present on drop-land activities only; every other field appears
in both.
The same measurements with a single sensor, so the per-side fields collapse to one set.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _bodyPart | string | — | Body part recorded against. |
| _bodySide | string | — | LEFT, RIGHT, BOTH, NONE or UNKNOWN. |
| _copResults | object | — | Centre-of-pressure measures for the standing foot. |
| _device | string | — | Bluetooth identifier of the sensor. |
| _deviceSerialCode | string | — | Serial number of the sensor. |
| _deviceType | string | — | Sensor family used. |
| _dropLandResults | object | — | Present on drop-land activities only. See the table below. |
| _durationMs | number | ms | |
| _eyesOpen | boolean | — | Whether the stance was held with the eyes open. |
| _frequency | number | Hz | |
| _heelAverageForce | number | Kg | |
| _heelForcePercentage | number | % | |
| _oval | object | — | Confidence ellipse fitted to the centre-of-pressure path. |
| _physicalDevice | object | — | Bluetooth identifier of the sensor. |
| _repCode | string | — | |
| _repOrdinal | number | index | |
| _tipAverageForce | number | Kg | |
| _tipForcePercentage | number | % | |
| _weight | number | Kg |
The contents of _copResults, and of _copResultsLeft and
_copResultsRight on the bipodal variations. AP is the
anterior-posterior axis, front to back; ML is the medio-lateral axis, side to
side.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| copXMean | number | mm | Mean position of the centre of pressure on the medio-lateral axis. |
| copYMean | number | mm | Mean position on the anterior-posterior axis. |
| surface | number | mm² | Area of the confidence ellipse fitted to the centre-of-pressure cloud, computed as π · 1.5σx · 1.5σy. It is not the area physically traced by the path. |
| meanVelocity | number | mm/s | Average speed at which the centre of pressure moved. |
| meanVelocityAP | number | mm/s | The same, along the anterior-posterior axis. |
| meanVelocityML | number | mm/s | The same, along the medio-lateral axis. |
| totalDisplacement | number | mm | Total distance travelled by the centre of pressure. |
| totalDisplacementAP | number | mm | Distance along the anterior-posterior axis. |
| totalDisplacementML | number | mm | Distance along the medio-lateral axis. |
| longitudinalAmplitude | number | mm | Range of movement front to back. |
| lateralAmplitude | number | mm | Range of movement side to side. |
| amplitudeRatio | number | ratio | Longitudinal amplitude relative to lateral. |
| xStandardDeviation | number | mm | Spread of the path on the medio-lateral axis. |
| yStandardDeviation | number | mm | Spread on the anterior-posterior axis. |
| phasePlaneAP | number | — | Phase-plane measure along the anterior-posterior axis. |
| phasePlaneML | number | — | Phase-plane measure along the medio-lateral axis. |
| maxDistanceAP | number | mm | Furthest excursion front or back. |
| maxDistanceML | number | mm | Furthest excursion left or right. |
| ellipseWidth | number | mm | Width of the confidence ellipse. |
| ellipseHeight | number | mm | Height of the confidence ellipse. |
| ellipseRotation | number | ° | Rotation of the ellipse, 0 to 360. |
The contents of _oval, and of _ovalLeft and _ovalRight.
The ellipse encloses the centre-of-pressure path and is the usual way of drawing sway.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _cX | number | — | Centre of the ellipse on the medio-lateral axis. |
| _cY | number | — | Centre on the anterior-posterior axis. |
| _width | number | — | Width in the platform's own coordinates. |
| _height | number | — | Height in the platform's own coordinates. |
| _widthInMm | number | mm | Width in millimetres. |
| _heightInMm | number | mm | Height in millimetres. |
| _angle | number | ° | Rotation of the ellipse. |
The contents of _dropLandResults, present on the two drop-land variations.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _repCode | string | uuid | Repetition the landing belongs to. |
| _maxForce | number | Kg | Peak force at landing, both feet combined. |
| _maxForceLeft | number | Kg | Peak force on the left. |
| _maxForceRight | number | Kg | Peak force on the right. |
| _timeToStabilizationBW | number | ms | Time taken after landing for the force to settle back to body weight. |
This variation reports a shorter summary, and its field names carry no leading underscore.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| APAxisAMPL | number | mm | Sway amplitude along the anterior-posterior axis. |
| MLAxisAMPL | number | mm | Sway amplitude along the medio-lateral axis. |
| assymetry | number | % | Difference between the two sensors. Spelt with a double s on the wire. |
| duration | number | ms | |
| ellipseSurfaceGlobal | number | mm² | Area of the confidence ellipse for both sensors combined. |
| ellipseSurfaceLeft | number | mm² | |
| ellipseSurfaceRight | number | mm² | |
| eyesOpen | boolean | — | Whether the stance was held with the eyes open. |
| ordinal | number | index | |
| weightDistributionHeel | number | % | Share of load carried on the heel. |
| weightDistributionTip | number | % | Share of load carried on the forefoot. |
detailed=trueEach repetition additionally carries the recorded path and the raw platform signal.
| Field | Present on | Meaning |
|---|---|---|
| _copCoords | all | Every sampled centre-of-pressure coordinate. |
| _leftCoPCoords _rightCoPCoords | bipodal | The same, per platform. |
| _gridCopCoordsInPercentage | all | The path expressed as a percentage of the platform grid. |
| _copFrequenciesAxisX _copFrequenciesAxisY | bipodal | Frequency content of the sway on each axis. |
| _footHeelForces _footTipForces | unipodal | Force recorded under the heel and the forefoot. |
| _footHeelForcesLeft _footHeelForcesRight _footTipForcesLeft _footTipForcesRight | bipodal | The same, per foot. |
| _deltas _syncedDataPerDevice | all | Raw sample stream and the per-device alignment. |
No fields are added at the top level.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_repResults": [
{
"_repCode": "anon-da36e32a3b",
"_eyesOpen": true,
"_repOrdinal": 1,
"_weight": 14.896,
"_frequency": 250,
"_samplingRateMs": 4,
"_leftDevice": "HEXAS_LEFT",
"_rightDevice": "HEXAS_RIGHT",
"_deviceType": "HEXAS",
"_physicalDevice": {
"width": 368,
"biggerSideHeight": 547,
"horizontalSensorDistance": 300,
"smallSideVerticalSensorDistance": 449,
"bigSideVerticalSensorDistance": 473
},
"_durationMs": 3116,
"_leftDeviceMean": 8.521,
"_rightDeviceMean": 5.2,
"_totalMeanForce": 13.721,
"_weightDistributionRight": 37.898,
"_weightDistributionLeft": 62.102,
"_standardDeviation": 0.0,
"_vfy": -26.559,
"_heelAverageForceLeft": 2.719,
"_tipAverageForceLeft": 5.823,
"_heelAverageForceRight": 1.572,
"_tipAverageForceRight": 3.661,
"_heelForcePercentageLeft": 31.8,
"_tipForcePercentageLeft": 68.2,
"_heelForcePercentageRight": 30,
"_tipForcePercentageRight": 70,
"_copResults": {
"copXMean": -28.13,
"copYMean": 91.377,
"surface": 10410.367,
"meanVelocity": 213.495,
"meanVelocityAP": 123.312,
"meanVelocityML": 143.901,
"totalDisplacement": 665.251,
"totalDisplacementAP": 384.242,
"totalDisplacementML": 448.395,
"longitudinalAmplitude": 103.049,
"lateralAmplitude": 144.723,
"amplitudeRatio": 1.404,
"xStandardDeviation": 41.093,
"yStandardDeviation": 22.057,
"phasePlaneAP": 159.776,
"phasePlaneML": 229.797,
"maxDistanceAP": 167.538,
"maxDistanceML": 142.922,
"ellipseWidth": 60.14,
"ellipseHeight": 220.401,
"ellipseRotation": 334.954
},
"_copResultsLeft": {
"copXMean": 33.171,
"copYMean": 83.903,
"surface": 2331.559,
"meanVelocity": 146.367,
"meanVelocityAP": 120.654,
"meanVelocityML": 59.399,
"totalDisplacement": 456.08,
"totalDisplacementAP": 375.959,
"totalDisplacementML": 185.087,
"longitudinalAmplitude": 92.642,
"lateralAmplitude": 40.852,
"amplitudeRatio": 0.441,
"xStandardDeviation": 8.022,
"yStandardDeviation": 20.244,
"phasePlaneAP": 134.598,
"phasePlaneML": 62.134,
"maxDistanceAP": 153.076,
"maxDistanceML": 63.085,
"ellipseWidth": 28.912,
"ellipseHeight": 102.677,
"ellipseRotation": 74.329
},
"_copResultsRight": {
"copXMean": -17.861,
"copYMean": 60.345,
"surface": 334930.293,
"meanVelocity": 13322.657,
"meanVelocityAP": 10515.323,
"meanVelocityML": 7943.425,
"totalDisplacement": 41513.398,
"totalDisplacementAP": 32765.747,
"totalDisplacementML": 24751.714,
"longitudinalAmplitude": 8034.937,
"lateralAmplitude": 7044.375,
"amplitudeRatio": 0.877,
"xStandardDeviation": 243.608,
"yStandardDeviation": 317.919,
"phasePlaneAP": 103508.137,
"phasePlaneML": 79802.975,
"maxDistanceAP": 5229.179,
"maxDistanceML": 4983.84,
"ellipseWidth": 218.72,
"ellipseHeight": 1949.741,
"ellipseRotation": 52.736
},
"_oval": {
"_cX": 0.462,
"_cY": 0.333,
"_width": 0.082,
"_height": 0.403,
"_heightInMm": 220.401,
"_widthInMm": 60.14,
"_angle": 334.954
},
"_ovalLeft": {
"_cX": 0.295,
"_cY": 0.347,
"_width": 0.039,
"_height": 0.188,
"_heightInMm": 102.677,
"_widthInMm": 28.912,
"_angle": 74.329
},
"_ovalRight": {
"_cX": 0.726,
"_cY": 0.39,
"_width": 0.297,
"_height": 1,
"_heightInMm": 1949.741,
"_widthInMm": 218.72,
"_angle": 52.736
},
"_bodySide": "BOTH",
"_bodyPart": "LEG"
}
]
}
{
"includeAllFields": false,
"_repResults": [
{
"_repCode": "anon-041b9f19bf",
"_eyesOpen": true,
"_repOrdinal": 1,
"_weight": 64.241,
"_frequency": 250,
"_device": "HEXAS_RIGHT",
"_deviceType": "HEXAS",
"_physicalDevice": {
"width": 368,
"biggerSideHeight": 547,
"horizontalSensorDistance": 300,
"smallSideVerticalSensorDistance": 449,
"bigSideVerticalSensorDistance": 473
},
"_durationMs": 5075.9,
"_heelAverageForce": 23.189,
"_tipAverageForce": 41.072,
"_heelForcePercentage": 36.1,
"_tipForcePercentage": 63.9,
"_copResults": {
"copXMean": 58.472,
"copYMean": 65.437,
"surface": 325.653,
"meanVelocity": 22.007,
"meanVelocityAP": 16.001,
"meanVelocityML": 11.922,
"totalDisplacement": 111.706,
"totalDisplacementAP": 81.22,
"totalDisplacementML": 60.516,
"longitudinalAmplitude": 22.96,
"lateralAmplitude": 11.447,
"amplitudeRatio": 0.499,
"xStandardDeviation": 3.414,
"yStandardDeviation": 6.047,
"phasePlaneAP": 66.894,
"phasePlaneML": 59.243,
"maxDistanceAP": 80.016,
"maxDistanceML": 64.681,
"ellipseWidth": 13.236,
"ellipseHeight": 31.327,
"ellipseRotation": 68.919
},
"_oval": {
"_cX": 0.659,
"_cY": 0.38,
"_width": 0.036,
"_height": 0.057,
"_heightInMm": 31.327,
"_widthInMm": 13.236,
"_angle": 68.919
},
"_bodySide": "RIGHT",
"_bodyPart": "LEG",
"_deviceSerialCode": "D101573"
},
"… 1 more"
]
}
Ground reaction forces measured while the participant moves. Where the stance family describes standing still, this one covers movement: squats, push-ups, barbell lifts, hops, landings and changes of direction.
This is the broadest interface in the API. Eleven analyzers sit behind it, chosen by the assessment selected, and they produce three quite different kinds of result.
A set of repetitions of the same movement, described by how load was shared and how the set progressed.
| Variation | Covers | Shape |
|---|---|---|
| Limb distribution | Squats analysis, push-up analysis, flywheel squats — anything recorded on two platforms without a more specific assessment. | 39 fields per set, describing the left/right split at several load intensities. |
| Single-leg distribution | Single leg squat and single leg squats, with a motion sensor recording joint angle alongside the platform. | 13 fields per set. |
| K-Power velocity-based training | Barbell lifts recorded with K-Power: squat, bench press and Bulgarian squat. | 17 fields per set, described by bar speed rather than by force. |
| Advanced analysis | Squats Advanced Analysis and Push-up Advanced Analysis. | no sample available |
A single effort measured from contact to take-off, or through a landing. Five of these six share a core set of fields and add their own measures on top.
| Variation | Covers | Adds |
|---|---|---|
| Change of direction | Planting and pushing off in a new direction. | Entry and exit impulse and velocity, medio-lateral and anterior-posterior peak force, reactive strength index. |
| Single-leg hop | Hopping forward on one leg. | Distance, take-off angle, three-axis peak force, rate of force development. |
| Skater jump | Bounding sideways from one leg to the other. | Flight time, distance, entry and exit measures, separate horizontal and vertical peak forces. |
| Forward horizontal jump | Jumping forward for distance. | Distance, horizontal impulse and velocity, a horizontal reactive strength index. |
| Drop and side jump | Dropping down then jumping sideways. | Entry and exit impulse and velocity, vertical and lateral peak force. |
| One-two vertical jump | A two-step vertical jump, each foot landing separately. | Reports per foot rather than per effort, so it does not follow the shared core. |
Single-leg hop returns two arrays, _resultsModelsTakeOff and
_resultsModelsLanding. Every other variation returns a single
_resultsModels.
Gait analysis recorded on K-Deltas 3D also routes here. no sample available
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _avgLeftDistribution | number | % | Share of load carried on the left, averaged over the set. |
| _avgRightDistribution | number | % | The same for the right. |
| _avgRightDistributionPercent | number | % | |
| _balanceDistributionConfig | object | — | Thresholds the distribution was calculated against. |
| _bigLoadThresHold | number | Kg | Force above which a repetition counts as a heavy load. |
| _bigLoadsLeftLimbRatio | number | % | Left share across the heavy repetitions only. |
| _bodyPart | string | — | Body part recorded against. |
| _bodySide | string | — | LEFT, RIGHT, BOTH, NONE or UNKNOWN. |
| _duration | number | ms | Length of the set. |
| _highIntensityLeftDistribution | number | % | Left share during the heaviest part of each repetition. |
| _highIntensityRightDistribution | number | % | |
| _leftDevice | string | — | Bluetooth identifier of the left platform. |
| _lowIntensityLeftDistribution | number | % | Left share at light load. |
| _lowIntensityRightDistribution | number | % | |
| _maxForce | number | Kg | |
| _maxForceLeft | number | Kg | |
| _maxForceRight | number | Kg | |
| _maxLeftDistribution | number | % | Highest share carried on the left during the set. |
| _maxRightDistribution | number | % | |
| _mediumIntensityLeftDistribution | number | % | Left share at moderate load. |
| _mediumIntensityRightDistribution | number | % | |
| _minForce | number | Kg | |
| _minForceLeft | number | Kg | |
| _minForceRight | number | Kg | |
| _minLeftDistribution | number | % | Lowest share carried on the left. |
| _minRightDistribution | number | % | |
| _normalLoadsLeftLimbRatio | number | % | Left share across the remaining repetitions. |
| _pace | number | reps/min | Repetitions per minute. |
| _repCode | string | — | Repetition the result belongs to. |
| _repOrdinal | number | index | |
| _rightDevice | string | — | Bluetooth identifier of the right platform. |
| _smallLoadThresHold | number | Kg | Force below which a repetition counts as a light load. |
| _smallLoadsLeftLimbRatio | number | % | Left share across the light repetitions only. |
| _squats | array<object> | — | Per-repetition detail for each squat detected. |
| _stanceResults | object | — | Centre-of-pressure measures for the set, in the shape used by the stance family. |
| _standardDeviation | number | Kg | Spread of the recorded force. |
| _weight | number | Kg | |
| hasTridelData | boolean | — | Whether a synchronised Tridel recording is attached. |
| videoResultsModel | object | — | Synchronised video, where one was recorded. |
The distribution fields are shares of the total load. …LeftDistribution and
…RightDistribution describe the same repetition from each side, and the intensity
variants split the set by how heavy each repetition was, against the two threshold fields.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _bodypart | string | — | |
| _duration | number | ms | Length of the set. |
| _forceDevice | string | — | Bluetooth identifier of the platform. |
| _maxAngle | number | ° | Largest joint angle reached, from the motion sensor. |
| _maxForce | number | Kg | |
| _minForce | number | Kg | |
| _numberOfReps | number | count | Repetitions detected. |
| _pace | number | reps/min | Repetitions per minute. |
| _repCode | string | — | Repetition the result belongs to. |
| _repOrdinal | number | index | |
| _repSide | string | — | Side the repetition was performed on. |
| _sensDevice | string | — | Bluetooth identifier of the motion sensor. |
| _weight | number | Kg |
Velocity-based training measures the bar, not the platform, so this variation shares no fields with the others. Speed is reported for the lowering phase, the lifting phase, and the propulsive part of the lift.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _repCode | string | — | Repetition the result belongs to. |
| avgConcentricSpeed | number | m/s | Mean speed of the lifting phase. |
| avgEccentricSpeed | number | m/s | Mean speed of the lowering phase. |
| avgPropulsiveSpeed | number | m/s | Mean speed while the bar is still being accelerated. |
| barbellWeight | number | Kg | Load on the bar. |
| concentricMaxDistance | number | m | Longest lifting distance recorded. |
| duration | number | ms | Length of the set. |
| maxAvgPower | number | W | Highest mean power of any single repetition. |
| maxConcentricSpeed | number | m/s | Fastest lifting phase in the set. |
| maxEccentricSpeed | number | m/s | Fastest lowering phase. |
| maxPower | number | W | Peak power in the set. |
| maxPropulsiveSpeed | number | m/s | Fastest propulsive phase. |
| numberOfReps | number | count | Repetitions detected. |
| pace | number | reps/min | Repetitions per minute. |
| repCycles | array<object> | — | Start and end of each repetition. |
| repOrdinal | number | index | |
| target | number | — | Target the set was performed against. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _repCode | string | — | Repetition the result belongs to. |
| ordinal | number | index | Position of the repetition, starting at 1. |
| bodySide | string | — | LEFT, RIGHT, BOTH, NONE or UNKNOWN. |
| bodypart | string | — | Body part recorded against. |
| startTime | number | s | When the effort began. |
| endTime | number | s | When it ended. |
| startTimePure | number | s | Start without the detection padding applied. |
| endTimePure | number | s | End without the detection padding applied. |
| contactTime | number | s | Time in contact with the platform. |
| frequency | number | Hz | Sampling rate. |
| weightKg | number | Kg | Body weight in kilograms. |
| weightNewton | number | N | The same weight expressed in newtons. |
| leftDevice | string | — | Bluetooth identifier of the left platform. |
| rightDevice | string | — | Bluetooth identifier of the right platform. |
| hasTridelData | boolean | — | Whether a synchronised Tridel recording is attached. |
Body weight is reported twice, as weightKg and weightNewton.
Axis conventions follow the platform: X is medio-lateral, Y anterior-posterior, Z vertical.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| impulseEntry | object | N·s | Impulse absorbed on landing. |
| impulseOut | object | N·s | Impulse produced on take-off. |
| maxForceX | object | N | Peak force on the medio-lateral axis. |
| maxForceY | object | N | Peak force on the anterior-posterior axis. |
| rsi | number | — | Reactive strength index. |
| tridelData | object | — | The synchronised Tridel recording. |
| velocityEntry | number | m/s | Velocity at contact. |
| velocityOut | number | m/s | Velocity at take-off. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| horizontalDistance | number | cm | Distance covered. |
| impulseOut | object | N·s | Impulse produced on take-off. |
| maxForceX | object | N | Peak force on the medio-lateral axis. |
| maxForceY | object | N | Peak force on the anterior-posterior axis. |
| maxForceZ | object | N | Peak vertical force. |
| rfdY | object | N/s | Rate of force development on the anterior-posterior axis. |
| takeoffAngle | number | ° | Angle of the take-off. |
| velocityOut | number | m/s | Velocity at take-off. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| flightTime | number | s | Time airborne. |
| horizontalDistance | number | cm | Distance covered. |
| impulseEntry | object | N·s | Impulse absorbed on landing. |
| impulseOut | object | N·s | Impulse produced on take-off. |
| maxForceY | object | N | Peak force on the anterior-posterior axis. |
| maxForceZ | object | N | Peak vertical force. |
| peakHorizontalForce | number | N | Peak force in the direction of travel. |
| peakVerticalForce | number | N | Peak force straight down. |
| rsi | number | — | Reactive strength index. |
| takeoffAngle | number | ° | Angle of the take-off. |
| tridelData | object | — | The synchronised Tridel recording. |
| velocityEntry | number | m/s | Velocity at contact. |
| velocityOut | number | m/s | Velocity at take-off. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| horizontalDistance | number | cm | Distance covered. |
| horizontalRSI | number | — | Reactive strength index for the horizontal effort. |
| impulseX | object | N·s | Impulse along the horizontal axis. |
| maxForceX | object | N | Peak force on the medio-lateral axis. |
| maxForceZ | object | N | Peak vertical force. |
| rfdX | object | N/s | Rate of force development on the horizontal axis. |
| tridelData | object | — | The synchronised Tridel recording. |
| velocityXTakeOff | number | m/s | Horizontal velocity at take-off. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| impulseEntry | object | N·s | Impulse absorbed on landing. |
| impulseOut | object | N·s | Impulse produced on take-off. |
| maxForceY | object | N | Peak force on the anterior-posterior axis. |
| maxForceZ | object | N | Peak vertical force. |
| rsi | number | — | Reactive strength index. |
| tridelData | object | — | The synchronised Tridel recording. |
| velocityEntry | number | m/s | Velocity at contact. |
| velocityOut | number | m/s | Velocity at take-off. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| contactLeft | number | s | Contact time for the left foot. |
| contactRight | number | s | Contact time for the right foot. |
| jumpResults | object | — | Nested jump measures for the vertical effort. |
| leftStart | number | s | When the left foot made contact. |
| maxForceX | object | N | Peak force on the medio-lateral axis. |
| repCode | string | — | Repetition the result belongs to. |
| rfdPeak | number | N/s | Peak rate of force development. |
| rightStart | number | s | When the right foot made contact. |
| velocityEntryX | number | m/s | Horizontal velocity at contact. |
detailed=trueThe ground-contact tests add the raw platform signal split by platform and axis
(_leftForces, _rightForces, _leftForcesX,
_leftForcesY, _rightForcesX, _rightForcesY,
_deltas), plus videoResultsModel where a video was recorded. Limb
distribution adds the per-squat force streams; single-leg distribution adds _angles and
_repCycles; K-Power adds _distances, _speed and
_timestamps.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_repResults": [
{
"_repCode": "anon-431a2330c8",
"numberOfReps": 2,
"repCycles": [
{
"_timestamp": 1290,
"_pace": 0.0,
"_ordinal": 1,
"_eccentricPeakSpeed": -1.474,
"_eccentricAvgSpeed": -0.762,
"_concentricPeakSpeed": 1.302,
"_concentricMaxDistance": 0.896,
"_concentricMinDistance": 0.609,
"_concentricAvgSpeed": 0.735,
"_concentricStartIndex": 258,
"_concentricEndIndex": 336,
"_eccentricStartIndex": 336,
"_eccentricEndIndex": 428,
"_maxSpeedIndex": 295,
"_minSpeedIndex": 391,
"_maxDistance": 0.903,
"_minDistance": 0.581,
"_peakPower": 127.732,
"_averagePower": 49.858,
"_meanPropulsiveSpeed": 0.73,
"_isSuccessful": false
},
"… 1 more"
],
"duration": 5.035,
"pace": 23.833,
"maxConcentricSpeed": 1.858,
"avgConcentricSpeed": 0.939,
"maxEccentricSpeed": 1.474,
"avgEccentricSpeed": 0.762,
"maxPropulsiveSpeed": 0.973,
"avgPropulsiveSpeed": 0.852,
"concentricMaxDistance": 0.325,
"maxPower": 235.894,
"maxAvgPower": 63.686,
"barbellWeight": 7,
"repOrdinal": 1,
"target": 0
}
]
}
{
"includeAllFields": false,
"_resultsModels": [
{
"_repCode": "anon-57463ba024",
"bodypart": "LEG",
"weightNewton": 886.368,
"frequency": 303,
"leftDevice": "DELTAS_3D_LEFT",
"rightDevice": "DELTAS_3D_RIGHT",
"startTime": 0,
"endTime": 689,
"startTimePure": 0,
"endTimePure": 689,
"maxForceX": {
"LEFT": 36.734,
"RIGHT": 41.773,
"BOTH": 78.506
},
"maxForceZ": {
"LEFT": 121.989,
"RIGHT": 121.892,
"BOTH": 243.881
},
"impulseX": {
"LEFT": 108.678,
"RIGHT": 81.715,
"BOTH": 190.393
},
"rfdX": {
"LEFT": 1239.743,
"RIGHT": 1410.819,
"BOTH": 2650.561
},
"horizontalDistance": 116.606,
"horizontalRSI": 1.38,
"velocityXTakeOff": 2.107,
"contactTime": 1526.667,
"hasTridelData": true,
"ordinal": 1,
"bodySide": "BOTH",
"weightKg": 90.354,
"tridelData": {
"_repCode": "anon-57463ba024"
}
}
]
}
{
"includeAllFields": false,
"_repResults": [
{
"_repCode": "anon-7bbe8cc9db",
"_forceDevice": "HEXAS_RIGHT",
"_sensDevice": "SENS",
"_weight": 10.881,
"_duration": 1.272,
"_numberOfReps": 1,
"_pace": 47.174,
"_maxForce": 12.176,
"_minForce": 6.858,
"_maxAngle": 43.926,
"_repSide": "RIGHT",
"_repOrdinal": 1,
"_bodypart": "LEG"
},
"… 1 more"
]
}
{
"includeAllFields": false,
"_repResults": [
{
"_repCode": "anon-56410db19e",
"_repOrdinal": 1,
"_duration": 30,
"_weight": 80.951,
"_leftDevice": "HEXAS_LEFT",
"_rightDevice": "HEXAS_RIGHT",
"_maxForce": 81.563,
"_maxForceLeft": 36.834,
"_maxForceRight": 44.729,
"_minForce": 80.417,
"_minForceLeft": 37.269,
"_minForceRight": 43.149,
"_smallLoadThresHold": 80.867,
"_bigLoadThresHold": 81.005,
"_avgLeftDistribution": 45.956,
"_minLeftDistribution": 44.451,
"_maxLeftDistribution": 46.965,
"_avgRightDistribution": 54.044,
"_maxRightDistribution": 55.549,
"_minRightDistribution": 53.035,
"_avgRightDistributionPercent": 0.54,
"_standardDeviation": 0.407,
"_smallLoadsLeftLimbRatio": 0.46,
"_lowIntensityLeftDistribution": 45.974,
"_lowIntensityRightDistribution": 54.026,
"_normalLoadsLeftLimbRatio": 0.459,
"_mediumIntensityLeftDistribution": 45.941,
"_mediumIntensityRightDistribution": 54.059,
"_bigLoadsLeftLimbRatio": 0.46,
"_highIntensityLeftDistribution": 45.958,
"_highIntensityRightDistribution": 54.042,
"_squats": [],
"_pace": 0,
"hasTridelData": false,
"videoResultsModel": {
"leftY": [],
"leftZ": [],
"rightY": [],
"rightZ": []
},
"_bodyPart": "LEG",
"_bodySide": "BOTH",
"_balanceDistributionConfig": {
"_targetDifficultyRangeLeft": 0.53,
"_targetDifficultyRangeRight": 0.555,
"_targetDistribution": 0,
"_orientationType": "HORIZONTAL",
"_shouldApplyTargetToleranceAccordingToTheTarget": false,
"_targetAreaColor": "#baed91"
},
"_stanceResults": {
"_repCode": "anon-56410db19e",
"_eyesOpen": true,
"_repOrdinal": 1,
"_weight": 80.951,
"_frequency": 250,
"_samplingRateMs": 4,
"_leftDevice": "HEXAS_LEFT",
"_rightDevice": "HEXAS_RIGHT",
"_deviceType": "HEXAS",
"_physicalDevice": {
"width": 368,
"biggerSideHeight": 547,
"horizontalSensorDistance": 300,
"smallSideVerticalSensorDistance": 449,
"bigSideVerticalSensorDistance": 473
},
"_durationMs": 30556.1,
"_leftDeviceMean": 37.214,
"_rightDeviceMean": 43.761,
"_totalMeanForce": 80.975,
"_weightDistributionRight": 54.043,
"_weightDistributionLeft": 45.957,
"_standardDeviation": 0.0,
"_vfy": -56.604,
"_heelAverageForceLeft": 21.293,
"_tipAverageForceLeft": 15.921,
"_heelAverageForceRight": 27.837,
"_tipAverageForceRight": 15.925,
"_heelForcePercentageLeft": 57.2,
"_tipForcePercentageLeft": 42.8,
"_heelForcePercentageRight": 63.6,
"_tipForcePercentageRight": 36.4,
"_copResults": {
"copXMean": 11.913,
"copYMean": -48.551,
"surface": 79.966,
"meanVelocity": 26.464,
"meanVelocityAP": 17.056,
"meanVelocityML": 16.626,
"totalDisplacement": 808.643,
"totalDisplacementAP": 521.153,
"totalDisplacementML": 508.009,
"longitudinalAmplitude": 15.214,
"lateralAmplitude": 8.515,
"amplitudeRatio": 0.56,
"xStandardDeviation": 1.26,
"yStandardDeviation": 3.378,
"phasePlaneAP": 50.488,
"phasePlaneML": 17.6,
"maxDistanceAP": 57.275,
"maxDistanceML": 16.338,
"ellipseWidth": 6.155,
"ellipseHeight": 16.542,
"ellipseRotation": 88.405
},
"_copResultsLeft": {
"copXMean": 18.342,
"copYMean": -30.362,
"surface": 48.425,
"meanVelocity": 33.32,
"meanVelocityAP": 25.624,
"meanVelocityML": 16.281,
"totalDisplacement": 1018.141,
"totalDisplacementAP": 782.982,
"totalDisplacementML": 497.482,
"longitudinalAmplitude": 21.902,
"lateralAmplitude": 4.833,
"amplitudeRatio": 0.221,
"xStandardDeviation": 0.765,
"yStandardDeviation": 4.929,
"phasePlaneAP": 36.353,
"phasePlaneML": 22.208,
"maxDistanceAP": 42.852,
"maxDistanceML": 21.43,
"ellipseWidth": 2.538,
"ellipseHeight": 24.289,
"ellipseRotation": 96.551
},
"_copResultsRight": {
"copXMean": -21.084,
"copYMean": -64.008,
"surface": 13.162,
"meanVelocity": 28.078,
"meanVelocityAP": 21.904,
"meanVelocityML": 13.348,
"totalDisplacement": 857.951,
"totalDisplacementAP": 669.31,
"totalDisplacementML": 407.859,
"longitudinalAmplitude": 12.056,
"lateralAmplitude": 2.476,
"amplitudeRatio": 0.205,
"xStandardDeviation": 0.342,
"yStandardDeviation": 2.413,
"phasePlaneAP": 66.724,
"phasePlaneML": 23.633,
"maxDistanceAP": 70.043,
"maxDistanceML": 22.346,
"ellipseWidth": 1.414,
"ellipseHeight": 11.848,
"ellipseRotation": 85.644
},
"_oval": {
"_cX": 0.516,
"_cY": 0.589,
"_width": 0.008,
"_height": 0.03,
"_heightInMm": 16.542,
"_widthInMm": 6.155,
"_angle": 88.405
},
"_ovalLeft": {
"_cX": 0.275,
"_cY": 0.556,
"_width": 0.003,
"_height": 0.044,
"_heightInMm": 24.289,
"_widthInMm": 2.538,
"_angle": 96.551
},
"_ovalRight": {
"_cX": 0.721,
"_cY": 0.617,
"_width": 0.002,
"_height": 0.022,
"_heightInMm": 11.848,
"_widthInMm": 1.414,
"_angle": 85.644
},
"_bodySide": "BOTH",
"_bodyPart": "LEG"
}
},
"… 2 more"
]
}
{
"includeAllFields": false,
"_resultsModels": [
{
"_repCode": "anon-f6eed38307",
"bodypart": "LEG",
"weightNewton": 794.366,
"frequency": 250,
"leftDevice": "DELTAS_3D_LEFT",
"rightDevice": "DELTAS_3D_RIGHT",
"startTime": 0,
"endTime": 308,
"startTimePure": 16,
"endTimePure": 308,
"maxForceX": {
"LEFT": 0.102,
"RIGHT": 18.584,
"BOTH": 18.686
},
"maxForceY": {
"LEFT": 0.032,
"RIGHT": 40.881,
"BOTH": 40.912
},
"impulseEntry": {
"LEFT": 0.69,
"RIGHT": 73.443,
"BOTH": 72.753
},
"impulseOut": {
"LEFT": 0.436,
"RIGHT": 146.038,
"BOTH": 146.474
},
"velocityEntry": 0.898,
"velocityOut": 1.809,
"contactTime": 1168,
"rsi": 1.549,
"hasTridelData": true,
"ordinal": 1,
"bodySide": "LEFT",
"weightKg": 80.975,
"tridelData": {
"_repCode": "anon-f6eed38307"
}
},
"… 3 more"
]
}
{
"includeAllFields": false,
"_resultsModels": [
{
"_repCode": "anon-2bc70d915e",
"bodypart": "LEG",
"weightNewton": 794.366,
"frequency": 250,
"leftDevice": "DELTAS_3D_LEFT",
"rightDevice": "DELTAS_3D_RIGHT",
"startTime": 146,
"endTime": 392,
"startTimePure": 158,
"endTimePure": 380,
"maxForceZ": {
"LEFT": 0.059,
"RIGHT": 141.052,
"BOTH": 141.111
},
"maxForceY": {
"LEFT": 0.026,
"RIGHT": 46.2,
"BOTH": 46.226
},
"impulseEntry": {
"LEFT": 0.453,
"RIGHT": 22.848,
"BOTH": 22.396
},
"impulseOut": {
"LEFT": 0.125,
"RIGHT": 139.903,
"BOTH": 139.777
},
"velocityEntry": 0.277,
"velocityOut": 1.726,
"contactTime": 888,
"rsi": 1.944,
"takeoffAngle": 152.301,
"flightTime": 388.474,
"horizontalDistance": 740222.48,
"peakVerticalForce": 1383.138,
"peakHorizontalForce": 453.476,
"hasTridelData": true,
"ordinal": 1,
"bodySide": "RIGHT",
"weightKg": 80.975,
"tridelData": {
"_repCode": "anon-2bc70d915e"
}
},
"… 1 more"
]
}
{
"includeAllFields": false,
"_resultsModels": [
{
"_repCode": "anon-52f1701bdb",
"bodypart": "LEG",
"weightNewton": 941.708,
"frequency": 250,
"leftDevice": "DELTAS_3D_LEFT",
"rightDevice": "DELTAS_3D_RIGHT",
"startTime": 849,
"endTime": 1070,
"startTimePure": 899,
"endTimePure": 1020,
"maxForceZ": {
"LEFT": 271.41,
"RIGHT": 0.613,
"BOTH": 272.023
},
"maxForceY": {
"LEFT": 81.008,
"RIGHT": 0.155,
"BOTH": 81.163
},
"impulseEntry": {
"LEFT": 103.891,
"RIGHT": 1.25,
"BOTH": 102.641
},
"impulseOut": {
"LEFT": 219.102,
"RIGHT": 0.243,
"BOTH": 218.859
},
"velocityEntry": 1.069,
"velocityOut": 2.28,
"contactTime": 484,
"rsi": 4.711,
"hasTridelData": true,
"ordinal": 1,
"bodySide": "LEFT",
"weightKg": 95.995,
"tridelData": {
"_repCode": "anon-52f1701bdb"
}
}
]
}
{
"includeAllFields": false,
"_resultsModels": [
{
"velocityEntryX": 0.613,
"contactLeft": 0,
"leftStart": 0,
"contactRight": 0,
"rightStart": 0,
"rfdPeak": 0,
"maxForceX": {},
"repCode": "anon-ff6d5104e1",
"ordinal": 1,
"bodySide": "BOTH",
"jumpResults": {
"_repCode": "anon-ff6d5104e1",
"bodypart": "LEG",
"bodySide": "BOTH",
"leftDevice": "DELTAS_3D_LEFT",
"rightDevice": "DELTAS_3D_RIGHT",
"impulsion": 0,
"rightImpulsion": 0,
"leftImpulsion": 0,
"rightImpulsionPercentage": 0,
"leftImpulsionPercentage": 0,
"totalRfd": 0,
"leftRfd": 0,
"rightRfd": 0,
"pointWhereJumpProcedureStarted": {
"_force": 0,
"_time": 0
},
"minRfdValuePair": {
"_force": 0,
"_time": 0
},
"maxRfdValuePair": {
"_force": 0,
"_time": 0
},
"minValuePair": {
"_force": 0,
"_time": 0
},
"maxValuePair": {
"_force": 0,
"_time": 0
},
"maxVelocityPair": {
"_force": 0,
"_time": 0
},
"maxRfdPair": {
"_force": 0,
"_time": 0
},
"maxDisplacementPair": {
"_force": 0,
"_time": 0
},
"maxPowerPair": {
"_force": 0,
"_time": 0
},
"jump": null,
"contractionTime": 0,
"contactTime": 0,
"reactiveStrengthIndex": 0,
"reactiveStrengthIndexByTimeToTakeOff": 0,
"reactiveStrengthIndexByHeight": 0,
"reactiveStrengthIndexByHeightAndTimeToTakeOff": 0,
"maxPower": 0,
"maxPowerLeft": 0,
"maxPowerRight": 0,
"relativeMeanPower": 0,
"relativeMeanPowerLeft": 0,
"meanPower": 0,
"meanPowerLeft": 0,
"meanPowerRight": 0,
"maxPowerLeftPercentage": 0,
"maxPowerRightPercentage": 0,
"phases": [],
"forceAtZeroVelocity": 0,
"forceAtZeroVelocityLeft": 0,
"relativeForceAtZeroVelocity": 0,
"freq": 250,
"takeOffIndex": 0,
"maxVelocity": 0,
"relativeMaxForce": 0,
"relativeMaxForceLeft": 0,
"maxPositiveVelocity": 0,
"netPropulsiveImpulse": 0,
"relativeNetPropulsiveImpulse": 0,
"relativePropulsiveImpulse": 0,
"relativePropulsiveRpdAverage": 0,
"relativePropulsiveAveragePower": 0,
"relativePropulsivePeakPower": 0,
"relativePropulsivePeakPowerLeft": 0,
"relativePropulsivePeakForce": 0,
"relativePropulsivePeakForceLeft": 0,
"relativePropulsiveAverageForce": 0,
"netMaxPropulsiveForce": 0,
"relativeNetMaxPropulsiveForce": 0,
"netAveragePropulsiveForce": 0,
"relativeNetAveragePropulsiveForce": 0,
"maxNegativeVelocity": 0,
"minDisplacement": 0,
"legStifness": 0,
"legStifnessL": 0,
"relativeLegStifness": 0,
"relativeLegStifnessLeft": 0,
"unweightingMinForceBwPercent": 0,
"unweightingMinForce": 0,
"unweightingMinForceLeft": 0,
"unweightingMinForceRight": 0,
"unweightingMinForceRelative": 0,
"unweightingMinForceRelativeLeft": 0,
"unweightingMinForceRelativeRight": 0,
"netBrakingImpulse": 0,
"relativeNetBrakingImpulse": 0,
"movementTime": 0,
"impulses": [],
"impulsesLeft": [],
"impulsesRight": [],
"relativeImpulses": [],
"relativeImpulsesLeft": [],
"relativeImpulsesRight": [],
"relativeBrakingPeakForce": 0,
"relativeBrakingPeakForceLeft": 0,
"relativeBrakingPeakForceRight": 0,
"relativeEccentricBrakingRfd": 0,
"relativeEccentricBrakingRfdLeft": 0,
"eccentricBrakingRfd": 0,
"eccentricBrakingRfdLeft": 0,
"eccentricBrakingRfdRight": 0,
"relativeEccentricBrakingDecelerationRfd": 0,
"relativeEccentricBrakingDecelerationRfdLeft": 0,
"eccentricBrakingDecelerationRfd": 0,
"eccentricBrakingDecelerationRfdLeft": 0,
"eccentricBrakingDecelerationRfdRight": 0,
"relativeBrakingAverageForce": 0,
"relativeBrakingPeakPower": 0,
"relativeBrakingRfdAverage": 0,
"relativebrakingImpulse": 0,
"netPeakBrakingForce": 0,
"netAverageBrakingForce": 0,
"relativeNetAverageBrakingForce": 0,
"relativeNegativeMaxRfd": 0,
"relativeNegativeMaxRfdLeft": 0,
"negativeMaxRfd": 0,
"negativeMaxRfdLeft": 0,
"negativeMaxRfdRight": 0,
"unweightingMinForceAssymetry": 0,
"timeToMinForceUnweighting": 0,
"timeToMinForceUnweightingL": 0,
"timeToMinForceUnweightingR": 0,
"timeToMaxForce": 0,
"timeToMaxForceL": 0,
"timeToMaxForceR": 0,
"timeToMaxPower": 0,
"timeToMaxPowerL": 0,
"timeToMaxPowerR": 0,
"rfdMaxAsymmetry": 0,
"rfdAverage": 0,
"rfdAverageL": 0,
"rfdAverageR": 0,
"rpdAverage": 0,
"maxPowerAsymmetry": 0,
"jumpAverageForceAsymetry": 0,
"timeAtMaxVelocity": 0,
"maxForceAsymmetry": 0,
"relativeMaxPower": 0,
"relativeMaxPowerLeft": 0,
"relativeRpdMax": 0,
"relativeRpdMaxLeft": 0,
"rpdMax": 0,
"rpdMaxLeft": 0,
"relativeTotalImpulse": 0,
"relativeTotalImpulseLeft": 0,
"totalImpulseAsymetry": 0,
"forceAtMaxPower": 0,
"relativeForceAtMaxPower": 0,
"relativeForceAtMaxPowerLeft": 0,
"relativeForceAtMaxPowerRight": 0,
"forceAtMaxPowerLeft": 0,
"forceAtMaxPowerRight": 0,
"relativeMaxUnweighting": 0,
"relativeRfdMax": 0,
"relativeRfdMaxLeft": 0,
"relativeNetMaxForce": 0,
"netMaxForce": 0,
"netAverageForce": 0,
"relativeAverageForce": 0,
"relativeAverageForceLeft": 0,
"relativeRfdAverage": 0,
"relativeRfdAverageLeft": 0,
"rfdsFrom0": [],
"relativeRfdsFrom0": [],
"rfdsFrom0Left": [],
"relativeRfdsFrom0Left": [],
"rfdsFrom0Right": [],
"relativeRfdsFrom0Right": [],
"rfds": [],
"relativeRfds": [],
"rfdsLeft": [],
"relativeRfdsLeft": [],
"rfdsRight": [],
"relativeRfdsRight": [],
"rpdsSince0": [],
"rpdsLeftSince0": [],
"rpdsRightSince0": [],
"relativeRpdsSince0": [],
"relativeRpdsSince0Left": [],
"relativeRpdsSince0Right": [],
"rpds": [],
"rpdsLeft": [],
"rpdsRight": [],
"relativeRpds": [],
"relativeRpdsLeft": [],
"relativeRpdsRight": [],
"netImpulse": 0,
"relativeNetImpulse": 0,
"relativePeakLandingForce": 0,
"relativePeakLandingForceLeft": 0,
"relativePeakLandingForceRight": 0,
"relativePeakLandingForceBw": 0,
"relativePeakLandingForceBwLeft": 0,
"relativePeakLandingForceBwRight": 0,
"relativeMeanLandingForce": 0,
"propulsiveImpulsePhase1": 0,
"relativePropulsiveImpulsePhase1": 0,
"relativePropulsiveImpulsePhase1Left": 0,
"relativePropulsiveImpulsePhase1Right": 0,
"propulsiveImpulsePhase1Left": 0,
"propulsiveImpulsePhase1Right": 0,
"propulsiveImpulsePhase2": 0,
"relativePropulsiveImpulsePhase2": 0,
"relativePropulsiveImpulsePhase2Left": 0,
"relativePropulsiveImpulsePhase2Right": 0,
"propulsiveImpulsePhase2Left": 0,
"propulsiveImpulsePhase2Right": 0,
"peakForceIndex": 0,
"netMaxContactForce": 0,
"relativeNetMaxContactForce": 0,
"netMeanContactForce": 0,
"relativeNetMeanContactForce": 0,
"netContactImpulse": 0,
"relativeNetContactImpulse": 0,
"unweightingNetImpulse": 0,
"hasTridelData": true,
"repOrdinal": 1,
"mass": 76.67,
"weight": 752.132
}
}
]
}
A single effort measured across both limbs at once, with each platform reporting its own contribution. The isometric mid-thigh pull is the assessment this family was built for.
Activities on the Total Evaluation interface. Three variations, selected by the assessment and by whether an EMG sensor is attached:
| Variation | Covers | Shape |
|---|---|---|
| Total evaluation | Bilateral force tests such as the isometric mid-thigh pull, on two platforms. | 10 summary fields, then 42 per repetition. |
| Total evaluation with EMG | The same test with a K-Myo sensor attached. | Muscle activation only: 4 summary fields, 4 per repetition. |
| Body weight | Standing on the platforms to record body weight. | A single value. No repetitions. |
The main variation reuses the force and rate-of-force-development vocabulary of the Max Evaluation family. Of its 42 per-repetition fields, 20 carry the same name and meaning as they do there. The remaining 22 are the per-side splits this family adds, together with the force-at-100 ms measures.
Fields present in Max Evaluation but absent here: device provenance
(_device, _serialCode, _measurementVersion,
_frequency), torque, _netMaxForce, _rfd20To80FMax,
_maxTimeOnTarget, and the rate and impulse series.
There is no _maxRightValue. Every other measure has an explicit
Left and Right pair, but the right-side peak is not serialised. It is
derived, and a client needs to compute it:
right peak = _maxValue − _maxLeftValue
Aggregates across the repetitions, per side.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _deviationsOfMaxForceLeft | number | Kg | Standard deviation of the peak across repetitions, left. |
| _deviationsOfMaxForceRight | number | Kg | The same on the right. |
| _deviationsOfRfdLeft | number | Kg/s | Standard deviation of the rate of force development, left. |
| _deviationsOfRfdRight | number | Kg/s | The same on the right. |
| _meanOfMaxLeft | number | Kg | Mean of the per-repetition peak on the left. |
| _meanOfMaxRight | number | Kg | The same on the right. |
| _meanRfdLeft | number | Kg/s | Mean rate of force development on the left. |
| _meanRfdRight | number | Kg/s | The same on the right. |
| _resultsPerRep | array<object> | — | One entry per repetition. |
| includeAllFields | boolean | — | Mirrors the detailed query parameter. |
Same names, same meanings. See that family for the full descriptions.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _averageRfd | number | Kg/s | |
| _averageValue | number | Kg | Mean force across the repetition, both sides. |
| _forceAtRfdEndTime | number | Kg | |
| _forceAtRfdStartTime | number | Kg | |
| _forceAtRfdStartTime200MsBefore | number | Kg | |
| _forcesAtSteps | array<number> | Kg | Force at 50, 100 and 250 ms after the pull begins. |
| _impulse | number | N·s | Area under the curve, both sides. Converted to newtons. |
| _maxValue | number | Kg | Peak force from both platforms combined. |
| _repOrdinal | number | index | Position of the repetition, starting at 1. |
| _repSide | string | — | Side recorded. BOTH for a bilateral test. |
| _rfdEndTime | number | s | |
| _rfdFromMax | number | Kg/s | |
| _rfdStartTime | number | s | |
| _rfdStartTime200MsBefore | number | s | |
| _rfdToMax | number | Kg/s | |
| _rfdToMaxEndTime | number | s | |
| _rfdToMaxEndTimeForce | number | Kg | |
| _rfdToMaxStartTime | number | s | |
| _rfdToMaxStartTimeForce | number | Kg | |
| _timeToMax | number | ms | Time from the start of the pull to the peak. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _averageLeftValue | number | Kg | Mean on the left. |
| _averageRfdLeft | number | Kg/s | |
| _averageRfdRight | number | Kg/s | |
| _averageRightValue | number | Kg | Mean on the right. |
| _forcesAtStepsLeft | array<number> | Kg | The same on the left. |
| _forcesAtStepsRight | array<number> | Kg | The same on the right. |
| _impulseLeft | number | Kg·s | The same on the left, not converted. |
| _impulseRight | number | Kg·s | The same on the right, not converted. |
| _maxLeftValue | number | Kg | Peak force on the left platform. |
| _rfdFromMaxLeft | number | Kg/s | |
| _rfdFromMaxRight | number | Kg/s | |
| _rfdToMaxLeft | number | Kg/s | |
| _rfdToMaxRight | number | Kg/s | |
| _timeToMaxL | number | ms | The same on the left. |
| _timeToMaxR | number | ms | The same on the right. |
| _valueAt100ms | number | Kg | Force reached 100 ms after the pull begins. |
| _valueAt100msLeft | number | Kg | The same on the left. |
| _valueAt100msRight | number | Kg | The same on the right. |
| _valueAt100msToMaxValuePercentage | number | % | Force at 100 ms as a share of the peak. |
| _valueAt100msToMaxValuePercentageLeft | number | % | The same on the left. |
| _valueAt100msToMaxValuePercentageRight | number | % | The same on the right. |
| _weight | number | Kg | Participant body weight recorded with the test. |
_timeToMaxL and _timeToMaxR use the short per-side suffix; every other
pair in this family uses Left and Right in full.
When a K-Myo sensor is attached the force measures are replaced entirely by muscle activation.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _emgDataLeft | object | — | Per-channel EMG results for the left side. |
| _emgDataRight | object | — | The same for the right. |
| _repOrdinal | number | index | Position of the repetition, starting at 1. |
| _repSide | string | — | Side recorded. BOTH for a bilateral test. |
The summary carries _maxPerSideEmg and _minCoactivationIndex alongside
_resultsPerRep.
The shortest result in the API. No repetition array is returned at all.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| includeAllFields | boolean | — | Mirrors the detailed query parameter. |
| weight | number | Kg | Body weight measured by the platforms. |
detailed=trueThe main variation adds the raw signal per side — _forcesLeft,
_forcesRight, _deltas, _syncedSamples — together with
the rate and impulse series that the summary omits: _rfds, _rfdsSince0,
_impulses, _impulsesSince0 and their per-side variants. The EMG and body
weight variations add nothing.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"weight": 64.642
}
{
"includeAllFields": false,
"_resultsPerRep": [
{
"_maxValue": 11.107,
"_maxLeftValue": 5.178,
"_averageValue": 6.276,
"_averageLeftValue": 3.654,
"_averageRightValue": 2.622,
"_timeToMax": 752,
"_timeToMaxL": 732,
"_timeToMaxR": 752,
"_rfdToMax": 76.548,
"_rfdToMaxStartTime": 0.62,
"_rfdToMaxEndTime": 0.82,
"_rfdToMaxStartTimeForce": 2.233,
"_rfdToMaxEndTimeForce": 8.948,
"_rfdToMaxLeft": 15.085,
"_rfdToMaxRight": 33.093,
"_rfdFromMax": -1.947,
"_rfdFromMaxLeft": -0.593,
"_rfdFromMaxRight": -1.382,
"_impulse": 201.795,
"_impulseLeft": 117.48,
"_impulseRight": 84.315,
"_rfdStartTime": 0.256,
"_rfdEndTime": 1.008,
"_forceAtRfdStartTime": 0.642,
"_forceAtRfdEndTime": 11.107,
"_rfdStartTime200MsBefore": 0.056,
"_valueAt100ms": 1.15,
"_valueAt100msLeft": 1.551,
"_valueAt100msRight": -0.401,
"_weight": 12.924,
"_forceAtRfdStartTime200MsBefore": 1.748,
"_forcesAtSteps": [
0.943,
1.15,
0.957
],
"_forcesAtStepsLeft": [
1.522,
1.551,
1.452
],
"_forcesAtStepsRight": [
-0.579,
-0.401,
-0.496
],
"_averageRfd": 35.343,
"_averageRfdLeft": 10.537,
"_averageRfdRight": 24.806,
"_repOrdinal": 1,
"_repSide": "BOTH",
"_valueAt100msToMaxValuePercentage": 10.352,
"_valueAt100msToMaxValuePercentageLeft": 29.958,
"_valueAt100msToMaxValuePercentageRight": -6.771
}
],
"_meanRfdLeft": 15.085,
"_meanOfMaxLeft": 5.178,
"_deviationsOfMaxForceLeft": 0,
"_deviationsOfRfdLeft": 0,
"_meanOfMaxRight": 5.929,
"_meanRfdRight": 33.093,
"_deviationsOfMaxForceRight": 0,
"_deviationsOfRfdRight": 0
}
{
"includeAllFields": false,
"_resultsPerRep": [
{
"_repOrdinal": 1,
"_repSide": "BOTH",
"_emgDataLeft": {
"_repCode": "",
"_hasSecondChannel": false,
"_maxValue": {
"ch1": 1408.01
},
"_minValue": {
"ch1": 1027.539
},
"_averageValue": {
"ch1": 1136.327
},
"_frequency": 0,
"_device": "EMG"
},
"_emgDataRight": {
"_repCode": "",
"_hasSecondChannel": false,
"_maxValue": {
"ch1": 1.145
},
"_minValue": {
"ch1": 0.472
},
"_averageValue": {
"ch1": 0.933
},
"_frequency": 0,
"_device": "EMG"
}
},
"… 2 more"
],
"_maxPerSideEmg": {
"ch1": [
{
"_key": "LEFT",
"_value": 1408.01
},
"… 1 more"
],
"ch2": []
},
"_minCoactivationIndex": []
}
A training exercise rather than a measurement. The participant holds a target weight distribution for as long as they can, and is scored on how much of the set duration they stayed on target.
Activities on the Static Distribution interface, recorded on K-Plates or K-Deltas. A single analyzer serves the whole family, so there are no variations to distinguish.
The built-in assessment is Weight static distribution. Its
activityType is EXERCISE: the result is a score, not a set of
biomechanical measures, which is why this family sits under training rather than assessments.
Each repetition is scored on the time spent above the configured target.
The per-repetition values are formatted strings, not numbers. This family returns display text rather than measurements:
_ordinal is "1st", "2nd", "3rd" — not
an integer. _points is a number rendered as a string, "12.5".
_success carries its own percent sign, "87%".
Only the two summary fields are numeric. Anything charted from the repetition array has to be parsed first.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| includeAllFields | boolean | — | Mirrors the detailed query parameter. |
| maxPoints | number | points | Highest points scored by any single repetition. |
| maxSuccess | number | % | Highest success percentage reached by any single repetition. Numeric, with no percent sign. |
| _repResults | array | — | One entry per repetition. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _ordinal | string | — | Position of the repetition as an ordinal word: "1st", "2nd", "3rd". |
| _points | string | points | Points scored, rounded to one decimal place and rendered as a string. Derived from the time on target and the difficulty setting. |
| _success | string | % | Time on target as a share of the set duration, rendered with a trailing percent sign. |
Repetitions are padded so the result always holds at least nine entries. The padding entries
carry empty strings in every field — skip any entry whose _ordinal is
empty.
detailed=trueEach repetition adds _syncedSamples, the raw platform signal aligned across the
sensors. Nothing is added at the top level.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"maxPoints": 0,
"maxSuccess": 0,
"_repResults": [
{
"_ordinal": "1st",
"_points": "0",
"_success": "0%"
}
]
}
The Nordic hamstring curl: the participant is held at the ankles and lowers forward under control, resisting for as long as possible. The test measures how much force each leg holds and how quickly that force fades.
Nordic hamstring activities on K-Pull or K-Deltas, in a standard and an advanced variant. The advanced variant is selected by the assessment chosen.
Every measure is reported for the set as a whole and again per leg, which is what makes this test useful for spotting an imbalance.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _average | number | Kg | |
| _averageLeft | number | Kg | |
| _averageRight | number | Kg | |
| _fatigue | number | % | Drop in force from the start of the effort to the end. |
| _fatigueLeft | number | % | |
| _fatigueRight | number | % | |
| _leftMaxForce | number | Kg | Peak force on the left. |
| _rfd | number | Kg/s | |
| _rfdLeft | number | Kg/s | |
| _rfdRight | number | Kg/s | |
| _rightMaxForce | number | Kg | Peak force on the right. |
| _timeToMax | number | ms | |
| _timeToMaxLeft | number | ms | |
| _timeToMaxRight | number | ms |
Fatigue is the drop in force between the beginning and the end of the hold, so a higher value means the leg gave out faster.
The advanced variant returns a single _resultsModel object rather than an array of
repetitions. no sample available for its inner fields.
detailed=trueThe standard variant adds _syncedForcesLeft, _syncedForcesRight and
_syncedTimestamps — the force trace for each leg against a shared clock.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_resultsModel": {
"_leftMaxForce": 6.682,
"_rightMaxForce": 5.186,
"_angleOfMaxTorque": 90,
"_averageLeft": 6.717,
"_averageRight": 2.505,
"_average": 9.223,
"_rfdLeft": -0.014,
"_rfdRight": 25.929,
"_rfd": 25.915,
"_timeToMaxLeft": 561907,
"_timeToMaxRight": 200,
"_timeToMax": 200,
"_fatigueLeft": 0.0,
"_fatigueRight": -0.004,
"_fatigue": -0.004,
"_relativeForce": 1.419,
"_maxTorque": 46.554,
"_maxTorqueLeft": 26.212,
"_maxTorqueRight": 20.342,
"_avgTorqueLeft": 26.35,
"_avgTorqueRight": 9.828,
"_inputSegmentLength": 40
}
}
{
"includeAllFields": false,
"_resultsPerRep": [
{
"_leftMaxForce": 13.965,
"_rightMaxForce": 7.214,
"_averageLeft": 7.694,
"_averageRight": 2.886,
"_average": 10.58,
"_rfdLeft": 0.017,
"_rfdRight": 0.009,
"_rfd": 0.026,
"_timeToMaxLeft": 0,
"_timeToMaxRight": 0,
"_timeToMax": 409444,
"_fatigueLeft": -0.046,
"_fatigueRight": -0.024,
"_fatigue": -0.07
}
]
}
Running tests recorded in the field rather than on a platform. K-Power tracks the athlete over the ground and derives speed, acceleration and the force behind them.
Activities on the Sprint interface, recorded with K-Power. Barbell lifts recorded with the same sensor are not here — those are a Dynamic Report.
| Variation | Covers | Sample |
|---|---|---|
| Sprint | A straight-line sprint over a configured distance. | — |
| Agility test | Out, turn, and back — the 505 change-of-direction test. | — |
| Long sprint | A sprint over a longer distance. | no sample available |
| ADA test | Acceleration-deceleration ability. | no sample available |
| 3-hop test | Three consecutive hops for distance. | no sample available |
All five return _repResults, one entry per attempt.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _height | number | cm | Participant height. |
| _mass | number | Kg | Participant body mass. |
| _repCode | string | — | Repetition the result belongs to. |
| _repOrdinal | number | index | Position of the repetition, starting at 1. |
| _targetMeters | number | m | Configured sprint distance. |
| averageAcceleration | number | m/s² | |
| averageHorizontalForce | number | N | |
| averageHorizontalForceRelative | number | N/kg | |
| averageHorizontalPower | number | W | |
| averageHorizontalPowerRelative | number | W/kg | |
| averagePower | number | W | |
| averageVelocity | number | m/s | |
| distanceToPeakVelocity | number | m | |
| exported | boolean | — | Whether the result was exported to a file. |
| forceVelocityProfile | number | — | Force-velocity profile computed for the sprint. |
| frequency | number | Hz | |
| kalmanIdx10Meters | number | — | |
| kalmanIdx10Yards | number | — | |
| kalmanIdx15Meters | number | — | |
| kalmanIdx5Meters | number | — | |
| kalmanIdx5Yards | number | — | |
| kalmanIdxStart | number | — | |
| p0 | number | N/kg | Theoretical maximal horizontal force at zero velocity. |
| p0Relative | number | N/kg | |
| peakAcceleration | number | m/s² | |
| peakAccelerationRaw | number | m/s² | |
| peakHorizontalForce | number | N | |
| peakHorizontalForceRelative | number | N/kg | |
| peakHorizontalPower | number | W | |
| peakHorizontalPowerRelative | number | W/kg | |
| peakPower | number | W | |
| peakVelocity | number | m/s | |
| timeTo10Meters | number | s | |
| timeTo10yards | number | s | |
| timeTo5Meters | number | s | |
| timeTo5yards | number | s | |
| timeToSplits | array<unknown> | — | Time recorded at each configured split. |
| v0 | number | m/s | Theoretical maximal velocity at zero force. |
The kalmanIdx… fields are sample indices marking where each split was crossed in the
filtered signal, not measurements. p0 and v0 are the two ends of the
force-velocity profile: theoretical maximal force at zero speed, and maximal speed at zero force.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _anchorDistance | number | m | Distance to the turning anchor. |
| _height | number | cm | Participant height. |
| _mass | number | Kg | Participant body mass. |
| _repCode | string | — | Repetition the result belongs to. |
| _repOrdinal | number | index | Position of the repetition, starting at 1. |
| brakeProximity | number | m | |
| brakingIndex | number | — | How sharply the participant decelerated into the turn. |
| distanceOutOfRange | boolean | m | Distance covered outside the measured range. |
| entryVel10m | number | m/s | |
| exported | boolean | — | Whether the result was exported to a file. |
| frequency | number | Hz | |
| maxSpeed | number | m/s | |
| peakDeceleration | number | m/s² | |
| peakExitAcc | number | m/s² | |
| returnVel10m | number | m/s | |
| time0To10 | number | s | |
| time10To15 | number | s | |
| time15To10 | number | s | |
| total505Time | number | s | |
| totalPathDistance | number | m | |
| turnDistance | number | m |
detailed=trueBoth add the tracked signal: distances, velocities, accelerations and their smoothed forms over the acceleration phase. Sprint adds fourteen such arrays, the agility test five.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_repResults": [
{
"exported": true,
"frequency": 200,
"distanceToPeakVelocity": 0,
"timeTo10Meters": 2.765,
"timeTo5Meters": 1.78,
"timeToSplits": [],
"peakVelocity": 5.204,
"averageAcceleration": 2.072,
"averagePower": 278.821,
"peakPower": 3454.309,
"kalmanIdx15Meters": 0,
"kalmanIdx10Meters": 843,
"kalmanIdx5Meters": 646,
"kalmanIdxStart": 290,
"peakHorizontalPower": 653.627,
"peakHorizontalPowerRelative": 7.234,
"averageHorizontalPower": 516.167,
"averageHorizontalPowerRelative": 5.713,
"peakHorizontalForce": 410.706,
"peakHorizontalForceRelative": 4.546,
"forceVelocityProfile": -0.712,
"averageHorizontalForce": 196.635,
"averageHorizontalForceRelative": 2.176,
"averageVelocity": 3.425,
"peakAcceleration": 5.349,
"peakAccelerationRaw": 12.869,
"v0": 6.386,
"p0": 655.653,
"p0Relative": 7.257,
"_repCode": "anon-f2827fc6c1",
"_repOrdinal": 1,
"_mass": 90.354,
"_height": 165,
"_targetMeters": 9.144,
"kalmanIdx5Yards": 630,
"kalmanIdx10Yards": 813,
"timeTo10yards": 2.615,
"timeTo5yards": 1.7
}
]
}
{
"includeAllFields": false,
"_repResults": [
{
"exported": true,
"frequency": 199.998,
"total15mTime": 6.55,
"timeTo10m": 2.615,
"timeTo5m": 1.68,
"peakAcceleration": 3.113,
"avgAcceleration": 2.011,
"peakVelocityAccel": 5.577,
"vmax": 5.607,
"vlow": 0.163,
"timeAtVmax": 3.17,
"timeAtStop": 6.55,
"peakMomentum": 506.596,
"avgDeceleration": -1.611,
"peakDeceleration": -3.95,
"avgEarlyDeceleration": -1.999,
"avgLateDeceleration": -1.331,
"earlyLateRatio": 1.502,
"tt50vmax": 1.415,
"distanceToStop": 7.989,
"timeToStop": 3.38,
"totalDistance": 21.082,
"totalTime": 6.55,
"timeTo15m": 6.55,
"startIdx": 424,
"idx10m": 947,
"idx5m": 760,
"vmaxIdx": 1058,
"vlowIdx": 1734,
"validDecel": true,
"_repCode": "anon-c2b9eb5d3f",
"_repOrdinal": 1,
"_athleteMass": 90.354,
"_repSide": "BOTH"
}
],
"_groupedResults": {
"bestTotal15mTime": 6.55,
"avgTotal15mTime": 6.55,
"bestTimeTo10m": 2.615,
"avgTimeTo10m": 2.615,
"bestPeakAcceleration": 3.113,
"avgPeakAcceleration": 3.113,
"bestAvgAcceleration": 2.011,
"avgAvgAcceleration": 2.011,
"bestVmax": 5.607,
"avgVmax": 5.607,
"bestPeakMomentum": 506.596,
"avgPeakMomentum": 506.596,
"bestAvgDeceleration": -1.611,
"avgAvgDeceleration": -1.611,
"bestPeakDeceleration": -3.95,
"avgPeakDeceleration": -3.95,
"bestAvgEarlyDeceleration": -1.999,
"avgAvgEarlyDeceleration": -1.999,
"bestAvgLateDeceleration": -1.331,
"avgAvgLateDeceleration": -1.331,
"bestEarlyLateRatio": 1.502,
"avgEarlyLateRatio": 1.502,
"bestTt50vmax": 1.415,
"avgTt50vmax": 1.415,
"bestDistanceToStop": 7.989,
"avgDistanceToStop": 7.989,
"bestTimeToStop": 3.38,
"avgTimeToStop": 3.38,
"bestTotalDistance": 21.082,
"avgTotalDistance": 21.082,
"bestTotalTime": 6.55,
"avgTotalTime": 6.55
}
}
{
"includeAllFields": false,
"_repResults": [
{
"exported": true,
"frequency": 200,
"startIndex": 598,
"startTime": 2.99,
"distanceStartToLanding1": 0.347,
"distanceLanding1To2": 0.384,
"distanceLanding2To3": 0.53,
"totalDistance": 1.26,
"contactTime1": 0.23,
"contactTime2": 0.235,
"endIndex": 844,
"_repCode": "anon-c4b83f58d4",
"_repOrdinal": 1,
"_repSide": "LEFT",
"hop1": {
"landingIndex": 649,
"landingTime": 3.245,
"landingAcc": 42.175,
"takeoffIndex": 695,
"takeoffTime": 3.475,
"takeoffAcc": 31.727
},
"hop2": {
"landingIndex": 741,
"landingTime": 3.705,
"landingAcc": 56.996,
"takeoffIndex": 788,
"takeoffTime": 3.94,
"takeoffAcc": 30.469
},
"hop3": {
"landingIndex": 844,
"landingTime": 4.22,
"landingAcc": 56.223,
"takeoffIndex": 844,
"takeoffTime": 4.22,
"takeoffAcc": 56.223
}
},
"… 1 more"
]
}
Everyday movements timed from a motion sensor. The result is a set of durations, one per phase of the test, rather than a repetition array.
Timed functional assessments recorded on K-Move. Unlike every other family these return their measures at the top level, with no per-repetition array at all.
Rise from a chair, walk out, turn, walk back, and sit down. Each phase is timed separately.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| durationFirstTurn | number | s | Time for the first turn. |
| durationSecondTurn | number | s | Time for the second turn. |
| durationSitToStand | number | s | Time to rise from the chair. |
| durationStandToSit | number | s | Time to sit back down. |
| durationTotal | number | s | Total time for the test. |
| durationWalkBack | number | s | Time walking back. |
| durationWalkForward | number | s | Time walking out. |
| includeAllFields | boolean | — |
Walk up a flight, turn, and come back down.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| durationTotal | number | s | Total time for the test. |
| durationTurn | number | s | Time for the turn. |
| durationWalkBack | number | s | Time walking back. |
| durationWalkForward | number | s | Time walking out. |
| includeAllFields | boolean | — |
A test combining two different device types. It returns _repResults rather than
durations. no sample available
detailed=trueBoth timed tests add _angles and _deltas, the joint angle trace from the
motion sensor and the raw sample stream.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_repResults": [
{
"_repOrdinal": 1,
"_repSide": "BOTH"
}
]
}
{
"includeAllFields": false,
"durationWalkForward": 0,
"durationTurn": 0,
"durationWalkBack": 10.2,
"durationTotal": 10.2
}
With detailed=true this response also carries: _angles, _deltas.
Activities that record something against a participant without producing an analysed measurement: a stopwatch, a free-form capture, or photographs.
| Variation | Covers | Returns |
|---|---|---|
| Timer activity | An activity timed with a stopwatch rather than a sensor. | _repResults |
| Free mode | A free capture that stores the raw measurement without scoring it. | _resultsPerMeasurement |
| Posture pictures | Photographs taken to document posture. | _resultModels no sample available |
Each uses a different name for its array. Note in particular that free mode returns
_resultsPerMeasurement, keyed by measurement rather than by repetition.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _finishTimestamp | number | epoch ms | When the activity was completed. |
| _startTimestamp | number | epoch ms | When timing began. |
| _stopTimestamp | number | epoch ms | When timing was stopped. |
| _time | number | ms | Elapsed time recorded by the stopwatch. |
The only family that returns the measurement itself rather than anything derived from it.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| bluetoothDeviceType | string | — | Bluetooth identifier of the sensor. |
| deviceSerialCode | string | — | Serial number of the sensor. |
| deviceType | string | — | Sensor family. |
| emgResults | object | — | EMG results, where an EMG sensor was used. |
| measurementCode | string | — | Code of the measurement. |
| order | number | index | Position of the measurement within the activity. |
| samplesValues | array | — | The recorded samples. |
| syncedSamples | array | — | The same samples aligned across devices. |
| unitType | string | — | Unit the samples are expressed in. |
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_resultsPerMeasurement": [
{
"syncedSamples": [
{
"_isTimeStampFromEpoch": false,
"_timeStamp": 0,
"_f1": -102,
"_f3": 0,
"_f4": 0
},
"… 5018 more"
],
"samplesValues": [
[
{
"_force": 0,
"_time": 499
},
"… 4519 more"
]
],
"measurementCode": "anon-b90039a9d5",
"bluetoothDeviceType": "EMG",
"order": 2,
"unitType": "MILLIVOLT",
"deviceType": "EMG",
"deviceSerialCode": "E120320",
"emgResults": {
"_repCode": "",
"_hasSecondChannel": false,
"_maxValue": {
"ch1": 371.476
},
"_minValue": {
"ch1": 0
},
"_averageValue": {
"ch1": 71.687
},
"_frequency": 0,
"_signal": {
"ch1": [
0,
74.188,
61.213,
"… 4517 more"
]
},
"_deltas": [
499,
500,
501,
"… 4517 more"
],
"_syncedSamples": [
{
"_isTimeStampFromEpoch": false,
"_timeStamp": 0,
"_f1": -102,
"_f3": 0,
"_f4": 0
},
"… 5018 more"
]
}
},
"… 1 more"
]
}
{
"includeAllFields": false,
"_repResults": [
{
"_time": 784,
"_startTimestamp": 1785746881980,
"_finishTimestamp": 1785746891945,
"_stopTimestamp": 1785746882769
}
]
}
Answers scored into an index. No sensor is involved: the participant completes the instrument and the result is the score.
Questionnaire activities. Most return a single _score; a few report sub-scores or
per-side values instead, which is the only thing that varies between them.
| Instrument | Assesses | Fields |
|---|---|---|
| WOMAC | Osteoarthritis of the hip or knee. | _score |
| IKDC | Knee function and symptoms. | _score |
| VQ-11 | Quality of life with chronic respiratory disease. | _functional_score, _psychological_score, _relational_score, _score |
| EIFEL | Low back pain and disability. | _score |
| ACL-RSI | Psychological readiness to return to sport after anterior cruciate ligament injury. | _score |
| ALR-RSI | Readiness to return to sport after ankle ligament injury. | _score |
| SI-RSI | Readiness to return to sport after shoulder instability. | _score |
| QASLL | Quality of a single-leg landing, scored from observed criteria. | _hasCheckedHealthySideKneePositionQuestion, _hasCheckedInjuredSideKneePositionQuestion, _healthyScore, _injuredScore, _penaltyPoints |
| FASH | Achilles tendinopathy in athletes. | _score |
| VISA | Tendinopathy severity, in several site-specific versions. | _score |
| ODI | Oswestry disability index for low back pain. | _score |
| FAAM | Foot and ankle ability. | _adlScore, _sportsScore |
| K-Start | A battery of hop tests, healthy side against injured side. | _crossoverHopHealthyValues, _crossoverHopInjuredValues, _singleHopHealthyValues, _singleHopInjuredValues, _tripleHopHealthyValues, _tripleHopInjuredValues |
| S-Start | A shoulder battery of strength and reach measures, per side. | _ckcuestMInputs, _extensionFlessumLeftInputs, _extensionFlessumRightInputs, _imvcExternalLeftInputs, _imvcExternalRightInputs, _imvcInternalLeftInputs, _imvcInternalRightInputs, _uqYbtLeftInferolateralInputs, _uqYbtLeftMedialInputs, _uqYbtLeftSuperolateralInputs, _uqYbtRightInferolateralInputs, _uqYbtRightMedialInputs, _uqYbtRightSuperolateralInputs, _ussptLeftInputs, _ussptRightInputs |
Every result also carries includeAllFields. Scores are numbers; the scale differs per
instrument and is defined by the instrument itself, not by this API.
_score alongside three sub-scores:
_functional_score, _psychological_score and
_relational_score. Note the underscore-separated naming, which is unique to this
instrument._adlScore for daily living
and _sportsScore, with no combined total._healthyScore and _injuredScore with
_penaltyPoints, plus two booleans recording whether the knee-position criterion
was checked on each side.detailed=trueNothing is added. Questionnaire results carry no signal.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_imvcInternalRightInputs": [
null,
null
],
"_imvcInternalLeftInputs": [
null,
null
],
"_imvcExternalRightInputs": [
null,
null
],
"_imvcExternalLeftInputs": [
null,
null
],
"_uqYbtRightMedialInputs": [
null,
null,
null
],
"_uqYbtRightInferolateralInputs": [
null,
null,
null
],
"_uqYbtRightSuperolateralInputs": [
null,
null,
null
],
"_uqYbtLeftMedialInputs": [
null,
null,
null
],
"_uqYbtLeftInferolateralInputs": [
null,
null,
null
],
"_uqYbtLeftSuperolateralInputs": [
null,
null,
null
],
"_ussptRightInputs": [
null,
null,
null
],
"_ussptLeftInputs": [
null,
null,
null
],
"_ckcuestMInputs": [
null,
null,
null,
"… 1 more"
],
"_extensionFlessumRightInputs": [
45
],
"_extensionFlessumLeftInputs": [
45
]
}
{
"includeAllFields": false,
"_singleHopHealthyValues": [
null,
null,
null,
"… 2 more"
],
"_singleHopInjuredValues": [
null,
null,
null,
"… 2 more"
],
"_tripleHopHealthyValues": [
null,
null,
null,
"… 2 more"
],
"_tripleHopInjuredValues": [
null,
null,
null,
"… 2 more"
],
"_crossoverHopHealthyValues": [
null,
null,
null,
"… 2 more"
],
"_crossoverHopInjuredValues": [
null,
null,
null,
"… 2 more"
],
"_sideHop15HealthyValue": 32,
"_sideHop15InjuredValue": 12,
"_sideHop30HealthyValue": 45,
"_sideHop30InjuredValue": 23
}
{
"includeAllFields": false,
"_score": 57
}
{
"includeAllFields": false,
"_healthyScore": 3,
"_injuredScore": 5,
"_penaltyPoints": 1,
"_hasCheckedHealthySideKneePositionQuestion": false,
"_hasCheckedInjuredSideKneePositionQuestion": true
}
{
"includeAllFields": false,
"_score": 12
}
{
"includeAllFields": false,
"_score": 24
}
{
"includeAllFields": false,
"_score": 100
}
{
"includeAllFields": false,
"_score": 36
}
{
"includeAllFields": false,
"_score": 50
}
{
"includeAllFields": false,
"_score": 58
}
{
"includeAllFields": false,
"_score": 50
}
{
"includeAllFields": false,
"_score": 44.8
}
{
"includeAllFields": false,
"_adlScore": 40.5,
"_sportsScore": 37.5
}
{
"includeAllFields": false,
"_functional_score": 4,
"_psychological_score": 7,
"_relational_score": 9,
"_score": 20
}
Training against a reference established by an assessment: a set number of repetitions at a target expressed as a percentage of the participant’s maximum.
Activities on the Rep Count interface. Where the sensor is K-Power the activity is analysed as a Dynamic Report instead, so what follows is the K-Grip and K-Pull case.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _repResults | array | — | One entry per repetition. |
| _maxForce | number | Kg | Highest force reached across the set. |
| _average | object | — | Running mean across the set. |
| _forces | array | Kg | Force trace for the whole set. |
| _currentCycleForces | array | Kg | Force trace of the repetition in progress. |
| _repCountCycles | array | — | Start and end of each detected repetition. |
| _forceTransformer | object | — | Filter applied to the raw signal. |
| includeAllFields | boolean | — | Mirrors the detailed query parameter. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _average | number | Kg | Mean force across the repetition. |
| _max | number | Kg | Peak force in the repetition. |
| _pace | number | reps/min | Rate the repetitions were performed at. |
| _repCycles | array | — | Start and end of the repetition. |
| _side | string | — | Body side recorded. |
| _signal | object | — | Force trace for the repetition. |
| _successRate | number | % | Share of the repetition spent at or above the target. |
| _target | number | Kg | Target force the repetition was performed against. |
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_repResults": [
{
"_average": 8.515,
"_max": 16.177,
"_pace": 28.958,
"_successRate": 1,
"_repCycles": [
{
"unitType": "KG",
"timestamp": 1780926173028,
"pace": 0.0,
"maxForce": 16.177,
"avgForce": 9.795
},
"… 1 more"
],
"_side": "RIGHT",
"_target": 9.317,
"_signal": {
"ch1": []
}
}
],
"_forceTransformer": {
"_sampleCount": 10,
"_samples": []
},
"_forces": [],
"_currentCycleForces": [],
"_repCountCycles": [],
"_average": {
"_average": 0,
"_numOfItems": 0
},
"_maxForce": 0
}
A contraction held still against a target for a set time. The participant is scored on how much of the repetition they kept the force inside the target band.
| Variation | Setup | Shape |
|---|---|---|
| Isometric | One sensor, or a K-Myo recording muscle activation. | Success rate per side, then one entry per repetition. |
| Isometric with EMG | A single K-Myo sensor. | The same shape, with the EMG channel flag. |
| Isometric, two devices | Two sensors held simultaneously. | A single success rate, and per-repetition entries carrying both devices. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _averageValue | number | Kg | |
| _bottomBoundTarget | number | Kg | Lower edge of the target band. |
| _hasSecondChannel | boolean | — | Whether a second EMG channel was recorded. |
| _maxTimeOnTarget | number | ms | Longest unbroken spell inside the target band. |
| _maxValue | number | Kg | |
| _repOrdinal | number | index | Position of the repetition, starting at 1. |
| _repSide | string | — | Side recorded. |
| _rfdFromMax | number | Kg/s | |
| _rfdToMax | number | Kg/s | |
| _successRate | number | % | Share of the repetition spent inside the target band. |
| _target | number | Kg | Target force the repetition was performed against. |
| _timeToMax | number | ms | |
| _totalTimeOnTarget | number | ms | Total time inside the target band. |
| _upperBoundTarget | number | Kg | Upper edge of the target band. |
The target is a band, not a single value: _bottomBoundTarget and
_upperBoundTarget are its edges, and _successRate is the share of the
repetition spent between them.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _averageValue | number | Kg | |
| _bottomBoundTarget | number | Kg | Lower edge of the target band. |
| _leftDevice | string | — | Bluetooth identifier of the left sensor. |
| _maxTimeOnTarget | number | ms | Longest unbroken spell inside the target band. |
| _maxValue | number | Kg | |
| _pieEntries | array<unknown> | — | Share of the set spent below, inside and above the target band. |
| _repOrdinal | number | index | Position of the repetition, starting at 1. |
| _rfdFromMax | number | Kg/s | |
| _rfdToMax | number | Kg/s | |
| _rightDevice | string | — | Bluetooth identifier of the right sensor. |
| _successRate | number | % | Share of the repetition spent inside the target band. |
| _timeToMax | number | ms | |
| _totalTimeOnTarget | number | ms | Total time inside the target band. |
| _upperBoundTarget | number | Kg | Upper edge of the target band. |
This variation reports maxSuccessRate at the top level as a plain number, where the
other two report _avgSuccessRatePerSide and _maxSuccessRatePerSide as
arrays keyed by body side.
detailed=trueThe single-sensor variations add _signal, _deltas and
_syncedSamples. The two-device variation adds _forcesLeft,
_forcesRight and _forcesTotal instead.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"maxSuccessRate": 90.72,
"_repResults": [
{
"_pieEntries": [],
"_upperBoundTarget": 12,
"_bottomBoundTarget": 8,
"_maxValue": 11.54,
"_averageValue": 8.819,
"_rfdToMax": 9.297,
"_rfdFromMax": -1.432,
"_timeToMax": 740,
"_maxTimeOnTarget": 4524,
"_totalTimeOnTarget": 4536,
"_successRate": 90.72,
"_leftDevice": "HEXAS_LEFT",
"_rightDevice": "HEXAS_RIGHT",
"_repOrdinal": 1
}
]
}
{
"includeAllFields": false,
"_maxSuccessRatePerSide": [
{
"_key": "LEFT",
"_value": 15.44
}
],
"_avgSuccessRatePerSide": [
{
"_key": "LEFT",
"_averageValue": {
"_average": 15.44,
"_numOfItems": 1
}
}
],
"_resultsPerRep": [
{
"_pieEntries": [],
"_upperBoundTarget": 35.199,
"_bottomBoundTarget": 22.981,
"_maxValue": 29.173,
"_averageValue": 15.03,
"_rfdToMax": 3.313,
"_rfdFromMax": -3.67,
"_timeToMax": 2050,
"_maxTimeOnTarget": 1398,
"_totalTimeOnTarget": 1544,
"_successRate": 15.44,
"_repSide": "LEFT",
"_repOrdinal": 1
}
]
}
{
"includeAllFields": false,
"_resultsPerRep": [
{
"_upperBoundTarget": 92476.896,
"_bottomBoundTarget": 82007.814,
"_maxValue": 216416.415,
"_averageValue": 118425.715,
"_rfdToMax": 51271.361,
"_rfdFromMax": -35552.064,
"_timeToMax": 4221,
"_maxTimeOnTarget": 45.1,
"_totalTimeOnTarget": 134.2,
"_successRate": 1.342,
"_hasSecondChannel": true,
"_target": 87242.355,
"_repSide": "RIGHT",
"_repOrdinal": 1
}
],
"_maxSuccessRatePerSide": [
{
"_key": "RIGHT",
"_value": 1.342
}
],
"_avgSuccessRatePerSide": [
{
"_key": "RIGHT",
"_averageValue": {
"_average": 1.342,
"_numOfItems": 1
}
}
]
}
Repetitions performed to a controlled speed, scored on how much of each repetition the force stayed inside a target band.
Activities on the Tempo interface, with or without a K-Myo sensor. Both variations return the same summary, and it is the same summary the Isometric family uses: the two interfaces score against a target band in the same way.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _resultsPerRep | array | — | One entry per repetition. |
| _maxSuccessRatePerSide | array | % | Best success rate per body side, as {_key, _value}. |
| _avgSuccessRatePerSide | array | — | Mean success rate per side. The value is an object carrying _average and _numOfItems, not a plain number. |
| includeAllFields | boolean | — | Mirrors the detailed query parameter. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _key | string | — | |
| _value | number | — |
The EMG variation returns the same fields with two differences: _hasSecondChannel is
added, and _pieEntries is not present.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_maxSuccessRatePerSide": [
{
"_key": "RIGHT",
"_value": 42.609
},
"… 1 more"
],
"_avgSuccessRatePerSide": [
{
"_key": "RIGHT",
"_averageValue": {
"_average": 42.609,
"_numOfItems": 1
}
},
"… 1 more"
],
"_resultsPerRep": [
{
"_pieEntries": [],
"_upperBoundTarget": 34.72,
"_bottomBoundTarget": 27.28,
"_maxValue": 37.766,
"_averageValue": 10.991,
"_rfdToMax": 4.13,
"_rfdFromMax": -0.731,
"_timeToMax": 9143.812,
"_maxTimeOnTarget": 3638.864,
"_totalTimeOnTarget": 25565.353,
"_successRate": 42.609,
"_inverted": true,
"_repSide": "RIGHT",
"_repOrdinal": 1
},
"… 1 more"
]
}
{
"includeAllFields": false,
"_resultsPerRep": [
{
"_upperBoundTarget": 190.285,
"_bottomBoundTarget": 126.857,
"_maxValue": 219.22,
"_averageValue": 69.302,
"_rfdToMax": 15.423,
"_rfdFromMax": -11.734,
"_timeToMax": 14214,
"_maxTimeOnTarget": 1361.9,
"_totalTimeOnTarget": 12162.2,
"_successRate": 40.541,
"_inverted": false,
"_hasSecondChannel": false,
"_target": 158.571,
"_repSide": "RIGHT",
"_repOrdinal": 1
}
],
"_maxSuccessRatePerSide": [
{
"_key": "RIGHT",
"_value": 40.541
}
],
"_avgSuccessRatePerSide": [
{
"_key": "RIGHT",
"_averageValue": {
"_average": 40.541,
"_numOfItems": 1
}
}
]
}
Rehabilitation games. The participant plays against a target and the result is a score, in the same spirit as Static Distribution.
Game activities, scored by the training mode the game was configured with.
| Field | Type | Unit | Meaning |
|---|---|---|---|
| _repResults | array<object> | — | |
| difficultyLevel | number | level | Difficulty the game was configured at. |
| duration | number | ms | |
| includeAllFields | boolean | — | |
| totalScore | number | points | Score across the whole game. |
| Field | Type | Unit | Meaning |
|---|---|---|---|
| bodySide | string | — | Side recorded. |
| metas | object | — | Additional values recorded by the game. |
| ordinal | number | index | Position of the repetition. |
| repCode | string | — | Repetition the result belongs to. |
| score | number | points | Score for this repetition. |
| target | number | — | Target the repetition was played against. |
metas carries values specific to the game being played, so its contents vary by
game rather than being fixed by this family.
Real responses from a demonstration account, de-identified: identifiers are replaced with pseudonyms and no personal details are present. Numeric arrays are truncated and one repetition is shown; a marker states how many were omitted.
{
"includeAllFields": false,
"_repResults": [
{
"repCode": "anon-b815db67ab",
"bodySide": "RIGHT",
"target": 31,
"score": 1600,
"ordinal": 1,
"metas": {
"score": "1600",
"COLLECTABLES_SPAWNED": "84",
"COLLECTABLES_COLLECTED": "64",
"ENEMIES_HIT": "1",
"MAX_FORCE": "0"
}
}
],
"duration": 30,
"difficultyLevel": 5,
"totalScore": 1600
}
| Code | Status | Meaning |
|---|---|---|
ERR_4305 | 400 | More items than the per-request maximum, 1000 by default. The codes must be batched. |
ERR_4090 | 404 | No analyzer exists yet for one of the activity types in the batch. |
ERR_4000 | 500 | The analysis could not be completed. |
Protocol codes the requesting account may not access are omitted from the response rather than
raising an error. Where a session is missing, the codes submitted should be compared against
protocolsResults.