List media files
Authorization
Bearer API key (rlay_live_* or rlay_test_). Invite redemption also accepts a server-derived rlay_session_ bearer for a current user session.
In: header
Query Parameters
Pagination cursor
Number of items per page
1 <= value <= 10020Filter: start date (ISO 8601)
date-timeFilter: end date (ISO 8601)
date-timeFilter by workspace ID
Filter by specific account ID
Filter by any of several account IDs (comma-separated). Takes precedence over account_id.
Filter by post status
Value in
- "draft"
- "scheduled"
- "publishing"
- "published"
- "provider_draft"
- "failed"
- "partial"
Comma-separated list of fields to include in the response (e.g. 'targets,media')
When true, also return external posts merged by published_at (works with status=published or no status filter)
"false"Value in
- "true"
- "false"
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/v1/media"{ "data": [ { "created_at": "2019-08-24T14:15:22Z", "duration": 0, "filename": "string", "height": 0, "id": "string", "mime_type": "string", "original_available": true, "processing_error": { "code": "string", "message": "string" }, "processing_status": "not_requested", "reference_url": "http://example.com", "size": 0, "url": "http://example.com", "variants": [ { "duration": 0, "height": 0, "id": "string", "kind": "normalized", "mime_type": "string", "profile": "string", "size": 0, "status": "processing", "width": 0 } ], "variants_truncated": true, "width": 0, "workspace_id": "string" } ], "has_more": true, "next_cursor": "string"}Found something wrong? Help us improve this page.
Get Media Upload Session GET
Previous Page
Get a pre-signed upload URL POST
Create a pending media upload intent and generate a create-only pre-signed R2 PUT URL. Send every header in upload_headers exactly as returned, including Content-Type and If-None-Match, then call POST /v1/media/confirm; confirmation is mandatory before using the canonical media URL.