---
title: "List comments on an asset"
method: GET
path: "/assets/{asset_id}/comments"
tags: ["Assets"]
---

# List comments on an asset

`GET /assets/{asset_id}/comments`

## Request

- Base URL: `https://enterprise.knak.io/api/published/v1`
- URL: `https://enterprise.knak.io/api/published/v1/assets/{asset_id}/comments`
- Auth: none declared
- TypeScript: <https://skmtc.dev/knak/apis/knak-enterprise-api/docs/assets/:asset_id/comments/get.ts> (a function with typed inputs; its response is checked against the schema)

List the comment threads on an asset, each with its replies. Only top-level comments are paginated; every reply to a returned comment is included in its `replies`.

Available to any user in the asset's company who can access the asset's brand.

## Path parameters

- `asset_id` string, required

## Query parameters

- `page[number]` integer
- `page[size]` integer
- `sort[]` string[]
- `filter[resolved]` 'true' | 'false'
- `filter[created_at][operator]` 'gt'
- `filter[created_at][value]` string, date-time

## Response `200`

OK

- CommentList
  - `meta` object
    - `total` integer
    - `current_page` integer
    - `last_page` integer
    - `per_page` integer
    - `from` integer, nullable
    - `to` integer, nullable
  - `data` Comment[]
    - `id` string, required
    - `asset_id` string, required
    - `parent_id` string, nullable, required: ID of the comment this one replies to. Null for a top-level comment.
    - `resolved` boolean, required
    - `text` string, required: The comment as plain text, with mentions rendered as `@Name`.
    - `mentions` object[], required
      - `user_id` string
      - `name` string
    - `author` object, nullable, required: Null when the comment came from outside Knak, for example a Slack reply.
      - `id` string
      - `name` string
    - `is_external` boolean, required: Whether the comment came from outside Knak, for example a Slack reply.
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `replies` Comment[], required: Replies to this comment, oldest first. Replies have no replies of their own.

## Other responses

- `400`: Bad Request - a page, sort or filter parameter is invalid.
- `401`: Unauthenticated
- `403`: Forbidden
- `404`: Not Found - the asset does not exist or is outside your brands.
- `default`: Unexpected server error.

---

[API](https://skmtc.dev/knak/apis/knak-enterprise-api.md) - [All operations](https://skmtc.dev/knak/apis/knak-enterprise-api/llms.txt) - [OpenAPI document](https://skmtc.dev/knak/apis/knak-enterprise-api/revisions/31d2c94edfcc?raw)
