Sign a multipart upload part
POST
https://octopus.livepush.io/streams/{stream_id}/videos/uploadurl/multipart/part/signed
Base URL https://octopus.livepush.io — Core Streams & Media APIs
Returns a pre-signed URL for one part. Call once per part, then keep each response ETag for the finish call.
Requires a token with the streams.videos.write scope.
Authorization
Send a valid access token in the Authorization header.
bearerAuth— Bearer token (JWT)
Authorization: Bearer YOUR_API_TOKEN
Try it
Loading the request builder…
POST
https://octopus.livepush.io/streams/{stream_id}/videos/uploadurl/multipart/part/signed
— This call changes live data on your account.
Parameters
Path parameters
-
stream_idstring requiredUnique identifier of the stream.example: st_xxxxxxxxxxxxx
Request body
-
partNumberinteger required1-based index of the part being uploaded. -
uploadIdstring requiredUpload session ID returned when the session was started. -
Keystring requiredObject key for the upload. -
zonestring required
{
"partNumber": 3,
"uploadId": "string",
"Key": "string",
"zone": "eu-central"
}
Code samples
curl -X POST 'https://octopus.livepush.io/streams/st_xxxxxxxxxxxxx/videos/uploadurl/multipart/part/signed' \
-H 'Authorization: Bearer YOUR_API_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"partNumber": 3,
"uploadId": "string",
"Key": "string",
"zone": "eu-central"
}'
const response = await fetch('https://octopus.livepush.io/streams/st_xxxxxxxxxxxxx/videos/uploadurl/multipart/part/signed', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"partNumber": 3,
"uploadId": "string",
"Key": "string",
"zone": "eu-central"
}),
});
if (!response.ok) {
throw new Error(`Livepush API error ${response.status}`);
}
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json',
}
payload = {
"partNumber": 3,
"uploadId": "string",
"Key": "string",
"zone": "eu-central"
}
response = requests.post('https://octopus.livepush.io/streams/st_xxxxxxxxxxxxx/videos/uploadurl/multipart/part/signed', headers=headers, json=payload, timeout=30)
response.raise_for_status()
data = response.json()
Responses
Sign a multipart upload part.
-
Keystring -
uploadIdstring -
partNumberinteger -
uploadUrlstringPre-signed URL to PUT this part to. Keep theETagfrom the storage response — the finish call needs it.
{
"Key": "string",
"uploadId": "string",
"partNumber": 3,
"uploadUrl": "string"
}
No response body.
Not found for this account.