recordings

Recording Upload Started

Called by mobile app BEFORE starting S3 upload.

Creates a recording row with status='uploading' to enable real-time tracking.

IDEMPOTENT: Uses UPSERT to handle retries gracefully. If the recording already exists, it updates the existing record instead of failing.

BACKWARD COMPATIBILITY:

  • Old mobile apps won't call this endpoint
  • They'll go straight to /tools/transcribe_v3 which handles creation
  • This is optional for new apps to get real-time upload status

REALTIME TRIGGER:

  • INSERT/UPDATE on recordings table triggers Supabase Realtime notification
  • Mobile can show "Uploading..." status immediately
post/recordings/upload-started

Request body

recording_idstring required

UUID generated by mobile app for this recording

task_idstring required

Task ID to associate with this recording (required)

bucketstring required

S3 bucket name

object_keystring required

S3 object key

file_sizeinteger required

File size in bytes

location_latnumber nullable

GPS latitude

location_lngnumber nullable

GPS longitude

location_accuracynumber nullable

GPS accuracy in meters

start_timestampinteger nullable

Recording start time as Unix timestamp (seconds)

Response

Successful Response

{"stackTrail":"paths:/recordings/upload-started:post:responses:201:content:application/json:schema","oasType":"schema","type":"unknown"}

Changes

No recorded changes to this endpoint across all 2 revisions of this API.