Skip to main content
POST
Create Capture in Organization
Capture creation is an Enterprise feature. Upload video directly through the API to run it through Uplift’s movement analysis pipeline. Contact Sales to enable it for your organization.

Example Request Body

Movement dimensions

Optional movement dimension keys for each activity / movement pair can be included in movement_attributes. Valid values are validated by the API. Pairs with no published movement dimensions (for example gait/walking, squat/body_weight) accept only activity and movement in movement_attributes.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
athlete_id
string<uuid>
required

UUID of an athlete that belongs to the same organization as the API key. Returns 400 with athlete_id not found when the athlete is missing or not in your organization.

session_group_id
string<uuid>
required

Identifies the capture group. If the group already exists, it must belong to the same organization and athlete.

camera_configuration
object
required

Additional keys are allowed and stored with the capture configuration.

movement_attributes
object
required

Activity and movement labels plus optional movement dimension keys for that pair. Validated against the published catalog. See Movement dimensions for the per activity/movement field catalog.

file_name
string
required

Video file name; must not contain / or \\. Must use a .mov or .mp4 extension (case-insensitive). If omitted or blank, the request fails with 400.

Maximum string length: 255
capture_time
string<date-time>

ISO 8601 capture time; must not be in the future. Defaults to current server time if omitted.

Response

Reservation succeeded. POST the file to upload_url with all upload_fields before upload_expires_at.

session_id
string

Capture identifier assigned for this reservation.

session_group_id
string

Echo of the request session_group_id.

upload_url
string

S3 endpoint URL for multipart/form-data POST.

upload_fields
object

Form fields that must be included in the POST body exactly as returned (policy, signature, key, Content-Type, etc.).

upload_expires_at
string<date-time>

When the pre-signed POST is no longer valid (30 minutes after issuance).

status
enum<string>

Literal NEW while the capture awaits upload.

Available options:
NEW