Skip to content
Get started

Query Files

Deprecated
client.files.query(FileQueryParams { organization_id, project_id, filter, 3 more } params, RequestOptionsoptions?): FileQueryResponse { items, next_page_token, total_size }
POST/api/v1/beta/files/query

Query files with flexible filtering and pagination.

Deprecated: Use GET /files instead for listing files with query parameters.

Args: request: The query request with filters and pagination project: Validated project from dependency db: Database session

Returns: Paginated response with files

ParametersExpand Collapse
params: FileQueryParams { organization_id, project_id, filter, 3 more }
organization_id?: string | null

Query param

formatuuid
project_id?: string | null

Query param

formatuuid
filter?: Filter | null

Body param: Filter parameters for file queries.

data_source_id?: string | null

Filter by data source ID

formatuuid
external_file_id?: string | null

Filter by external file ID

file_ids?: Array<string> | null

Filter by specific file IDs

file_name?: string | null

Filter by file name

only_manually_uploaded?: boolean | null

Filter only manually uploaded files (data_source_id is null)

project_id?: string | null

Filter by project ID

formatuuid
order_by?: string | null

Body param: A comma-separated list of fields to order by, sorted in ascending order. Use 'field_name desc' to specify descending order.

page_size?: number | null

Body param: The maximum number of items to return. The service may return fewer than this value. If unspecified, a default page size will be used. The maximum value is typically 1000; values above this will be coerced to the maximum.

page_token?: string | null

Body param: A page token, received from a previous list call. Provide this to retrieve the subsequent page.

ReturnsExpand Collapse
FileQueryResponse { items, next_page_token, total_size }

Response schema for paginated file queries in V2 API.

items: Array<Item>

The list of items.

id: string

Unique identifier

name: string
project_id: string

The ID of the project that the file belongs to

formatuuid
expires_at?: string | null

The expiration date for the file. Files past this date can be deleted.

formatdate-time
external_file_id?: string | null

The ID of the file in the external system

file_type?: string | null

File type (e.g. pdf, docx, etc.)

maxLength3000
minLength1
last_modified_at?: string | null

The last modified time of the file

formatdate-time
purpose?: string | null

The intended purpose of the file (e.g., 'user_data', 'parse', 'extract', 'split', 'classify', 'sheet', 'agent_app')

next_page_token?: string | null

A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.

total_size?: number | null

The total number of items available. This is only populated when specifically requested. The value may be an estimate and can be used for display purposes only.

Query Files

import LlamaCloud from '@llamaindex/llama-cloud';

const client = new LlamaCloud({
  apiKey: process.env['LLAMA_CLOUD_API_KEY'], // This is the default and can be omitted
});

const response = await client.files.query();

console.log(response.items);
{
  "items": [
    {
      "id": "id",
      "name": "x",
      "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "expires_at": "2019-12-27T18:11:19.117Z",
      "external_file_id": "external_file_id",
      "file_type": "x",
      "last_modified_at": "2019-12-27T18:11:19.117Z",
      "purpose": "purpose"
    }
  ],
  "next_page_token": "next_page_token",
  "total_size": 0
}
Returns Examples
{
  "items": [
    {
      "id": "id",
      "name": "x",
      "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "expires_at": "2019-12-27T18:11:19.117Z",
      "external_file_id": "external_file_id",
      "file_type": "x",
      "last_modified_at": "2019-12-27T18:11:19.117Z",
      "purpose": "purpose"
    }
  ],
  "next_page_token": "next_page_token",
  "total_size": 0
}