---
title: "List workspace media assets"
method: GET
path: "/v1/workspace/assets"
tags: ["workspace"]
---

# List workspace media assets

`GET /v1/workspace/assets`

## Request

- Base URL: `https://api.framelane.io`
- URL: `https://api.framelane.io/v1/workspace/assets`
- Auth: HTTP bearer

Returns a cursor-paginated list of the workspace's uploaded video, audio and image assets that are ready for use. Optionally filter by `kind` (`video`, `audio` or `image`).

Video and audio appear once their duration is known; an image has no duration to extract and is listed as soon as it is registered.

## Query parameters

- `kind` 'video' | 'audio' | 'image', nullable
- `cursor` string, nullable
- `limit` integer

## Response `200`

Successful Response

- CursorPageMediaAssetOut
  - `data` MediaAssetOut[], required
    - `id` string, required: Unique asset ID.
    - `source_url` string, required: CDN URL of the uploaded file. Pass as source_url in render requests.
    - `kind` string, required: Media kind, derived from the file extension: `video`, `audio` or `image`.
    - `filename` string, nullable: The file's original name, for display. Null for assets uploaded before names were recorded; derive one from `source_url` in that case.
    - `duration` number, nullable: Duration in seconds. Always null for images.
    - `width` integer, nullable: Pixel width (video or image).
    - `height` integer, nullable: Pixel height (video or image).
    - `created_at` string, date-time, required: When the asset was uploaded.
  - `next_cursor` string, nullable
  - `has_more` boolean

## Other responses

- `401`: Missing or invalid API key.
- `422`: Validation Error

---

[API](https://skmtc.dev/framelane/apis/framelane-api.md) · [All operations](https://skmtc.dev/framelane/apis/framelane-api/llms.txt) · [OpenAPI document](https://skmtc.dev/framelane/apis/framelane-api/revisions/a223001ca8e5?raw)
