Create a direct-upload session
POST
/uploads
const url = 'https://api.devstreamcore.com/v1/uploads';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"new_video_settings":{"playback_policy":"public"},"cors_origin":"example","multipart":true,"file_size_bytes":1}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.devstreamcore.com/v1/uploads \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "new_video_settings": { "playback_policy": "public" }, "cors_origin": "example", "multipart": true, "file_size_bytes": 1 }'Returns a presigned PUT URL (single-PUT) or parts[] (multipart, files ≥ 50 MiB).
Authorizations
Seção intitulada “Authorizations ”Request Body
Seção intitulada “Request Body ” Media type application/json
object
new_video_settings
object
title
string
description
string
playback_policy
string
passthrough
string
quality
string
mime_type
string
cors_origin
string
multipart
boolean
file_size_bytes
integer
Responses
Seção intitulada “ Responses ”Upload session
Media type application/json
Upload session. url (single-PUT) XOR parts (multipart).
object
id
required
string
video_id
required
string
status
required
string
timeout
required
Seconds until the session expires
number
cors_origin
required
string | null
url
Presigned PUT URL — present only on single-PUT (small files)
string
upload_id
R2 multipart id — multipart only
string
parts
Presigned PUT URL per chunk — multipart only
Array<object>
object
partNumber
required
number
url
required
string
chunk_size
number
Example
{ "id": "up_a1b2c3d4e5f6a1b2c3d4", "video_id": "vid_a1b2c3d4e5f6a1b2c3d4", "status": "waiting"}Invalid request
Media type application/json
Error envelope — a single error per response.
object
error
required
object
type
required
string
code
string
message
required
string
param
string
request_id
string
Example
{ "error": { "type": "invalid_request_error" }}Missing or invalid API key
Media type application/json
Error envelope — a single error per response.
object
error
required
object
type
required
string
code
string
message
required
string
param
string
request_id
string
Example
{ "error": { "type": "invalid_request_error" }}Quota exceeded (encode minutes / duration / views)
Media type application/json
Error envelope — a single error per response.
object
error
required
object
type
required
string
code
string
message
required
string
param
string
request_id
string
Example
{ "error": { "type": "invalid_request_error" }}Rate limited — apply backoff
Media type application/json
Error envelope — a single error per response.
object
error
required
object
type
required
string
code
string
message
required
string
param
string
request_id
string
Example
{ "error": { "type": "invalid_request_error" }}