Workspaces
A key can be bound to a workspace when you create it. That binding is the library and billing context for every call. Personal keys can still pass workspaceId on POST /videos to produce into a team space.
The server picks the storage location from the workspace. You only send workspaceId.
To land the video in a Studio folder, pass folderId on POST /videos. Create that folder with POST /folders (optional parentId for a subfolder, max three levels) or in Studio. GET /folders lists the bound library; GET /videos/{videoId} returns folderIds when the video is in one or more folders.
| Role | Can import, dub, and create |
|---|---|
| owner, contributor | Yes |
| member | No — ROLE_CANNOT_PRODUCE |
Owners and contributors share the workspace credit pool. Members can read existing library content when the key has videos:read and is workspace-bound.