---
title: "Service: /comments/filter [GET] (obsolete)"
source: https://dev.pageseeder.com/reference/version_5/services/list-filter-comments-public-GET.html
description: "Load public comments by filter"
last_updated: 2026-08-07T17:09:54+10:00
tokens: ~825
---

# /comments/filter \[GET\]

| Property | Value |
| --- | --- |
| Path: | /comments/filter |
| Method: | GET |
| Generator: | obsolete |
| Version: |  |
| Since: |  |
| Deprecated: | 5.7900 |
| Obsolete: | 6.0000 |
| Cache control: |  |
| API Support: | OBSOLETE |
| Generated: | 2022-07-01 |

## Description

Load public comments by filter.

> **Deprecated:** This service is now deprecated, use [service /comments/find \[GET\]](../../../api/services/find-comments-public-GET.md) instead.

## Parameters

| Name | Description | Required | Type | Default |
| --- | --- | --- | --- | --- |
| groups | A comma-separated list of group names the comments must belong to | yes | strings |  |
| archived | if `true` include archived comments | no | boolean | `false` |
| attachments | The attachments to include (can be `none`, `context` or `all`) | no | enum | `all` |
| author | The member id of the comments author | no | long |  |
| contents | The contents to include (can be `none` or `all`) | no | enum | `all` |
| createdafter | The date time after which the comments were created e.g. 2010-10-25T12:26:00+10:00 | no | datetime |  |
| createdbefore | The date time before which the comments were created e.g. 2011-08-25T10:20:00-04:00 | no | datetime |  |
| labels | comma-separated list of labels | no | string |  |
| moderated | if `true` include moderated (not accepted) comments | no | boolean | `false` |
| page | The page to load | no | long | `1` |
| pagesize | The number of results per page | no  | long | `1000` |
| paths | The context URI paths for the comments - must be URL encoded (comma-separated list with optional \* suffix) | no | paths |  |
| position | if `first` only search first comment in a discussion (might be faster when using paths) | no | string | `any` |
| returngroups | The groups to return in the output (can be `none`, or `specified`) | no | enum | `none` or if multiple groups `specified` |
| statuses | comma-separated list of statuses | no | string |  |
| title | The title the comments must have (optional wildcard `*` suffix, use `**` to escape) | no | string |  |
| type | The type the comments must have (optional wildcard `*` suffix, use `**` to escape) | no | string |  |

## Permission

If the parameter `emails` is set to `all`, the permission is restricted to administrator only. Otherwise, the permission is public.

The other restriction is that the `groups` parameter can only list groups that have public access.

## Response

The output has the following format:

```xml

<comments>
  <comment id="234"
           contentrole="File Attachment"
           created="2012-03-08T12:34:00+10:00">
    <title>My thread</title>
    <content type="text/plain">Some text</content>
    <attachment>
      <uri id="189">...</uri>
    </attachment>
    <attachment fragment="5">
      <uri id="289">...</uri>
    </attachment>
    <context>
      <group id="3" name="acme-test" />
    </context>
  </comment>

  <comment   id="567">
    ...
    <context fragment="2">
      <uri id="789">...</uri>
    </context>
  </comment>
</comments>
```

## Error Handling

| Code | Cause / Description |
| --- | --- |
| 0x1306 | The Group is invalid or not accessible |
| 0x1312 | The createdafter or createdbefore date is invalid |
| 0x1313 | The author is invalid |

 

