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

# Confessions

> Members post confessions without their name, from a command or a button, and can reply anonymously; your staff can check each one first.

## Overview

Members write a confession and Petto posts it without their name. You choose how it looks (title, color, a saved design), who it looks like it comes from (a name and picture through a webhook), and whether the staff checks each one first. Anyone can **reply anonymously** in a thread under a confession.

* The confession goes out as a card in the color you picked (green by default) with its ID under it. It shows the name `Anonymous` and a picture: the one you chose, else the picture Petto has in your server, else the usual one of Petto.
* The panel with the **Confess** button always stays at the bottom: after each confession it is sent again under it.
* A button under it opens a form to reply. The replies go in a thread and are anonymous too.
* If the staff checks first, the confession waits in a review channel with **Approve** and **Reject** buttons.
* Petto keeps who confessed only for the staff, so they can see who it was or block them. You can turn that off: then nothing is kept.

![Anonymous confession number 48 with its ID and the Reply anonymously button, followed by Petto's panel with the Confess button](https://mintcdn.com/wikipetto/LoL7QuPJ71yd9F_N/images/discord/community/confessions.webp?fit=max\&auto=format\&n=LoL7QuPJ71yd9F_N\&q=85\&s=54870a0f6c15565524c4b1fc70fda18b)

In Discord: a confession as the channel shows it, with the panel sent again under it.

> [accordion] 1. The Confess button opens the form
>
> ![The form Your confession with the text of the confession and an optional link to a picture](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-form.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=064cbf6c7ae21e305b85322fc397e952)
>
> In Discord: the form of the Confess button.

> [accordion] 2. The answer only the member sees
>
> ![Petto answers only to the member: the confession was sent to the staff and shows up when they approve it](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-form-sent.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=5ed68f7c0d96f14df0223ff21dae576f)
>
> In Discord: with the staff checking first, the member is told it went to the staff.

> [accordion] 3. The review queue
>
> ![In #confession-review, Confessions review posts confession 52, waiting for the staff, with its ID and the Approve and Reject buttons](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-review.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=dd47b45da1469e56712de0fae24886bc)
>
> In Discord: the confession waits in the review channel with Approve and Reject.

> [accordion] 4. Approved
>
> ![The review card of confession 52 now says Approved by kira, without buttons](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-review-approved.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=aadd541af0d2d968e25f2b1284fe4a06)
>
> In Discord: the card after Approve; the confession goes out in the channel.

> [accordion] 5. Rejected
>
> ![The review card of confession 51, in red, says Rejected by kira](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-review-rejected.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=e247d435958d7b342abf8026b6ce888c)
>
> In Discord: the card after Reject; nothing is posted.

> [accordion] 6. Reply anonymously
>
> ![The form Your anonymous reply with the text of the reply](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-reply-form.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=c9efa276b4a3007ba89c5c85445e660e)
>
> In Discord: the form of the Reply anonymously button.

> [accordion] 7. The reply in the thread
>
> ![The thread Confession #48: the confession of Anonymous and, under it, an Anonymous reply](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-reply-thread.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=35c25cdc4d81c9dab1a5ada92f3e44b5)
>
> In Discord: the anonymous reply in the thread of the confession.

## Commands

```javascript Syntax theme={null}
!confess <text>
!confession setup <channel>
!confession panel [channel]
!confession config
!confession set <setting> <value>
!confession approve <id>
!confession reject <id>
!confession reveal <id>
!confession delete <id>
!confession list [status]
!confession block <user or id>
!confession unblock <user>
!confession disable
!confession enable
```

```javascript Example theme={null}
!confession setup #confessions
!confession panel
!confession set review on
!confession set review_channel #staff-review
!confession set webhook_name Someone
```

> [accordion] !confess
>
> ![A DM from Petto: your confession was sent to the staff, it shows up when they approve it](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-confess.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=cd6e5f22238c41835cc8b3c31a317e8b)
>
> In Discord: with !confess the message of the member is deleted and the answer comes in a DM.

> [accordion] !confession setup
>
> ![liam types !confession setup #confessions and Petto answers that confessions are on, with confess or the panel](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-setup.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=81465ad60e0e062227ecbb20912eca5b)
>
> In Discord: confessions turned on in #confessions.

> [accordion] !confession panel
>
> ![liam types !confession panel and Petto answers that the panel is in #confessions, at the bottom, and goes back down after each confession](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-panel.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=f961f2f868baf8f2c9a13c5c5acef88d)
>
> In Discord: the panel goes to the bottom of the channel.

> [accordion] !confession config
>
> ![liam types !confession config and Petto lists the channel, the review in #confession-review, the log, the ways to confess, the webhook as Anonymous, the wait, the staff role and the design](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-config.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=a0515a0dacd5573c7ff38e8eae49b403)
>
> In Discord: how confessions are set up.

> [accordion] !confession set review
>
> ![liam types !confession set review on and Petto confirms that the staff checks each confession before it shows](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-set-review.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=30b7f81e6fbd6513cf7583919c624d63)
>
> In Discord: the staff checks each confession first.

> [accordion] !confession set review\_channel
>
> ![liam types !confession set review\_channel #confession-review and Petto confirms the channel where the staff checks confessions, written as its ID](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-set-review-channel.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=33ec593f0039f1d76671c4faf116260b)
>
> In Discord: the channel of the review (Petto answers with its ID).

> [accordion] !confession set webhook\_name
>
> ![liam types !confession set webhook\_name and Petto confirms the name it shows](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-set-webhook-name.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=9883d4c8f99a453dc7998f7e61291d62)
>
> In Discord: the name the confessions show.

> [accordion] !confession approve
>
> ![kira types !confession approve q9cbe-u4m1z and Petto answers that it was approved and posted](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-approve.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=ffa2fe13cd48ffdb5f989f37fc1b3b97)
>
> In Discord: a waiting confession approved and posted.

> [accordion] !confession reject
>
> ![kira types !confession reject q9cbe-u4m1z and Petto answers that it was rejected](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-reject.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=13b4290a0896da67c0a1e50726e50db8)
>
> In Discord: a waiting confession rejected.

> [accordion] !confession reveal
>
> ![liam types !confession reveal k7m2x-p9qra and Petto shows confession 48, by @ivy with the user ID, and its text](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-reveal.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=94fcfd0a9cd3a162a13fa7d18c2ae38c)
>
> In Discord: who made a confession, only for Manage Server.

> [accordion] !confession delete
>
> ![liam types !confession delete p5ykr-2tq6n and Petto answers that it deleted the confession](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-delete.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=65c9d191027f03aa8acc034bacf95de4)
>
> In Discord: a confession deleted with its message.

> [accordion] !confession list
>
> ![kira types !confession list and Petto lists confessions 51 to 48: pending, rejected and posted, with their ID and text](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-list.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=6142bfb5917d9989d001272e7e34335f)
>
> In Discord: the latest confessions with their status.

> [accordion] !confession block
>
> ![liam types !confession block p5ykr-2tq6n and Petto answers that the author of that confession cannot confess now](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-block.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=108ceba6f5cca1ed46b39ec08ec311d8)
>
> In Discord: the author of a confession blocked by its ID, without seeing who it was.

> [accordion] !confession unblock
>
> ![liam types !confession unblock @maxwell and Petto answers that maxwell can confess again](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-unblock.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=0e712695335ea276a1a42cfd9d82d912)
>
> In Discord: the member can confess again.

> [accordion] !confession disable
>
> ![liam types !confession disable and Petto answers that confessions are off](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-disable.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=b73b2a66eb0b6f7723c27ef4df474f4e)
>
> In Discord: confessions turned off.

> [accordion] !confession enable
>
> ![liam types !confession enable and Petto answers that confessions are on](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-enable.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=4fa099e25a12c1831fad0550301dc95f)
>
> In Discord: confessions turned on again.

Members confess with `confess` (a picture can be attached) or with the **Confess** button of the panel, which opens a form. The answer is only for them, so nobody sees who used it: from the button it is a message only they can see, and with `!confess` Petto deletes their message and sends the answer in a DM.

## Who can do what

| Action | Who |
| - | - |
| Confess and reply | Everyone (unless blocked) |
| `approve`, `reject`, `list` | The staff role, or who has **Manage Server** |
| `setup`, `set`, `config`, `panel`, `enable`, `disable`, `reveal`, `delete`, `block`, `unblock` | Who has **Manage Server** |

## Settings

Change them with `!confession set <setting> <value>` or in the dashboard (**Confessions**).

![The Confessions page of Petto Land with 48 posted, 3 waiting and 5 rejected, and the settings](https://mintcdn.com/wikipetto/PiFwt6dDUZHBNDT7/images/dashboard/community/confessions.webp?fit=max\&auto=format\&n=PiFwt6dDUZHBNDT7\&q=85\&s=62d70feef87cfa624f3eb3edd0d548ea)

Dashboard → Community → Confessions: the counts and every setting of the module.

![The switches: the staff checks each confession first, send it with its own name and picture, anonymous replies, confessions can have a picture, the confess command works, and keep who confessed, all on](https://mintcdn.com/wikipetto/X8GdsHqKNBomKSYc/images/dashboard/community/confessions-dash-switches.webp?fit=max\&auto=format\&n=X8GdsHqKNBomKSYc\&q=85\&s=d34bc544cd1345383363a6a876dc831e)

Dashboard → Community → Confessions: the switches of the module.

| Setting | What it does |
| - | - |
| `review` | The staff checks each confession before it shows |
| `review_channel` | The channel where the staff approves or rejects |
| `log_channel` | A channel where what the staff does (approve, reject, look at who made one, block, delete) is written |
| `staff_role` | A role that can approve and reject |
| `command` | The `confess` command works (off leaves only the panel) |
| `images` | A confession can have a picture |
| `replies` | Anonymous replies in a thread |
| `keep_author` | Keep who confessed, only for the staff |
| `webhook` | Send through a webhook with its own name and picture |
| `webhook_name`, `webhook_avatar` | The name and the picture (a link) it shows |
| `title`, `footer` | The title and the small text under each confession |
| `color` | The color of the card, as a hex like `a5ea7a` |
| `button`, `reply_button`, `panel_text` | The texts of the buttons and of the panel |
| `cooldown` | Seconds to wait between confessions (60 by default, 0 for none) |
| `design` | A design saved in **Embeds** to use instead of the usual card |

![In #mod-log, Confessions log writes that kira approved confession q9cbe-u4m1z and that liam looked at who made confession k7m2x-p9qra](https://mintcdn.com/wikipetto/rok-7yv8v3ZrWquM/images/discord/community/confessions-log.webp?fit=max\&auto=format\&n=rok-7yv8v3ZrWquM\&q=85\&s=5d0aa416534662ad1155631b118bbc14)

In Discord: what the log channel gets when the staff approves a confession or looks at who made one.

## Your own design

Pick a design of the Embeds page and the confession uses it. Inside it you can write:

| Variable | Gives |
| - | - |
| `{confession.id}` | The ID, like `si2tr-foytm` |
| `{confession.number}` | The number in this server |
| `{confession.content}` | The text |
| `{confession.image}` | The picture, empty if none |
| `{confession.link}` | The link to the message |
| `{confession.channel}` | The channel |
| `{confession.created}`, `{confession.created_time}` | When it was made |

The server variables like `{server_name}` work too. Examples for each one are in [Variables](https://wiki.petto.sbs/resources/scripting/variables.md#confessions).

> [!NOTE]
>
> Petto needs **Manage Webhooks** in the channel to send with its own name and picture. Without it, the confession goes as the bot and still works.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.