Skip to main content
POST
Create Training Runs

Authorizations

Authorization
string
header
required

A Kite API key (kite_...), from Platform API → Keys in the dashboard.

Headers

Idempotency-Key
string | null
Maximum string length: 255
authorization
string | null
X-Impersonation-Token
string | null
Kite-Version
enum<string>
default:2026-09-27

The dated contract your code was written against. Without it you get 2026-09-27; every response says which version served it.

Available options:
2026-09-27

Body

application/json
dataset
TrainingRunDataset · object
required
policies
string[]
required

LeRobot policy types to train; one run per policy. See GET /v1/training_policies. Note: all runs count against your account's in-flight concurrency limit, so a batch larger than that limit is rejected upfront.

Required array length: 1 - 8 elements
hardware_tier
string
default:gcp_gpu_t4

See GET /v1/hardware_tiers

Maximum string length: 64
robot
string | null

LeRobot robot tag (label only)

Maximum string length: 64
config
TrainingRunConfig · object
cameras
TrainingRunCameras · object | null
output
TrainingRunOutput · object
webhook_metadata
Webhook Metadata · object | null

Opaque metadata echoed on the resource and its webhook events

Response

One run per policy, in the order given: processing, or failed with submission_failed when its GPU job could not start

object
enum<string>
required
Available options:
list
Allowed value: "list"
data
TrainingRun · object[]
required
has_more
boolean
required
next_cursor
string | null
required

Pass as after for the next page (the last run's id)