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

# Guest commenting

> Name and email posting without an account. MIT feature; Pro adds stricter spam and API/SDK parity.

Guest commenting is **not** Pro-only. It shipped in free Commentify 4.0. Pro adds the spam net, API/SDK fields, and `guests.stricter_spam`.

```php theme={null}
'core' => [
    'allow_guests' => true,
    'guest' => [
        'require_email' => true,
        'show_gravatar' => true,
    ],
],
```

When enabled:

* The composer shows name and email for logged-out visitors (Livewire Tailwind/Bootstrap, React, Vue)
* Email is required unless `guest.require_email` is `false`
* Avatars use Gravatar when an email is present
* Rows store `guest_name`, `guest_email`, `ip`, and `user_agent`
* Guests **cannot** edit or delete
* Pair with `require_approval` to hold guest posts before they appear

Logged-in users keep edit, delete, mentions, and bans.

## API

`api.guest_comments` (default true) allows JSON creates without a session when `allow_guests` is on. Set it false to keep guests on Livewire only.

```json theme={null}
{
  "body": "Used chives instead of scallions.",
  "guest_name": "Alex Kim",
  "guest_email": "alex@example.com"
}
```

`GET ui` → `features.guests` and `guest.require_email` so the SDKs show the same fields.

Likes and reports from logged-out visitors are separate flags: `api.guest_likes`, `api.guest_reports` (IP + user agent).

## Stricter spam

```php theme={null}
'guests' => [
    'stricter_spam' => true,
],
```

Heuristic then denies missing emails, holds any guest comment that contains a link, and matches duplicates on guest email + IP. Details: [Spam pipeline](/spam).

## Blade helpers

Do not assume `$comment->user` exists:

```php theme={null}
$comment->isGuest();
$comment->authorName();
$comment->authorEmail();
$comment->authorAvatar();
```

The API maps guests to `user: { id: null, name, avatar }`.

## Imports

Disqus and WordPress importers **require** `allow_guests` because imported authors become guest comments. See [Import](/import).
