> ## Documentation Index
> Fetch the complete documentation index at: https://docs.postsyncer.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List comments

> Paginated comments for a post, with optional nested replies and filters

## List comments

### Request

<ParamField query="post_id" type="integer" required>
  Post id (must belong to a workspace you can access).
</ParamField>

<ParamField query="per_page" type="integer" default="20">
  Page size (max 100).
</ParamField>

<ParamField query="page" type="integer" default="1">
  Page number.
</ParamField>

<ParamField query="source" type="string" default="SOCIAL">
  Comment source: e.g. `SOCIAL`, `INTERNAL` (includes internal, approval, public-share).
</ParamField>

<ParamField query="provider" type="string">
  Filter by platform key (e.g. `twitter`).
</ParamField>

<ParamField query="is_resolved" type="string">
  `true` or `false`.
</ParamField>

<ParamField query="is_approved" type="string">
  `true` or `false`.
</ParamField>

<ParamField query="include_replies" type="string" default="true">
  `true` to nest replies (top-level comments only in the root list).
</ParamField>

<RequestExample>
  ```bash theme={null}
  curl -G "https://postsyncer.com/api/v1/comments" \
    --data-urlencode "post_id=123" \
    --data-urlencode "per_page=20" \
    --data-urlencode "include_replies=true" \
    -H "Authorization: Bearer YOUR_API_TOKEN"
  ```
</RequestExample>

### Response

`data`: array of comment objects (same shape as [get comment](/api-reference/comments/get)).\
`pagination`: `current_page`, `last_page`, `per_page`, `total`, `has_more_pages`.

### Errors

`401` · `403` · `404` (invalid `post_id` or no access)

See [Comments overview](/api-reference/comments/overview).
