---
title: "One page of a shared folder's files (public, by capability token)"
method: GET
path: "/v1/shared-folders/{token}/files"
tags: ["shared-assets"]
---

# One page of a shared folder's files (public, by capability token)

`GET /v1/shared-folders/{token}/files`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/shared-folders/{token}/files`
- Auth: none declared

The folder's live files, oldest-filed first, paged. Each entry carries an opaque locator — pass it to the thumbnail and download routes below. No sign-in.

## Path parameters

- `token` string, required: The share link's capability token.

## Query parameters

- `cursor` string, nullable: From a previous page's next_cursor.
- `limit` integer

## Response `200`

Successful Response

- SharedFolderPage: One page of a shared folder's files, cursor-paged over an immutable key. Deliberately carries NO ``total`` — :class:`SharedFolderFacts` is the one place that count lives. The listing's own ``total`` would recompute the SAME correlated, live-link-gated count (:meth:`~repositories.asset.AssetFolderRepository.totals_for`) on every single page a recipient loads, for a number ``useSharedFolder.ts`` already holds from the first ``GET /shared-folders/{token}`` call and never needed a second time.
  - `items` SharedFolderFile[], required
    - `name` string, required: The file's name. UNTRUSTED text: render escaped.
    - `category` 'document' | 'media' | 'app', required
    - `kind` 'app' | 'audio' | 'docx' | 'file' | 'html' | 'image' | 'markdown' | 'pdf' | 'slides' | 'spreadsheet' | 'video', required
    - `content_type` string, required
    - `byte_size` integer, required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `thumbnail_status` 'ready' | 'pending' | 'unavailable'
    - `locator` string, required: An opaque, versioned, signed selector for this file within this folder link — pass it to the thumbnail and download routes. Meaningless outside this link, and outside this folder link's lifetime.
  - `next_cursor` string, nullable: Pass as `cursor` to fetch the next page. Null on the last page.

## Other responses

- `404`: No shared folder for that link.
- `422`: Validation Error

---

[API](https://skmtc.dev/patricia/apis/patricia-api.md) · [All operations](https://skmtc.dev/patricia/apis/patricia-api/llms.txt) · [OpenAPI document](https://skmtc.dev/patricia/apis/patricia-api/revisions/0dfb44495ea1?raw)
