> ## Documentation Index
> Fetch the complete documentation index at: https://docs.uplift.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Game Physical Summary

> Returns physical summaries per player: distance, high-speed running, sprints, accelerations and decelerations, for the whole game, each period or each 15-minute block. Thresholds are returned with the data.

> [!WARNING]
>
> The Game Data API is in preview. Endpoints, fields and limits may change before release, and it is not yet available to call.


## OpenAPI

````yaml api-reference/game-data/openapi.json GET /games/{game_id}/physical
openapi: 3.0.0
info:
  title: Uplift Game Data API (Preview)
  version: v1
  description: >-
    Events, phases, possessions, physical summaries and tracking from match
    video. In preview: not yet available.
servers:
  - url: https://api.uplift.ai/v1
security: []
paths:
  /games/{game_id}/physical:
    get:
      tags:
        - Game Data
      summary: Get Game Physical Summary
      description: >-
        Returns physical summaries per player: distance, high-speed running,
        sprints, accelerations and decelerations, for the whole game, each
        period or each 15-minute block. Thresholds are returned with the data.
      parameters:
        - name: game_id
          in: path
          required: true
          description: Game identifier. The game must belong to your organization.
          schema:
            type: string
            format: uuid
        - name: group_by
          in: query
          required: false
          description: '`game` (default), `period` or `block_15m`.'
          schema:
            type: string
            enum:
              - game
              - period
              - block_15m
            default: game
        - name: team_id
          in: query
          required: false
          description: Only this team, by `team_id`.
          schema:
            type: string
        - name: player_id
          in: query
          required: false
          description: Only this roster entry.
          schema:
            type: string
      responses:
        '200':
          description: Physical summaries per player.
          content:
            application/json:
              schema:
                type: object
                properties:
                  game_id:
                    type: string
                    format: uuid
                  run_id:
                    type: string
                    format: uuid
                  thresholds:
                    $ref: '#/components/schemas/Thresholds'
                  players:
                    type: array
                    items:
                      $ref: '#/components/schemas/PhysicalSummary'
              example:
                game_id: 6b1e0c2a-7d8f-4a51-9b0e-2f3c1d4e5a6b
                run_id: f2a91c3e-0b47-4d6a-8e15-7c9d2b3a4e5f
                thresholds:
                  hsr_kmh: 19.8
                  sprint_kmh: 25.2
                  acceleration_mps2: 3
                players:
                  - player_id: p07
                    athlete_id: 3c9e1f2a-8b7d-4c6e-9a5f-1d2e3b4c5a6f
                    period: 1
                    minutes_tracked: 44.1
                    total_distance_m: 5420
                    high_speed_running_m: 412
                    sprint_distance_m: 168
                    sprint_count: 9
                    accelerations: 21
                    decelerations: 27
                    max_speed_kmh: 33.1
                    coverage: 0.81
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          description: Not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: NotFound
                message: The specified game_id was not found.
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
        - bearerAuth: []
components:
  schemas:
    Thresholds:
      type: object
      properties:
        hsr_kmh:
          type: number
        sprint_kmh:
          type: number
        acceleration_mps2:
          type: number
    PhysicalSummary:
      type: object
      properties:
        player_id:
          type: string
        athlete_id:
          type: string
          format: uuid
          nullable: true
        period:
          type: integer
          nullable: true
          description: Present when grouped by period or block.
        block_start_min:
          type: integer
          nullable: true
          description: Present when grouped by 15-minute block.
        minutes_tracked:
          type: number
        total_distance_m:
          type: number
        high_speed_running_m:
          type: number
        sprint_distance_m:
          type: number
        sprint_count:
          type: integer
        accelerations:
          type: integer
        decelerations:
          type: integer
        max_speed_kmh:
          type: number
        coverage:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Share of the player's minutes where they were in shot. Totals from
            broadcast video are lower bounds; this shows by how much.
    Error:
      type: object
      properties:
        error:
          type: string
          description: A short error code representing the type of error.
        message:
          type: string
          description: A detailed message explaining the error.
  responses:
    BadRequest:
      description: Invalid request parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: BadRequest
            message: >-
              The request parameters are invalid. Please review the request and
              try again.
    Unauthorized:
      description: Unauthorized. Bearer token is missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Unauthorized
            message: Bearer token is missing or invalid.
    Forbidden:
      description: Forbidden. You do not have permission to access this resource.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Forbidden
            message: You do not have permission to access this resource.
    TooManyRequests:
      description: Too Many Requests. The rate limit has been exceeded.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: TooManyRequests
            message: The rate limit has been exceeded. Please wait and try again later.
    InternalServerError:
      description: Internal Server Error. Something went wrong on the server.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: InternalServerError
            message: >-
              An unexpected error occurred on the server. Please try again
              later.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.