---
title: "List version comments"
method: GET
path: "/v1/spaces/{spaceId}/versions/{versionId}/comments"
tags: ["Versions"]
---

# List version comments

`GET /v1/spaces/{spaceId}/versions/{versionId}/comments`

## Request

- Base URL: `https://api.spacefast.com`
- URL: `https://api.spacefast.com/v1/spaces/{spaceId}/versions/{versionId}/comments`
- Auth: HTTP bearer

Returns comment threads for a specific version and an optional page path.

## Path parameters

- `spaceId` string, required
- `versionId` string, required

## Query parameters

- `limit` integer: Page size.
- `cursor` string: Opaque cursor from the previous page's `nextCursor`.
- `status` 'open' | 'archived': Return only threads in this lifecycle state: `open`, or `archived` for resolved.
- `filter` 'open' | 'archived' | 'spam': Named view. `open` and `archived` (resolved) select a lifecycle state and win over `status`; `spam` lists the moderation-held threads, which requires comment-moderator access.
- `pagePath` string: Return only threads anchored to this page path, for example `/pricing`.
- `q` string: Free-text search across thread and comment bodies.
- `author` string: Return only threads started by this author name.
- `unread` string: Return only threads that are unread for the caller. Resolved threads are never unread.

## Response `200`

Response for status 200

- object
  - `$schema` string, uri: Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.
  - `data` object[], required
    - `id` string, required
    - `castThreadId` string, required
    - `spaceId` string, required
    - `versionId` string, nullable, required
    - `channel` string, nullable, required
    - `pagePath` string, required
    - `url` string, nullable, required
    - `status` 'open' | 'archived', required: `open`, or `archived` for a resolved thread.
    - `moderationState` 'clear' | 'spam', required
    - `heldCommentIds` string[], required
    - `unread` boolean, required: Whether an open thread has a message by someone else since you last read it. Resolved threads are never unread.
    - `unreadCount` integer, required: Messages by others since you last read the thread. Zero exactly when `unread` is false.
    - `body` string, nullable, required
    - `author` object, nullable, required
      - `kind` string, nullable, required
      - `id` string, nullable, required
      - `profileId` string, nullable, required
      - `name` string, nullable, required
      - `username` string, nullable, required
      - `avatarUrl` string, uri, nullable, required
      - `color` string, nullable, required
    - `target` object, required
    - `mentions` string[], required: Spacefast user ids this thread or reply @mentions.
    - `reactions` object, required
    - `attachmentOrigin` string, uri, nullable, required
    - `attachments` object[], required
      - `id` string, required
      - `name` string, required
      - `contentType` string, required
      - `size` integer, required
      - `kind` 'screenshot' | 'image' | 'file', required
      - `crop` object
        - `x` number, required
        - `y` number, required
        - `width` number, required
        - `height` number, required
      - `url` string, nullable, required
    - `comments` object[], required
      - `attachments` object[], required
        - `id` string, required
        - `name` string, required
        - `contentType` string, required
        - `size` integer, required
        - `kind` 'screenshot' | 'image' | 'file', required
        - `crop` object
          - `x` number, required
          - `y` number, required
          - `width` number, required
          - `height` number, required
        - `url` string, nullable, required
      - `mentions` string[], required: Spacefast user ids this thread or reply @mentions.
    - `permalink` string, nullable, required
    - `dashboardUrl` string, uri, nullable, required: The thread in the dashboard, opened with the reader's own sign-in. Null without a team.
    - `createdAt` string, date-time, required: When the thread started. Never changes.
    - `lastActivityAt` string, date-time, required: When the latest message was posted. Resolving, reopening and reactions don't move it.
    - `updatedAt` string, date-time, nullable, required: When anything on the thread last changed. Lists are ordered by it.
  - `pagination` object, required
    - `nextCursor` string, nullable, required: Opaque cursor for the next page; null when there are no more results.
    - `hasMore` boolean, required: Whether another page exists after this one.

## Other responses

- `default`: Problem details (RFC 9457). Any 4xx/5xx response is one `application/problem+json` document.

---

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