Skip to main content

List media

GET 

/media

Returns media files in your library. Supports filtering by type and pagination.

Pulling media IDs for a post

The top-level media_ids array in the response is a convenience array of every UUID in items[], in the same order. If you want to attach all returned media to a post, you can copy media_ids straight into POST /v1/posts.

No url or storage_url field

This endpoint does not return direct storage URLs. See GET /v1/media/{media_id} for the reasoning. Each items[] entry has media_id, dimensions, and content type — enough to identify and filter, but no raw file URL.

Query Parameters

ParameterTypeRequiredDescription
typestringNoFilter by media type: image, video, or document
limitintegerNoNumber of items to return. Min 1, max 100, default 20.
offsetintegerNoNumber of items to skip. Default 0.

Response Example

200 — List of media

{
"data": {
"items": [
{
"media_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "ready",
"type": "image",
"filename": "product-photo.jpg",
"content_type": "image/jpeg",
"size": 2048576,
"width": 1920,
"height": 1080,
"duration": null,
"created_at": "2026-04-10T12:00:00.000Z"
}
],
"media_ids": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"],
"pagination": {
"limit": 20,
"offset": 0
}
},
"error": null,
"meta": {
"request_id": "a1b2c3d4",
"timestamp": "2026-04-10T12:00:00.000Z"
}
}

Item object fields

FieldTypeDescription
media_idstring (UUID)Canonical media identifier (use in media_ids arrays)
statusstringready, processing, or failed
typestringimage, video, or document
filenamestringOriginal filename
content_typestringMIME type
sizeintegerFile size in bytes
widthinteger or nullPixel width
heightinteger or nullPixel height
durationnumber or nullDuration in seconds (videos)
created_atstring (ISO 8601)UTC timestamp

Request

Responses

List of media