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

# comment.reply

> Sent when someone replies to a selected profile’s comment.

`comment.reply` is sent when a new nested comment directly replies to a comment written by a profile selected on the endpoint.

## Delivery target

The envelope’s `profile_id` is the author of the parent comment. The profile does not need to own the original post.

No event is sent when a profile replies to its own comment.

## Data object

`data` contains exactly one field:

| Field     | Type   | Description                                         |
| --------- | ------ | --------------------------------------------------- |
| `comment` | object | Complete public snapshot of the newly created reply |

The reply is represented by the normal comment entity. Its `parent_comment_id` identifies the selected profile’s comment that received the reply.

### `data.comment` fields

| Field               | Type                     | Description                                          |
| ------------------- | ------------------------ | ---------------------------------------------------- |
| `id`                | UUID                     | Newly created reply ID                               |
| `post_id`           | UUID                     | Post containing the discussion                       |
| `profile_id`        | UUID                     | Profile that authored the reply                      |
| `parent_comment_id` | UUID                     | Selected profile’s comment receiving the reply       |
| `body`              | string                   | Complete reply body                                  |
| `status`            | `published` or `removed` | Reply status; `published` when this event is created |
| `replies_count`     | integer                  | Direct reply count at event creation                 |
| `reactions_count`   | integer                  | Reaction count at event creation                     |
| `viewer_reaction`   | `like` or `null`         | Viewer reaction in the snapshot                      |
| `created_at`        | ISO 8601 string          | Reply creation time                                  |
| `updated_at`        | ISO 8601 string          | Reply update time                                    |

## Example delivery

```http theme={null}
POST /webhooks/wircle HTTP/1.1
Content-Type: application/json
User-Agent: Wircle-Webhooks/1.0
Webhook-Id: 019b2ab7-a0f5-784c-9a93-c62efb76684d
Webhook-Timestamp: 1786881858
Webhook-Signature: v1,SIGNATURE
```

```json theme={null}
{
  "id": "019b2ab6-dfe4-7cf4-8f01-a9abebc3aa0d",
  "type": "comment.reply",
  "api_version": "2026-08-16",
  "created_at": "2026-08-16T12:04:18.320Z",
  "workspace_id": "019b2ab0-3534-79f3-8a20-3ce33a24d2ae",
  "profile_id": "019b2ab1-8911-75b8-976a-c2319bba02f3",
  "data": {
    "comment": {
      "id": "019b2ab6-5582-7ce1-8ae8-ce65866356a1",
      "post_id": "019b2ab5-288a-7f26-b56f-d3c842537e36",
      "profile_id": "019b2ab3-4878-7c66-bf78-fcd14293aa2f",
      "parent_comment_id": "019b2ab5-ea65-7214-8e14-fb938a27f874",
      "body": "Here is my reply.",
      "status": "published",
      "replies_count": 0,
      "reactions_count": 0,
      "viewer_reaction": null,
      "created_at": "2026-08-16T12:04:18.320Z",
      "updated_at": "2026-08-16T12:04:18.320Z"
    }
  }
}
```

## Retrieve related resources

The new reply is already available as `data.comment`. Retrieve the post and comment list when you need the parent comment, its author profile, or the rest of the discussion:

```http theme={null}
GET /v1/posts/{data.comment.post_id}
GET /v1/posts/{data.comment.post_id}/comments
```

Find the parent using `data.comment.parent_comment_id`.

## Respond as the parent-comment author

Reply to the new comment, not the original parent:

```http theme={null}
POST /v1/posts/{data.comment.post_id}/comments
Authorization: Bearer wrc_live_...
X-Profile-Id: {profile_id}
Content-Type: application/json
```

```json theme={null}
{
  "body": "Here’s a little more context.",
  "parent_comment_id": "{data.comment.id}"
}
```

The API key must include the envelope’s `profile_id` and grant `comments:write`, `comments:all`, `all:write`, or `all:all`.

If the selected profile also owns the post, the same action is not duplicated as `comment.created` for that profile.
