GET
/
collections
/
{collection_id}
/
videos
List all files in a collection
curl --request GET \
  --url https://api.cloudglue.dev/v1/collections/{collection_id}/videos \
  --header 'Authorization: Bearer <token>'
{
  "object": "list",
  "data": [
    {
      "collection_id": "<string>",
      "file_id": "<string>",
      "object": "collection_file",
      "added_at": 123,
      "status": "pending",
      "file": {
        "id": "<string>",
        "status": "pending",
        "bytes": 123,
        "created_at": 123,
        "filename": "<string>",
        "uri": "<string>",
        "metadata": {},
        "video_info": {
          "duration_seconds": 123,
          "height": 123,
          "width": 123,
          "format": "<string>",
          "has_audio": true
        },
        "thumbnail_url": "<string>",
        "source": "video"
      },
      "segmentation": {
        "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "status": "pending",
        "file_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "segmentation_config": {
          "strategy": "uniform",
          "uniform_config": {
            "window_seconds": 31,
            "hop_seconds": 30.5
          },
          "shot_detector_config": {
            "threshold": 123,
            "min_seconds": 31,
            "max_seconds": 31,
            "detector": "adaptive"
          },
          "start_time_seconds": 1,
          "end_time_seconds": 1
        }
      }
    }
  ],
  "total": 123,
  "limit": 123,
  "offset": 123
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

collection_id
string
required

The ID of the collection

Query Parameters

limit
integer
default:50

Maximum number of files to return

Required range: x <= 100
offset
integer
default:0

Number of files to skip

status
enum<string>

Filter by processing status

Available options:
pending,
processing,
completed,
failed,
not_applicable
added_before
string<date>

Filter files added before a specific date (YYYY-MM-DD format), in UTC timezone

added_after
string<date>

Filter files added after a specific date (YYYY-MM-DD format), in UTC timezone

order
enum<string>
default:added_at

Order the files by a specific field

Available options:
added_at,
filename
sort
enum<string>
default:desc

Sort the files in ascending or descending order

Available options:
asc,
desc
filter
string

JSON string containing filter criteria to constrain file search results. This is the JSON string version of the SearchFilter object used in the search API.

Supported Filter Types:

metadata - Filter by file metadata using JSON path expressions (e.g., 'speaker', 'category.subcategory') • video_info - Filter by video information properties

  • duration_seconds - Video duration in seconds
  • has_audio - Whether the video has audio (true/false)

file - Filter by file properties

  • filename - File name (string)
  • uri - File URI (string)
  • id - File ID (UUID string)
  • created_at - Creation timestamp (ISO 8601 string)
  • bytes - File size in bytes (number)

Supported Operators:Equal - Exact match (requires valueText) • NotEqual - Not equal to value (requires valueText) • LessThan - Less than value (requires valueText) • GreaterThan - Greater than value (requires valueText) • Like - Case-insensitive pattern matching with wildcards (requires valueText) • In - Value is in array (requires valueTextArray) • ContainsAny - Array contains any of the values (requires valueTextArray) • ContainsAll - Array contains all of the values (requires valueTextArray)

Examples:

Metadata filtering:

{"metadata":[{"path":"speaker","operator":"Like","valueText":"YO%"}]}

Video info filtering:

{"video_info":[{"path":"duration_seconds","operator":"GreaterThan","valueText":"60"}]}

File property filtering:

{"file":[{"path":"filename","operator":"Like","valueText":"%.mp4"}]}
{"file":[{"path":"bytes","operator":"GreaterThan","valueText":"1048576"}]}
{"file":[{"path":"created_at","operator":"GreaterThan","valueText":"2024-01-01T00:00:00Z"}]}

Combined filtering:

{"metadata":[{"path":"speaker","operator":"Equal","valueText":"John"}],"video_info":[{"path":"has_audio","operator":"Equal","valueText":"true"}],"file":[{"path":"filename","operator":"Like","valueText":"%.mp4"}]}

Response

A list of files in the collection

object
enum<string>
required

Object type, always 'list'

Available options:
list
data
object[]
required

Array of collection file objects

total
integer
required

Total number of files matching the query

limit
integer
required

Number of items returned in this response

offset
integer
required

Offset from the start of the list