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

# List media assets

`GET /v1/media`

Retrieve media assets for the authenticated workspace.

## Query parameters

- `limit` integer — Number of items per page (1-100)
- `page` integer — Page number
- `query` string — Search media by name, alt text, URL, or MIME type
- `type` 'image' | 'video' | 'audio' | 'document' — Filter by inferred media type
- `order` 'asc' | 'desc' — Sort order by creation date

## Response `200`

Media assets retrieved successfully

- MediaListResponse
  - `media` Media[], required
    - `id` string, required
    - `name` string, required
    - `url` string, uri, required
    - `alt` string, nullable, required
    - `size` integer, required — File size in bytes
    - `mimeType` string, nullable, required
    - `width` integer, nullable, required
    - `height` integer, nullable, required
    - `duration` integer, nullable, required — Duration in milliseconds
    - `blurHash` string, nullable, required
    - `type` 'image' | 'video' | 'audio' | 'document', required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
  - `pagination` Pagination, required
    - `limit` integer, required
    - `currentPage` integer, required
    - `nextPage` integer, nullable, required
    - `previousPage` integer, nullable, required
    - `totalPages` integer, required
    - `totalItems` integer, required

## Other responses

- `400` — Invalid query parameters
- `404` — Page number does not exist
- `500` — Server error

---

[API](https://skmtc.dev/marblecms/apis/marble-api.md) · [All operations](https://skmtc.dev/marblecms/apis/marble-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/marblecms/marble-api/revisions/ce3a22722c0e/schema)
