Skip to main content
GET
Get an upload and refresh its upload URLs
Returns an upload, with freshly signed transfer URLs while it is pending for a key that may write (media:write; a key without it reads transfer: null, because the URL can overwrite the object), and its media_id and import_job_id once completed. When to use: when a part URL expired during a long transfer, or to find the media created by completeUpload. Side effects: None (signing URLs writes nothing). Cost: Free. Idempotency: safe and pure (never writes); retry freely. Required scopes: media:read

Authorizations

Authorization
string
header
required

API key from Settings -> API keys, sent as Authorization: Bearer <key> (SDK environment variable RASK_API_KEY). Bound to one workspace and one acting user. Operations list the scopes they need (OpenAPI 3.1 scopes on a bearer scheme).

Scopes

media:read

Path Parameters

upload_id
string
required

Upload id.

Maximum string length: 64

Response

OK: Upload.

A presigned upload. Bytes go straight to storage, never through the API host.

object
enum<string>
required

Always upload.

Available options:
upload
id
string
required

Upload id.

status
enum<string>
required

Upload status.

  • pending: waiting for bytes; transfer URLs are valid
  • completing: completeUpload is running
  • completed: registered as media
  • aborted: deleted before completion
  • expired: not completed within 24 hours
Available options:
pending,
completing,
completed,
aborted,
expired
filename
string
required

File name.

content_type
enum<string>
required

Accepted upload content types. voice_sample uploads accept audio (<= 11 MB, kept as uploaded) and video (<= 500 MB; its audio is extracted to MP3 on import).

  • video/mp4: accepted
  • video/quicktime: accepted
  • video/x-matroska: accepted
  • video/webm: accepted
  • video/x-msvideo: accepted
  • video/x-m4v: accepted
  • video/3gpp: accepted
  • audio/mpeg: accepted
  • audio/wav: accepted
  • audio/x-wav: accepted
  • audio/flac: accepted
  • audio/x-flac: accepted
  • audio/mp4: accepted
  • audio/x-m4a: accepted
Available options:
video/mp4,
video/quicktime,
video/x-matroska,
video/webm,
video/x-msvideo,
video/x-m4v,
video/3gpp,
audio/mpeg,
audio/wav,
audio/x-wav,
audio/flac,
audio/x-flac,
audio/mp4,
audio/x-m4a
size_bytes
integer<int64>
required

Declared size.

purpose
enum<string>
required

What a media item is for.

  • project_source: the source of a project (default)
  • voice_sample: a sample for createVoiceClone (audio, or video whose audio is extracted to MP3 on import)
Available options:
project_source,
voice_sample
transfer
object | null
required

Presigned URLs while pending, for a key with media:write; otherwise and afterwards null.

media_id
string | null
required

Media created by completeUpload.

import_job_id
string | null
required

The media_import job.

expires_at
string<date-time>
required

The upload expires 24 hours after creation.

created_at
string<date-time>
required

Creation time.