---
title: "Submit Job"
method: POST
path: "/api/v1/jobs"
tags: ["Jobs"]
---

# Submit Job

`POST /api/v1/jobs`

Submit a new video processing job.

When VIDEO_ENDPOINTS_LIVE is False, returns a preview response without any processing.

## Headers

- `x-api-key` string, nullable
- `League` string, nullable

## Request body

- JobSubmitRequest
  - `video_url` string, required — Single video URL (.mp4 or downloadable HTTP(S) source)
  - `game_id` string, uuid, nullable — Optional. The game_id of an existing scheduled game to attach this video to. When provided, the uploaded video is linked to that game so the resulting stats appear under the same game. Returns 409 if the game already has a video uploaded. Omit to upload a standalone video with no schedule linkage.
  - `home_team_name` string — Home team name
  - `away_team_name` string — Away team name
  - `home_team_color` string, required — Home team jersey color (hex, e.g. '#FF0000')
  - `away_team_color` string, required — Away team jersey color (hex, e.g. '#0000FF')
  - `home_team_roster` InstaStatsRosterItem[] — Home team roster (list of {name, number}). Stored on video_info; downstream automation backfills video_team_roster after the video reaches the processed state.
    - `name` string, required — Player display name / alias
    - `number` integer, required — Jersey number
  - `away_team_roster` InstaStatsRosterItem[] — Away team roster (list of {name, number}).
    - `name` string, required — Player display name / alias
    - `number` integer, required — Jersey number
  - `game_date` string, date-time, nullable — Game date (ISO 8601 timestamp). Defaults to current time if omitted.
  - `video_mode` 'instant' | 'accuracy' — Processing mode for the uploaded video. Use 'instant' for faster turnaround, or 'accuracy' for higher-quality results. Defaults to 'instant' when omitted. Only applicable to organizations that have been enabled for mode selection; otherwise the value is ignored.

## Response `200`

Successful Response

- JobSubmitResponse
  - `job_id` string, required
  - `status` string, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/preciser/apis/preciser-data-management-api.md) · [All operations](https://skmtc.net/preciser/apis/preciser-data-management-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/preciser/preciser-data-management-api/versions/c5f6b8674011/schema)
