---
title: "List Assets"
method: GET
path: "/companies/{company_id}/assets"
tags: ["assets"]
---

# List Assets

`GET /companies/{company_id}/assets`

## Request

- Base URL: `https://app.zalster.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.zalster.com/companies/{company_id}/assets`
- Auth: none declared

Assets referenced by the company's (active) products, newest first.

``q`` keeps the pictures of products whose title, id or brand contains it,
as the products list's search matches them — the grid used to filter only
the page it had loaded (design 8.0). ``kind`` keeps the product photos or
the lifestyle pictures (decision 203).

Decision 218: ``review=pending_review`` also finds a picture whose newer
cut-out waits beside the one in use (``waiting``), and ``order=risk`` puts
first the cut-outs most likely to be wrong — failed checks, then the most
problems, then the softest edges — so a reviewer's first minutes go where
they count. A ``review`` filter leaves out lifestyle photos (decision 241):
their cut-outs are not reviewed.

Decision 265: ``order=uncertain`` puts first the pictures the automatic sort
was least sure of — the sorting view's order — and the ones a person sorted
last, since their sort is final.

## Path parameters

- `company_id` string, uuid, required: Company id

## Query parameters

- `review` 'pending_review' | 'approved' | 'rejected'
- `status` 'downloaded' | 'normalized' | 'processing' | 'processed' | 'failed'
- `limit` integer
- `offset` integer
- `active_only` boolean
- `q` string, nullable
- `kind` 'product' | 'lifestyle': What a picture is (decision 203): a product photo is cut out, a lifestyle one is not.
- `order` 'newest' | 'risk' | 'uncertain'

## Response `200`

Successful Response

- AssetListItem[]
  - `id` string, uuid, required
  - `content_hash` string, required
  - `status` string, required
  - `width` integer, required
  - `height` integer, required
  - `mime_type` string, required
  - `byte_size` integer, required
  - `last_error` string, nullable, required
  - `current_cutout` AssetDerivativeOut, required
    - `id` string, uuid, required
    - `asset_id` string, uuid, required
    - `kind` string, required
    - `processor` string, required
    - `processor_version` string, required
    - `model` string, nullable, required
    - `width` integer, required
    - `height` integer, required
    - `byte_size` integer, required
    - `quality` object, required
    - `review_status` string, required
    - `review_note` string, nullable, required
    - `reviewed_at` string, date-time, nullable, required
    - `created_at` string, date-time, required
  - `references` object[], required
  - `checked_at` string, date-time, nullable, required
  - `kind` 'product' | 'lifestyle': What a picture is (decision 203): a product photo is cut out, a lifestyle one is not.
  - `kind_source` 'auto' | 'person': Who sorted a picture: sorting again never overrules a person.
  - `kind_certainty` number, nullable
  - `waiting` AssetDerivativeOut
    - `id` string, uuid, required
    - `asset_id` string, uuid, required
    - `kind` string, required
    - `processor` string, required
    - `processor_version` string, required
    - `model` string, nullable, required
    - `width` integer, required
    - `height` integer, required
    - `byte_size` integer, required
    - `quality` object, required
    - `review_status` string, required
    - `review_note` string, nullable, required
    - `reviewed_at` string, date-time, nullable, required
    - `created_at` string, date-time, required
  - `created_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zalster/apis/zalster-feed-processor.md) - [All operations](https://skmtc.dev/zalster/apis/zalster-feed-processor/llms.txt) - [OpenAPI document](https://skmtc.dev/zalster/apis/zalster-feed-processor/revisions/d0b9dc66ad36?raw)
