List Objects
This endpoint lists objects in a bucket with cursor-based pagination, filtering, and sorting.
Filtering: Use dot notation for metadata fields
- Example: ?metadata.type=video&metadata.status=ready
Sorting: Specify field and direction
- Example: ?sort_field=metadata.created_at&sort_direction=desc
- Direction: asc (ascending) or desc (descending), defaults to asc
Pagination: Cursor-based for efficient deep pagination
- First page: ?limit=100 (omit cursor)
- Next pages: ?limit=100&cursor=
- Use next_cursor from response to navigate
- No limit on pagination depth
Total Count: Optional (expensive operation)
- Use ?include_total=true to get total count
- Adds 50-200ms to response time
- Returns total, page, page_size, total_pages fields in pagination response
Headers
Bearer token authentication using your API key. Format: 'Bearer sk_xxxxxxxxxxxxx'. You can create API keys in the Mixpeek dashboard under Organization Settings.
"Bearer YOUR_MIXPEEK_API_KEY"
Namespace identifier for scoping this request. All resources (collections, buckets, taxonomies, etc.) are scoped to a namespace. You can provide either the namespace name or namespace ID. Format: ns_xxxxxxxxxxxxx (ID) or a custom name like 'my-namespace'. Falls back to ?namespace= query parameter if the header is omitted.
"ns_abc123def456"
"production"
"my-namespace"
Path Parameters
The unique identifier of the bucket.
Query Parameters
1 <= x <= 10000 <= x <= 10000Body
Request model for listing objects in a bucket.
Filters to apply to the object list
Sort options for the object list
Search term to filter objects by key or metadata
OPTIONAL. List of fields to include in the response. Supports dot notation for nested fields (e.g., 'metadata.title', 'status'). When specified, only the selected fields will be returned in the object results, reducing response size. System fields like 'object_id' and 'bucket_id' are always included. Use this to optimize response size when working with large objects.
["metadata", "status", "created_at"]Generate fresh presigned download URLs for all blobs with S3 storage. When true, each blob will include a 'presigned_url' in its properties. URLs expire after 1 hour.
Response
Successful Response

