---
title: "Fetch a file's grid preview"
method: GET
path: "/v1/assets/{asset_id}/thumbnail"
tags: ["assets"]
---

# Fetch a file's grid preview

`GET /v1/assets/{asset_id}/thumbnail`

## 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/assets/{asset_id}/thumbnail`
- Auth: HTTP bearer

A small server-generated WebP preview of the file's current version, for the library grids. Answers 202 while a preview is being prepared (requesting one that is missing queues its generation), and 404 when the file does not exist, has been deleted, belongs to another workspace, or will never have a preview — the type icon is the fallback either way. Supports `If-None-Match` with the returned ETag.

## Path parameters

- `asset_id` string, uuid, required: The asset's id.

## Query parameters

- `access_acknowledgement` string, uuid, nullable: A UUID for one deliberate private-file opening. Reuse across requests for the same opening.

## Headers

- `X-Tenant-Id` string, nullable

## Response `200`

The server-generated preview image.

## Other responses

- `202`: No preview yet; generation is queued. Ask again shortly.
- `304`: Unchanged — the ETag the client holds is still current.
- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden. Inspect response body `code` for the specific reason (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED, TENANT_ACCESS_REQUIRED, ROLE_UNRESOLVED). PRIVATE_ASSET_ACKNOWLEDGEMENT_REQUIRED: confirm a deliberate opening.
- `404`: Not found
- `422`: Validation error
- `503`: The private access audit is unavailable.

---

[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)
