Skip to main content
POST
Create Upload Project

Authorizations

Authorization
string
header
required

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

Body

application/json
filename
string
required
Required string length: 1 - 255
content_type
string
required

MIME type of the upload. Accepted: video/mp4, video/quicktime, video/webm, audio/mpeg, audio/mp4, audio/x-m4a, audio/aac, audio/wav, audio/x-wav, audio/flac, audio/x-flac, audio/ogg, audio/webm. Unsupported types return 415. Audio sources are transcript-only (vision and retake-removal return 422).

Required string length: 1 - 255
size_bytes
integer | null
Required range: x > 0

Response

Successful Response

project_id
string
required
status
enum<string>
required

Public project lifecycle: creation → upload → analyzable (or failed).

One of three distinct status vocabularies on the /v1 wire (REE-75) — project lifecycle, command dispatch, and analysis result are different state machines and are declared as different enums on purpose.

Available options:
created,
uploading,
ready,
failed
created_at
string
required
source
ProjectSourceResponse · object
required
upload_url
string
required
upload_headers
Upload Headers · object
required
upload_expires_in_seconds
integer
required