Skip to content

Read a source's tracks

GET
/v1/uploads/{id}/tracks
curl --request GET \
--url https://api.iomza.com/v1/uploads/example/tracks \
--header 'Authorization: Bearer <token>'

Duration, video, and every audio and subtitle track, to choose them before creating a job. Only the file’s header is read: about a second, whatever its size.

id
required
string

What the source contains.

Media typeapplication/json

GET /v1/uploads/{id}/tracks and POST /v1/probe: what a source contains, before creating a job.

object
object
required
string
Allowed value: source_tracks
duration
required
number
bitrate
required
number | null
video
required
Any of:
object
codec
required
string
width
required
number
height
required
number
frame_rate
required
number
interlaced
required
boolean
hdr
required
string | null
Allowed values: pq hlg
unsupported
required
string | null
Allowed values: dolby_vision_no_compatible_layer
audio_tracks
required
Array<object>

An audio track of a source.

object
index
required
number
language
required

As tagged in the file (usually ISO 639-2: “spa”, “eng”); null when untagged.

string | null
title
required
string | null
codec
required
string
channels
required
number
default
required
boolean
atmos
required
boolean
bitrate
required

Bits per second; null when the file does not say.

number | null
subtitle_tracks
required
Array<object>

A subtitle track of a source.

object
index
required
number
language
required
string | null
title
required
string | null
codec
required
string
default
required
boolean
forced
required
boolean
convertible
required

Text subtitles become WebVTT; image ones (PGS, DVD) cannot.

boolean

Example

{
"object": "source_tracks",
"video": {
"hdr": "pq",
"unsupported": "dolby_vision_no_compatible_layer"
}
}

Invalid fields: details lists each problem with its path.

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}

The API key is missing, invalid or revoked.

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}

Valid credentials that may not do this (forbidden), your plan doesn’t include the module the route belongs to (module_not_in_plan), or your organization is suspended (organization_suspended).

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}

It doesn’t exist in your organization.

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}

Too many requests: wait and retry. Answered by the gateway, so the body may differ.

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}

Ours: retry, and tell us if it persists.

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}

Momentarily unavailable: retry in a few seconds.

Media typeapplication/json
object
error
required
object
code
required

Stable: branch on it.

string
Allowed values: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
required

English, for people; may change.

string
details
required

Each problem, as path: message (validation errors).

Array<string>

Example

{
"error": {
"code": "validation_error"
}
}