Files
youtube-studio-flow/documentation/YouTube Studio Flow/03 - API Reference/08 - Saved Views API.md
T

92 lines
1.8 KiB
Markdown

# Saved Views API
Base path: `/api/v1/saved-views`
All endpoints require `Authorization: Bearer <jwt>`.
Related: [[02 - Videos API]], [[11 - Bulk Jobs API]]
---
## GET /saved-views
List all saved views for the current team.
**Response:** `SavedView[]`
---
## GET /saved-views/tabs
List saved views that are pinned as tabs, ordered by `tabOrder`.
**Response:** `SavedView[]`
---
## POST /saved-views
Create a new saved view. Requires `EDITOR` role.
**Request body:**
```json
{
"name": "string",
"description": "string",
"isGlobal": false,
"queryJson": {
"lintStatus": "ERROR"
},
"columnsJson": {
"visible": [],
"order": []
},
"sortJson": {
"field": "publishedAt",
"order": "desc"
},
"pinnedAsTab": false,
"tabOrder": null
}
```
**Field notes:**
| Field | Notes |
|---|---|
| `isGlobal` | If `true`, the view is visible to all team members. If `false`, it is personal. |
| `queryJson` | Filter parameters — same shape as the query params accepted by `GET /videos`. |
| `columnsJson` | Column visibility and order configuration for the video table. |
| `sortJson` | Default sort field and direction for the view. |
| `pinnedAsTab` | Whether the view appears as a tab in the video list UI. |
| `tabOrder` | Integer position in the tab bar. `null` if not pinned. |
---
## PATCH /saved-views/:id
Update a saved view. Requires `EDITOR` role.
**Request body:** Same fields as `POST /saved-views`, all optional.
---
## DELETE /saved-views/:id
Delete a saved view. Requires `ADMIN` role.
---
## POST /saved-views/:id/execute
Execute the saved view's stored query and return the matching video IDs.
**Response:**
```json
{ "videoIds": ["cuid", "cuid"] }
```
> The returned `videoIds` can be passed directly to bulk job endpoints such as `POST /bulk-jobs/push-pending` or `POST /bulk-jobs/preview`. See [[11 - Bulk Jobs API]].