Livepush Developers

Videos

Get video storage specs

GET https://octopus.livepush.io/streams/me/videos/storage_specs

Base URL https://octopus.livepush.io — Core Streams & Media APIs

Returns the storage zones available to the account and the switches that govern how an upload must be performed.

Call this before every upload session. It tells you which zone to write to (defaultStorageZone), whether the user may choose another (canSelectStorage), and whether the multipart flow is available at all (isMultipartUploadDisabled). When multipart is disabled, every file must go through the single-request upload URL no matter its size.

Requires a token with the streams.videos.read scope.

Authorization

Send a valid access token in the Authorization header.

  • bearerAuth — Bearer token (JWT)
headers.txt
Authorization: Bearer YOUR_API_TOKEN

Try it

GET https://octopus.livepush.io/streams/me/videos/storage_specs — This call only reads data.

Code samples

request.sh
curl -X GET 'https://octopus.livepush.io/streams/me/videos/storage_specs' \
  -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://octopus.livepush.io/streams/me/videos/storage_specs', {
  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/me/videos/storage_specs', headers=headers, timeout=30)
response.raise_for_status()
data = response.json()

Responses

Get video storage specs.

application/json

  • canSelectStorage boolean
    Whether the account may choose a zone. When false, always upload to defaultStorageZone — the other entries in storageZones are informational.
  • defaultStorageZone string
    ID of the zone to upload into unless the user picks another. Authoritative: prefer this over scanning storageZones for isDefault.
  • isMultipartUploadDisabled boolean
    When true, the multipart endpoints are closed to this account and every upload must go through POST /streams/{stream_id}/videos/uploadurl as a single request, however large the file.
  • isGoogleDriveEnabled boolean
    Whether the account may import videos directly from Google Drive.
  • storageZones VideoStorageZone[]
    Every zone visible to the account, default first or otherwise.
    • id string
    • name string
      Human-readable zone name, as shown in the dashboard's storage picker.
    • host string
      Delivery host videos in this zone are served from.
    • isDefault boolean
      Whether this is the account's default zone. The field is omitted entirely on some zones rather than being sent as false, so treat a missing value as false and rely on defaultStorageZone for the authoritative answer.
Example 200 response response.json
{
  "canSelectStorage": false,
  "defaultStorageZone": "zn_35hk0gxy_pr",
  "isMultipartUploadDisabled": true,
  "isGoogleDriveEnabled": true,
  "storageZones": [
    {
      "id": "zn_35hk0gxy_pr",
      "name": "Video Cloud Storage NS10",
      "host": "vod-ns10-cdn-livepush.akamaized.net",
      "isDefault": true
    },
    {
      "id": "zn_fmp73fxj8",
      "name": "Standard Storage",
      "host": "vod-aws-ldn-1.livepush.io"
    },
    {
      "id": "zn_dg5dshe82",
      "name": "Optimized Storage",
      "host": "vod-scw-par-2.livepush.io"
    },
    {
      "id": "zn_f1w54wq6s",
      "name": "Optimized Storage AMS-1 (Hybrid)",
      "host": "vod-scw-ams-1.livepush.io",
      "isDefault": false
    }
  ]
}

No response body.