> ## 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.

# Suggestions

> Members post ideas in a suggestions channel, everyone votes once with two buttons, and your staff approves, denies or considers each one with a reason.

## Overview

Members send ideas to a channel. Each idea is a message with two vote buttons, and **each person has one vote**: pressing the other button switches it, pressing the same one takes it back. The staff answers each suggestion (approve, deny, consider or mark as implemented), with a reason that is shown in the message.

![Suggestion si2tr-foytm by Nova for a music channel, with 18 votes in favor and 2 against, approved by kira with the reason, and the two vote buttons](https://mintcdn.com/wikipetto/LoL7QuPJ71yd9F_N/images/discord/community/suggestions.webp?fit=max\&auto=format\&n=LoL7QuPJ71yd9F_N\&q=85\&s=2aeb70096c9e9498926d1bd560e7eeb0)

In Discord: a suggestion the staff approved, with the votes and the reason.

You can answer in two ways: with the command and the ID of the suggestion (it is written under each one, like `si2tr-foytm`), or in the dashboard, in **Suggestions**, with a **Who voted** button (the names in favor and against) and the buttons **Approve**, **Deny**, **Consider**, **Implemented** and **Reopen** under each suggestion and a field for the reason.

Each suggestion has an ID like `si2tr-foytm` and a number in the server (`#12`).

## How members suggest

There are three ways, and each one can be turned on or off:

* The command: `!suggest <text>` (short name `!sug`). A picture can be attached to the message.
* Writing in the suggestions channel: Petto turns the message into a suggestion and removes the original.
* A button: `!suggestion panel` posts a message with a button that opens a form.

A member can make 5 suggestions an hour, each of up to 1,800 characters.

> [accordion] !suggest
>
> ![mochi types !suggest with an idea in #suggestions; Petto posts suggestion h4vzr-8kq2m with the submitter, 0 votes and the two vote buttons, and answers that the suggestion was posted](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-suggest.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=0c7832483bfd15881d98fb6f82fe55a5)
>
> In Discord: a member suggests with the command: the suggestion with its vote buttons, and the answer with its link.

> [accordion] Writing in the channel
>
> ![Petto posts the message of Sora as suggestion q2ntd-5wjxe, with Sora as submitter, 0 votes and the vote buttons](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-listen.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=021e67437021be694b746e3523229e87)
>
> In Discord: a message written in the channel, already turned into a suggestion (the original is removed).

> [accordion] The panel
>
> ![Petto panel in #suggest-here: Have an idea for Petto Land? Press the button, write it and the server votes on it in #suggestions, with the Make a suggestion button](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-panel.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=81ff47743842da63a8d8427a6f2837f7)
>
> In Discord: the panel of !suggestion panel, with its button.

> [accordion] The form of the panel
>
> ![The form Your suggestion with the suggestion typed and an optional link to a picture](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-panel-form.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=cd78eae990822973c45cd34385ba4c5f)
>
> In Discord: the form the button opens.

## For administrators

```javascript Syntax theme={null}
!suggestion setup <channel>
!suggestion set <setting> <value>
!suggestion config
!suggestion panel [channel]
!suggestion enable
!suggestion disable
```

```javascript Example theme={null}
!suggestion setup #suggestions
!suggestion set listen on
!suggestion set up_emoji 👍
!suggestion panel #suggest-here
```

> [accordion] !suggestion setup
>
> ![liam types !suggestion setup #suggestions and Petto answers that suggestions are on, made with suggest or by writing in the channel](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-setup.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=4ae883329e79349b19bfe6fc3a2224cc)
>
> In Discord: suggestions turned on in #suggestions.

> [accordion] !suggestion set listen
>
> ![liam types !suggestion set listen on and Petto confirms: every message in the channel is a suggestion, on](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-set-listen.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=e1df01024552d8c2f05ccdab58fba6ce)
>
> In Discord: every message of the channel becomes a suggestion.

> [accordion] !suggestion set up\_emoji
>
> ![liam types !suggestion set up\_emoji 👍 and Petto confirms the emoji of the vote in favor](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-set-up-emoji.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=163dc40215023880da4273d80f7f94ad)
>
> In Discord: a new emoji for the vote in favor.

> [accordion] !suggestion panel
>
> ![liam types !suggestion panel #suggest-here and Petto answers that the panel is in #suggest-here](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-panel-command.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=9d1604d3eaa1e7b223061e9fffd7906a)
>
> In Discord: the panel is posted in another channel.

> [accordion] !suggestion config
>
> ![liam types !suggestion config and Petto lists the channel, the votes, the ways to suggest, the thread, the DM, the staff role and the design, and how to answer](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-config.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=5515bea1b3de39c43eecc909e34091da)
>
> In Discord: how suggestions are set up, and how to answer them.

> [accordion] !suggestion enable
>
> ![liam types !suggestion enable and Petto answers that suggestions are on](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-enable.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=4666549678d26dbf8b3a9e024ef81b37)
>
> In Discord: suggestions are turned on again.

> [accordion] !suggestion disable
>
> ![liam types !suggestion disable and Petto answers that suggestions are off](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-disable.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=124b013f24012f984a269bc0bdbb11e8)
>
> In Discord: suggestions are turned off.

Settings: `listen`, `command`, `thread`, `self_vote`, `dm`, `anonymous`, `colors`, `up_emoji`, `down_emoji`, `thread_name`, `staff_role` and `design`. Everything can also be changed in the dashboard (**Suggestions**), where you can also pick the color of each status or turn the colors off.

## For the staff

Members with **Manage Server**, or the staff role you pick, can answer:

```javascript Syntax theme={null}
!suggestion votes <id>
!suggestion approve <id> [reason]
!suggestion deny <id> [reason]
!suggestion consider <id> [reason]
!suggestion implement <id> [reason]
!suggestion reopen <id>
!suggestion delete <id>
!suggestion view <id>
!suggestion list [status]
!suggestion block <user>
!suggestion unblock <user>
```

```javascript Example theme={null}
!suggestion approve si2tr-foytm Great idea, coming this week
!suggestion block @Someone
```

> [accordion] !suggestion votes
>
> ![kira types !suggestion votes si2tr-foytm and Petto lists 18 members in favor and 2 against](https://mintcdn.com/wikipetto/CORizuwbsI_31aRL/images/discord/community/suggestions-votes.webp?fit=max\&auto=format\&n=CORizuwbsI_31aRL\&q=85\&s=f1aaf5bb4b402d24e16b392a06e7f923)
>
> In Discord: who voted, in favor and against.

> [accordion] !suggestion approve
>
> ![kira approves si2tr-foytm with a reason and Petto answers that the suggestion is now approved](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-approve.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=e10be90aa3698a49204a0b862cdb079a)
>
> In Discord: a suggestion approved with a reason.

> [accordion] !suggestion deny
>
> ![kira denies p0wdn-7trbx with a reason and Petto answers that the suggestion is now denied](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-deny.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=87b717a5a3dd80b485a935a476057c38)
>
> In Discord: a suggestion denied with a reason.

> [accordion] !suggestion consider
>
> ![kira marks k8fqa-2mzel as under consideration and Petto confirms it](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-consider.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=3aceaaf5958e6f9bccce38ea63b9ae1b)
>
> In Discord: a suggestion under consideration.

> [accordion] !suggestion implement
>
> ![kira marks b3vyc-qa91h as implemented and Petto confirms it](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-implement.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=daebee8e5bc33f22c6cbab711b0d4c96)
>
> In Discord: a suggestion marked as implemented.

> [accordion] !suggestion reopen
>
> ![kira types !suggestion reopen p0wdn-7trbx and Petto answers that the suggestion is now pending](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-reopen.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=465f0da9f878c4ca84e975348451b9a8)
>
> In Discord: a denied suggestion back to pending.

> [accordion] !suggestion delete
>
> ![kira types !suggestion delete r5c1u-ewm8o and Petto answers that it deleted the suggestion](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-delete.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=a8dc9665bfe79db73e8233efce1d3fb5)
>
> In Discord: a suggestion deleted with its message and thread.

> [accordion] !suggestion view
>
> ![kira types !suggestion view si2tr-foytm and Petto shows suggestion 12, approved, by Nova, 18 in favor and 2 against, the text, the reason and the link](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-view.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=111992e6e7c6e49728f6c56157810eba)
>
> In Discord: one suggestion with its votes, its reason and its link.

> [accordion] !suggestion list
>
> ![kira types !suggestion list and Petto lists suggestions 17 to 12 with their ID, status and text](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-list.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=6cfd28bed24bd7c6d547a944aacf0590)
>
> In Discord: the latest suggestions with their status.

> [accordion] !suggestion block
>
> ![kira types !suggestion block @griefer\_99 and Petto answers that griefer\_99 cannot make suggestions now](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-block.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=47ccd4c4bc1c4a5f8057a0bfa993e4a8)
>
> In Discord: a member blocked from suggesting.

> [accordion] !suggestion unblock
>
> ![kira types !suggestion unblock @griefer\_99 and Petto answers that griefer\_99 can make suggestions again](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-unblock.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=7987e79ab7eb305808f75545a9ecf291)
>
> In Discord: the member can suggest again.

Answering edits the suggestion message (its color follows the status when the colors are on), updates the thread and, if it is on, sends a DM to the author. An approved, denied or implemented suggestion takes no more votes and its thread gets a message saying so; `reopen` takes it back to pending and opens the votes again. Deleting removes the message and its thread. A blocked member cannot make suggestions. The **Suggestions** page of the dashboard has a **Blocked from suggesting** list with who blocked each member and when, an **Unblock** button, and a box to block one more member.

![A DM from Petto: your suggestion in Petto Land was marked as approved, with the reason and the link to it](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-answer-dm.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=9679c82dd7b510a97b96c9a431677446)

In Discord: the DM the author gets when the staff answers.

![In the thread of suggestion si2tr-foytm, Petto writes that it was marked as approved by kira, with the reason](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-answer-thread.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=9ffd6f3bf89898431e740b50fcb8b128)

In Discord: the message in the thread of the suggestion.

![The Suggestions page with 6 suggestions by status, the channel, the staff role, the design, the vote emojis, the thread name, the options and the color of each status](https://mintcdn.com/wikipetto/PiFwt6dDUZHBNDT7/images/dashboard/community/suggestions.webp?fit=max\&auto=format\&n=PiFwt6dDUZHBNDT7\&q=85\&s=4685c76162dae1ece28d414cd26d3a91)

Dashboard → Community → Suggestions: the count of each status and every setting.

![Suggestion 12, si2tr-foytm, with the reason field, the buttons Approve, Deny, Consider, Implemented and Reopen, and Who voted open: 18 in favor and 2 against with their names](https://mintcdn.com/wikipetto/-zl3RNr1X6pRGWW3/images/dashboard/community/suggestions-dash-list.webp?fit=max\&auto=format\&n=-zl3RNr1X6pRGWW3\&q=85\&s=472f57f7d35448e2ff139d0c4697a668)

Dashboard → Community → Suggestions: a suggestion of the list with its answer buttons, the reason and who voted.

![Blocked from suggesting with griefer\_99, blocked by kira, the Unblock button and the box to block someone](https://mintcdn.com/wikipetto/-zl3RNr1X6pRGWW3/images/dashboard/community/suggestions-dash-blocked.webp?fit=max\&auto=format\&n=-zl3RNr1X6pRGWW3\&q=85\&s=9f1d354eb85cf63a6cf09bbd78a503cc)

Dashboard → Community → Suggestions: the members blocked from suggesting.

## Make it yours

Pick a saved [embed](https://wiki.petto.sbs/resources/scripting/embeds.md) as the **design** (it can be a Components V2 design) and write it with these variables:

| Variable | What it is |
| - | - |
| `{suggestion.id}`, `{suggestion.number}` | The ID and the number |
| `{suggestion.content}`, `{suggestion.image}` | The text and the picture |
| `{suggestion.status}`, `{suggestion.status_label}`, `{suggestion.reason}` | The status and the reason |
| `{suggestion.author}`, `{suggestion.author_name}`, `{suggestion.staff}` | Who made it and who answered |
| `{suggestion.up}`, `{suggestion.down}`, `{suggestion.score}`, `{suggestion.percent}` | The votes |
| `{suggestion.link}`, `{suggestion.channel}`, `{suggestion.thread}` | Where it is |
| `{suggestion.created}`, `{suggestion.created_time}` | When it was made |

The usual [variables](https://wiki.petto.sbs/resources/scripting/variables.md#suggestions) for the server and the member work too.

### Example design

**1. Make the embed**

```javascript Command theme={null}
!embed create suggestion-card {embed}$v{author: Suggestion #{suggestion.number} by {suggestion.author_name} && {suggestion.author_avatar}}$v{description: {suggestion.content}{newline}{newline}{suggestion.up_emoji} **{suggestion.up}** · {suggestion.down_emoji} **{suggestion.down}** · {suggestion.percent}% in favor}$v{field: Status && {suggestion.status_label}}$v{field: Reason && {suggestion.reason}}$v{image: {suggestion.image}}$v{footer: ID {suggestion.id}}
```

![liam types !embed create suggestion-card with the code and Petto answers that the embed was created from the code, with a preview where the suggestion values are empty](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-step-1-embed.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=186db8443b15b8858689b83359b1ea7c)

In Discord: the design is saved; its preview has no suggestion yet, so the suggestion values are empty.

**2. Use it as the design**

```javascript Command theme={null}
!suggestion set design suggestion-card
```

![liam types !suggestion set design suggestion-card and Petto confirms the saved design of the suggestions](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-step-2-design.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=13a9d414d076c7470c4d9970f775e4cc)

In Discord: the saved design is now the one of the suggestions.

```text Result theme={null}
Suggestion #12 by Nova
Add a music channel so we can listen together on Friday nights.
✅ 18 · ❌ 2 · 90% in favor
Status: Approved
Reason: Great idea, it is coming this week.
ID si2tr-foytm
```

![Suggestion 12 by Nova in the embed of the design: the text, 18 in favor, 2 against, 90% in favor, Status Approved, the reason and the ID, with the vote buttons](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-design-result.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=506e3fece05dce3bab51f20502947b1c)

In Discord: an approved suggestion with that design.

While a suggestion is pending, `{suggestion.status_label}` and `{suggestion.reason}` are empty, and a field whose value ends up empty is left out, so both fields only appear once the staff answers.

### Thread names

The name of the thread (`!suggestion set thread_name`) has its own short placeholders: `{suggestion.id}`, `{suggestion.number}` and `{suggestion.status}`.

```javascript Example theme={null}
!suggestion set thread_name 💬 Suggestion {suggestion.number}
```

![liam sets the thread name to Suggestion with the number and Petto confirms the name of the threads](https://mintcdn.com/wikipetto/njNy1RYd5OMIlGZk/images/discord/community/suggestions-thread-name.webp?fit=max\&auto=format\&n=njNy1RYd5OMIlGZk\&q=85\&s=50c22e2ec0b8c28fa2dc3745e2ef1b0a)

In Discord: a new name for the threads.


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