Skip to main content
GET
/
analysis
/
{analysis_id}
/
results
Get analysis results
curl --request GET \
  --url 'https://partner-api.ochy-prod.com/analysis/{analysis_id}/results?apiKey='
{
  "video_id": "3dde3402-94d7-462e-a784-9306207108dd",
  "status": "success",
  "percentage": 100,
  "thumbnail": "https://storage.googleapis.com/ochy-7871a.appspot.com/partners/.../output/3dde3402_thumbnail.jpg?<signed-url-parameters>",
  "output_video": "https://storage.googleapis.com/ochy-7871a.appspot.com/partners/.../output/encoded_analyzed_3dde3402.mp4?<signed-url-parameters>",
  "biomechanical_analysis": {
    "analysis_content": {
      "arm": {
        "range_good": [
          78,
          88
        ],
        "range_okay": [
          74,
          92
        ],
        "score_number": 0.266,
        "texts": {
          "exercice": [
            "bi_reinforcement",
            "tri_reinforcement"
          ],
          "position": "Extension excessive",
          "title": "Arm position",
          "recap": [
            "Elbow too open.",
            "Avoid pushing backwards.",
            "Maintain appropriate amplitude.",
            "Loss of efficiency."
          ]
        }
      },
      "back_cycle": {
        "range_good": [
          0,
          98
        ],
        "range_okay": [
          98,
          107
        ],
        "score_number": 0.889,
        "texts": {
          "position": "Ideal position",
          "title": "Back knee angle at foot strike"
        }
      },
      "foot": {
        "foot_strike_pattern": "midfoot",
        "range_good": [
          -10,
          5
        ],
        "range_okay": [
          5,
          10
        ],
        "score_number": 0.8,
        "texts": {
          "position": "Midfoot strike",
          "title": "Foot strike",
          "overstride_title": "Midfoot strike ahead of center of gravity"
        }
      },
      "forward_cycle": {
        "range_good": [
          140,
          180
        ],
        "range_okay": [
          131,
          140
        ],
        "score_number": 0.623,
        "texts": {
          "position": "Slightly bent knee",
          "title": "Front knee angle at foot strike"
        }
      },
      "head": {
        "range_good": [
          -18,
          -8
        ],
        "range_okay": [
          -22,
          -4
        ],
        "score_number": 0.413,
        "texts": {
          "position": "Gaze slightly elevated",
          "title": "Head position"
        }
      },
      "trunk": {
        "range_good": [
          8,
          14
        ],
        "range_okay": [
          4,
          18
        ],
        "score_number": 0.317,
        "texts": {
          "position": "Leaning too far back",
          "title": "Back position"
        }
      }
    },
    "running_styles": [
      {
        "title": "Hop",
        "animal": "Kangaroo",
        "percentage": 76,
        "summary": "Running style characterized by high step frequency and short ground contact phase."
      }
    ],
    "total_score": 0.627
  }
}

Authorizations

apiKey
string
query
required

Your API key, passed as a query parameter on every request.

Path Parameters

analysis_id
string
required

Analysis ID returned by the start endpoint.

Response

Analysis completed or pending.

video_id
string
Example:

"3dde3402-94d7-462e-a784-9306207108dd"

status
string
Example:

"success"

percentage
integer
Example:

100

thumbnail
string

Signed URL to the analysis thumbnail image (expires after 1 hour).

Example:

"https://storage.googleapis.com/ochy-7871a.appspot.com/partners/.../output/<analysis_id>_thumbnail.jpg?<signed-url-parameters>"

output_video
string

Signed URL to the annotated output video (expires after 1 hour).

Example:

"https://storage.googleapis.com/ochy-7871a.appspot.com/partners/.../output/encoded_analyzed_<analysis_id>.mp4?<signed-url-parameters>"

biomechanical_analysis
object

Full biomechanical analysis results. Shape varies by analysis type.

Side view includes: analysis_content (arm, back_cycle, foot, forward_cycle, head, trunk -- each with score_number, range_good, range_okay, and texts), running_styles (title, animal, percentage, summary), and total_score.

Back view includes: analysis_content (knee_adduction, pelvic_drop, pronation -- each with left/right containing range_bad, range_good, range_okay, score_number, and texts with explanation, position, recap, side, and title), and total_score.