# Get video storage specs
`GET https://octopus.livepush.io/streams/me/videos/storage_specs`
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.
- **Tag:** Videos
- **Operation ID:** `getVideoStorageSpecs`
- **Authentication:** Bearer token required
- **Docs:** https://developers.livepush.io/videos/get-video-storage-specs/

### Example request

```bash
curl -X GET 'https://octopus.livepush.io/streams/me/videos/storage_specs' \
  -H 'Authorization: Bearer YOUR_API_TOKEN'
```


### Responses


#### 200 — Get video storage specs.

- `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/{streamid}/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.


```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
    }
  ]
}
```


#### 401 — Response

