longrun.
Get Video Info

Docs

Video actions / Get Video Info

Get Video Info

Use Get Video Info to process your inputs. Submit the request, then retrieve the run to get its result.

POSThttps://uselongrun.app/v1/video/info
Request
curl --request POST "https://uselongrun.app/v1/video/info" \
  --header "Authorization: Bearer ${API_KEY}" \
  --header "Content-Type: application/json" \
  --data "$(jq -n --arg FILE_ID "${FILE_ID}" '{
  "inputs": {
    "file": $FILE_ID
  }
}')"
Accepted · 202
{
  "id": "run_example",
  "status": "queued",
  "outputs": null,
  "error": null,
  "retry_of_run_id": null,
  "created_at": "2026-10-22T10:00:00.000Z",
  "updated_at": "2026-10-22T10:00:00.000Z"
}

The request is accepted, but processing has not finished. Retrieve the run using its ID to get the result.

Completed run · 200
{
  "id": "run_example",
  "status": "completed",
  "outputs": {
    "data": {
      "duration": 12,
      "width": 1280,
      "height": 720,
      "has_video": true,
      "has_audio": true,
      "video_codec": "h264",
      "audio_codec": "aac",
      "sample_rate": 44100,
      "channels": 2,
      "bit_rate": 1398101,
      "format": "mov,mp4,m4a,3gp,3g2,mj2",
      "size": 2097152
    }
  },
  "error": null,
  "retry_of_run_id": null,
  "created_at": "2026-10-22T10:00:00.000Z",
  "updated_at": "2026-10-22T10:00:03.000Z"
}

Example result from Get a run after processing completes. File examples use temporary storage; metadata and values will vary with your inputs.

Get the run result

Request parameters

header
Idempotency-KeystringOptional

Scoped to workspace and operation; same key and payload reuses the run during its seven-day retention period. Changed payload returns 409.

Example
"receipt-1042-v1"

Maximum length: 200 characters.

Request body

Send a JSON body with the following inputs. Put processing settings inside options.

Inputs

inputs.fileVideo fileRequired

The Video file to process. Upload it first and use the returned file ID.

Example
"${FILE_ID}"

Use an uploaded file ID or a supported file reference. Learn how to send files

Options

This action has no additional options.

Delivery

outputobjectOptional

Choose where the result is delivered. Omit this to use temporary LongRun storage.

Example
{
  "storage": "temporary"
}

Storage guide · Bubble delivery setup

Show child fields
output.storagestringOptional

temporary stores results in LongRun. bubble delivers them to a connected Bubble app. These are the only supported values. A published workflow uses its configured destination unless you override it.

Example
"temporary"

Default: "temporary"

Allowed values: temporary bubble

output.connection_idstringConditionally required

Required when storage is bubble. Copy the connection ID from Settings → Integrations → Bubble. Not used for temporary storage.

Example
"${STORAGE_CONNECTION_ID}"
output.privatebooleanOptional

Only for Bubble delivery. true creates a private file and requires attach_to. false requests a public upload; access still depends on the receiving app configuration.

Example
false

Default: false

output.attach_tostringConditionally required

Required when storage is bubble and private is true. The Bubble Thing ID that owns the file. See the Bubble integration guide for setup.

Example
"${BUBBLE_THING_ID}"
output.file_namestringOptional

Optional output filename, such as receipt.pdf. Omit it to use the generated timestamp-based name. Applies to either destination.

Example
"receipt.pdf"

Maximum length: 255 characters.

webhook_idsarray of stringOptional

IDs of configured webhook endpoints to notify for this run. Omit this to send no webhooks for a direct action.

Example
[
  "${WEBHOOK_ID}"
]

Returns

Returns 202 Accepted with a run ID. Processing continues after the response. Retrieve the run until its status is completed, failed, or cancelled.

Retrieve a run →

Outputs when completed

These fields appear inside outputs on the completed run.

outputs.dataobject

Structured results from this action. Expand the child fields to see the returned values.

Show child fields
outputs.data.durationnumber
outputs.data.widthnumber
outputs.data.heightnumber
outputs.data.has_videoboolean
outputs.data.has_audioboolean
outputs.data.video_codectext
outputs.data.audio_codectext
outputs.data.sample_ratenumber
outputs.data.channelsnumber
outputs.data.bit_ratenumber
outputs.data.formattext
outputs.data.sizenumber

Limits

Input file
100 MiB
Processing deadline
120 seconds; processing may stop earlier if a renderer or resource limit is reached