---
title: "Service: /uris/{uri}/fragments/{+fragment}/comments [POST]"
source: https://dev.pageseeder.com/api/services/create-comment-uri-fragment-public-POST.html
description: "Creates a new comment on a URI fragment with support for metadata, labels, and task assignment. Requires author name, content, groups, and title parameters."
last_updated: 2026-09-02T11:36:07+10:00
document_type: api_endpoint
operation_id: comment-POST
resource_id: comment
path_template: /uris/{uri}/fragments/{+fragment}/comments
http_method: POST
api_category: comment
implementation_version: 6.3000
api_since: 5.1102
deprecated_since: null
obsolete_since: null
api_support: supported
cache_control: N/A
generated_at: 2026-09-02
tokens: ~997
---

# /uris/\{uri\}/fragments/\{+fragment\}/comments \[POST\]

## Description

Create a new [comment](../../reference/glossary/comment.md) for [URI](../../reference/glossary/uri.md) fragment.

### Metadata

Comments support two types of metadata:

- properties, a set of values pairs
- labels.

### Task details

This service can be used to either turn a thread into a [task](../../reference/glossary/task.md) or to edit the task details of a task.

Task details are automatically inherited from the previous comment in the thread.

## Parameters

| Name | Description | Required | Type | Default |
| --- | --- | --- | --- | --- |
| authorname | The name of the author | yes | string |  |
| content | The content of the comment. XHTML content is [sanitized](../../reference/glossary/xhtml_sanitization.md). | yes | string |  |
| groups | A comma-separated list of group names the comment should belong to | yes | strings |  |
| title | The title of the comment | yes | string |  |
| assignedto | The `ID` of the member to assign the task to – status **MUST** be set | no | long |  |
| authoremail | The email address of the author | no | email |  |
| contenttype | The media type of the comment | no | mediatype | `text/plain` |
| due | The task due date and time in ISO-8601 format – status **MUST** be set. e.g. `2010-10-25T18:00:00+11:00` | no | datetime |  |
| fragment | The fragment | no | string |  |
| labels | A comma-separated list of label values | no | labels |  |
| notify | The notification behavior | no | notify | `normal`  |
| notify-async | Whether emails should be sent asynchronously (for slow email servers) | no | boolean | `false` |
| priority | The priority for the task e.g. `High`, `Medium`, `Low` – status **MUST** be set | no | priority |  |
| properties | A pipe-separated list of value pairs (e.g. `x=1\|y=2\|`) | no | string |  |
| status | The [task status](../../reference/glossary/task_status.md) value, e.g. `Open`. | no | status |  |
| type | The type of the comment | no | string |  |
| uris | Comma-separated list of attachments as URI ID with optional `!fragment` | no | longs |  |
| urls | Comma-separated list of attachments as URL with optional `#fragment` | no | urls |  |

## Permission

The member on the request might need to be a reviewer or contributor or higher depending on the group configuration for all the groups in the groups parameter.

## Response

```xml

<comment-creation [notification-email-delayed="true"|
                   notification-email-failed="true"|
                   moderator-email-failed="true"]
                  [notify-param-ignored="true"]
                  [public="true"]>
  <comment id="123"
           contentrole="Comment"
           created="2012-03-08T12:34:00+10:00"
           [status="Open"]
           [due="2012-03-10T18:00:00+10:00"]
           [priority="High"]
           [moderated="true"]>
    <title>Cavern stolen!</title>
    <author email="alibaba@fortythieves.com.au"> ...
    </author>
    <assignedto id="123"
                date="2012-03-09T..."> ... </assignedto>
    <modifiedby id="456"
                date="2012-03-09T..."> ... </modifiedby>
    <content id="789"
             type="text/plain">Sesame opened the door
    </content>
    <attachment>
      <uri id="189">...</uri>
    </attachment>
    <attachment fragment="5">
      <uri id="289">...</uri>
    </attachment>
  </comment>
</comment-creation> 
```

## Error Handling

| Code | Cause / Description |
| --- | --- |
| 0x1002 | Invalid email address |
| 0x1301 | If the author is missing |
| 0x1302 | If the author is existing and was specified using authorname or authoremail |
| 0x1303 | Both URI and URL have been specified |
| 0x1304 | The URL is invalid |
| 0x1305 | The URL does not match a GroupURI |
| 0x1306 | The Group is invalid |
| 0x1307 | The assigned to member is invalid |
| 0x1308 | The due date is invalid |
| 0x6301 | If the group has no general discussion |
| 0x6302 | Failed to create new comment |

