Media Service

Upload a video file

Creates a new video upload. Returns an upload URL where the video file should be uploaded via PUT request.

Upload Process:

  1. Call this endpoint to create a video upload and receive an upload_url and id
  2. Upload your video file to the upload_url using a PUT request with the video file (ReadStream) as the body

Note: The upload_url is a temporary signed URL that expires after a short period.

Request

Request Body

  • field_id
    string
    Field ID within the form where this media belongs

  • form_id
    string
    Unique ID for the form. Find in your form URL. For example, in the URL "https://mysite.typeform.com/to/u6nXL7" the form_id is u6nXL7.

  • language
    string
    Language code for the media content (ISO 639-1 format). Used for automatic transcription and captioning.

Responses

Status

  • 201
    Video upload created successfully

Schema

  • id
    string
    Unique identifier for the created media file

  • upload_url
    string
    Temporary signed URL where the media file should be uploaded using a PUT request. This URL expires after a short period (typically 24 hours).

Example

{
  "id": "video_abc123def456",
  "upload_url": "https://storage.googleapis.com/mux-input-prod/signed-upload-url?signature=xyz..."
}

Status

  • 400
    Bad request - invalid input

Schema

  • code
    string
    Error code identifying the type of error

  • details
    object
    Additional error details specific to the error type

  • message
    string
    Human-readable error message