Get a signed thumbnail URL
GET
https://octopus.livepush.io/streams/{stream_id}/videos/{video_id}/thumb_url/signed
Base URL https://octopus.livepush.io — Core Streams & Media APIs
Returns a time-limited URL for the video thumbnail. Responds 404 when the video has no snapshot yet.
Not called by the dashboard.
Requires a token with the streams.videos.read 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…
GET
https://octopus.livepush.io/streams/{stream_id}/videos/{video_id}/thumb_url/signed
— This call only reads data.
Parameters
Path parameters
-
stream_idstring requiredUnique identifier of the stream.example: st_xxxxxxxxxxxxx -
video_idstring requiredUnique identifier of the video.example: vd_xxxxxxxxxxxx
Code samples
curl -X GET 'https://octopus.livepush.io/streams/st_xxxxxxxxxxxxx/videos/vd_xxxxxxxxxxxx/thumb_url/signed' \
-H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://octopus.livepush.io/streams/st_xxxxxxxxxxxxx/videos/vd_xxxxxxxxxxxx/thumb_url/signed', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
},
});
if (!response.ok) {
throw new Error(`Livepush API error ${response.status}`);
}
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
}
response = requests.get('https://octopus.livepush.io/streams/st_xxxxxxxxxxxxx/videos/vd_xxxxxxxxxxxx/thumb_url/signed', headers=headers, timeout=30)
response.raise_for_status()
data = response.json()
Responses
Get a signed thumbnail URL.
-
idstring -
KeystringObject key the URL points at. -
signedUrlstringThe time-limited URL. -
snapshotstringOnly present on the thumbnail response — the stored snapshot path the signed URL was derived from.
{
"id": "vd_xxxxxxxxxxxx",
"Key": "string",
"signedUrl": "string",
"snapshot": "string"
}
No response body.
Not found for this account.