{user} ou {server_name}, que o Petto troca por dados reais quando envia uma mensagem. Escreva Boas-vindas, {user}, ao {server_name}! e o novo membro lê Boas-vindas, @Liam, ao Cozy Corner!
Esta página lista todas as variáveis que o Petto conhece, agrupadas de acordo com a origem dos dados. Os exemplos usam um membro chamado Liam (nome de usuário liam) entrando em um servidor chamado Cozy Corner com 1.204 membros.
Como as variáveis são resolvidas
Precisa de lógica ou loops?
{{ }}) adiciona if, loops, dados e botões. Documentação completa em code.petto.sbs.{user.displayname}, {server_member_count}) continua funcionando quando só pode significar uma variável. O que for duvidoso fica como foi digitado, e os editores de cartões e embeds do dashboard apontam as variáveis que o Petto não conhece.Escrevendo variáveis
- Maiúsculas e espaços não importam.
{user.mention},{User.Mention}e{ user.mention }funcionam. - Nomes de outros bots também funcionam.
{mention},{member},{username},{server},{level.xp}e outros são lidos como o equivalente no Petto (lista completa abaixo). - Uma variável que o Petto não conhece fica do jeito que você escreveu.
{usr}aparece como{usr}, então um erro de digitação é fácil de achar. - Uma variável sem dados naquela mensagem fica vazia.
{level}em uma mensagem de boas-vindas não tem nível para mostrar, então desaparece. Algumas dizem isso em vez de sumir:N/A,Desconhecido,Nunca,Sem impulso. - Os valores nunca são lidos de novo. Se a mensagem de um membro contém
{server_owner},{message_content}mostra esse texto como está, sem virar uma menção. - Não há filtros nem condições. Coisas como
{user.name|upper}ou “se impulsiona, diga X” não fazem parte das variáveis. Para isso, escreva um comando personalizado em Petto Code. - Funções não podem conter outras variáveis.
{choose:Oi {user}|Olá}quebra. Coloque a variável do lado de fora:{choose:Oi|Olá} {user}! - Não há caractere de escape. Uma variável que o Petto conhece é substituída mesmo dentro de formatação
code. Para mostrar uma como texto, por exemplo em uma mensagem de ajuda, descreva-a com palavras. - Os limites do Discord continuam valendo. O texto depois da troca precisa caber na mensagem: 2.000 caracteres em uma mensagem, 4.096 na descrição de um embed, 256 em um título, 100 no nome de um canal ou tópico.
Nomes de outros bots que o Petto entende
Nomes de outros bots que o Petto entende
{USER_MENTION} e {Server} também funcionam.! logo antes de uma menção, até antes de {user.mention}, a torna uma menção silenciosa: ela aparece como menção e não notifica ninguém.
Onde cada grupo funciona
Os grupos de Em toda mensagem funcionam em qualquer lugar que aceite variáveis. Os outros só têm dados na mensagem do recurso deles.{count} nos nomes dos contadores ou {number} nos nomes dos tickets. Eles estão listados em Placeholders de um recurso. Os timers enviam o texto exatamente como foi escrito, sem variáveis.
Em toda mensagem
Usuário
O membro de quem a mensagem trata: quem entrou, quem escreveu o gatilho, quem subiu de nível, quem usou o comando.
No Discord: um embed salvo feito com um código com as variáveis de User, preenchido com chu.
Usuário (antigo)
Os nomes originais. Eles continuam funcionando e retornam o mesmo que a versão com ponto.
No Discord: os nomes antigos dão os mesmos dados.
Servidor

No Discord: as variáveis de Server com os números do Petto Land.
Guild
Versões com ponto dos dados do servidor, mais alguns extras.
No Discord: as variáveis de Guild, com Nível 2 por extenso e N/A para uma vanity que o servidor não tem.
Canal
O canal em que a mensagem é enviada (para uma DM ao entrar, a DM).
No Discord: as variáveis de Channel para o canal da mensagem.
Convites
Só nas mensagens de boas-vindas e na DM ao entrar: o convite que o novo membro usou. O Petto precisa de Gerenciar servidor para ver os convites.
No Discord: uma boas-vindas com as variáveis de Invites.
Data e hora

No Discord: {date}, {timestamp} e dois momentos escritos; os timestamps aparecem no fuso horário de cada leitor.
{timestamp:…} lê o momento do jeito que você falaria (em inglês ou espanhol): in 2h, 3d 4h, tomorrow 8pm, today 18:30, 2026-12-31 23:59, um número unix ou um timestamp do Discord. Os horários são lidos no horário da Colômbia (GMT-5), a menos que terminem em utc (2026-12-31 23:59 utc). Depois do | vem o estilo: short_time, long_time, short_date, long_date, full, full_long, short_datetime, medium_datetime ou relative (ou as letras do Discord t T d D f F s S R). Sem estilo, é full. Um momento que o Petto não consegue ler não retorna nada.
{timestamp…}) aparecem formatados no texto da mensagem, nas descrições dos embeds e nos campos. Em títulos, rodapés e nomes de autor de embeds o Discord mostra o código <t:…> cru, então use {date} ali.Funções

No Discord: {range}, {separator}, {choose} e {newline}.
{choose1:…}, {choose2:…} e assim por diante funcionam do mesmo jeito, se você gostar de numerá-las. Cada uma é sorteada separadamente.
Ações e imagens

No Discord: um embed salvo com dois {reactreply:...}: o Petto reage à própria mensagem.
Nomes de outros bots
Estes nomes, usados por outros bots, também funcionam e dão o mesmo que a variável do Petto à qual apontam. São lidos em maiúsculas ou minúsculas.
No Discord: os nomes de outros bots funcionam como a variável do Petto.
Variáveis de um evento
Mensagem que ativou
A mensagem que ativou a resposta. Funciona em respostas automáticas, comandos personalizados, tópicos automáticos e subidas de nível de texto.
No Discord: uma resposta automática que cita a mensagem que a disparou.
Argumentos do comando
O que o membro digitou depois do nome do comando em um comando personalizado, ou depois do gatilho em uma resposta automática. Texto entre aspas conta como um argumento só. Menções digitadas pelo membro nunca notificam ninguém por meio delas. Os exemplos são para!hug Mia "mundo grande" agora:

No Discord: um comando personalizado com seus argumentos.
Níveis
Na mensagem de subida de nível, no embed salvo dela e nos cards de rank.
No Discord: uma mensagem de subida de nível com a barra de progresso e o cargo de prêmio.
{EMOJI} é substituído pelo ícone de estrela do Petto.
Sorteios
Nas mensagens de sorteio e nos embeds salvos delas.
No Discord: uma mensagem de vencedor feita com um embed salvo com {gw.*}.
{user} é o vencedor. Na própria mensagem do sorteio não há membro, então use {gw.host}.
Lembrete de bump

No Discord: o agradecimento do bump com {nextBump}.
Punições
Nas mensagens de punição: a DM, a resposta e o registro no log.
No Discord: uma DM de banimento feita com um embed salvo com {case.*}.
Starboard
No design da republicação do starboard.
No Discord: um repost do starboard feito com um embed salvo com {star.*}.
Monkeyboard
O mesmo que o starboard, para o monkeyboard:{monkey.count}, {monkey.emoji}, {monkey.channel}, {monkey.channel_name}, {monkey.link}, {monkey.message_id}, {monkey.author}, {monkey.author_name}, {monkey.author_id}, {monkey.author_avatar}, {monkey.content}, {monkey.image}, {monkey.attachments} e {monkey.time}.

No Discord: o mesmo design com {monkey.*}.
Clownboard
O mesmo que o starboard, para o clownboard:{clown.count}, {clown.emoji}, {clown.channel}, {clown.channel_name}, {clown.link}, {clown.message_id}, {clown.author}, {clown.author_name}, {clown.author_id}, {clown.author_avatar}, {clown.content}, {clown.image}, {clown.attachments} e {clown.time}.

No Discord: o mesmo design com {clown.*}.
Sugestões
No design de uma sugestão.
No Discord: um design de sugestão com {suggestion.*}.
Confissões
No design de uma confissão.
No Discord: um design de confissão com {confession.*}.
Enquetes
No design de uma enquete. Os botões de voto são adicionados embaixo.
No Discord: um design de enquete com {poll.*}.
Parceiros
Nas respostas de Parceiros.
No Discord: uma resposta de parceria com {partner.*}.
Pedidos
Na resposta a quem faz um pedido.
No Discord: a resposta a um pedido com {request.*}.
Formulários
No embed salvo de uma mensagem de formulário (enviado, aceito, recusado).
No Discord: uma resposta de formulário na DM com {form.*}.
Honeypot
Na mensagem de um canal honeypot.
No Discord: a mensagem de um canal honeypot com {honeypot.*}.
Metas dos contadores
No embed salvo de um anúncio de meta de contador. O texto simples do anúncio usa as formas curtas.
No Discord: um embed de marco com {counter.*}.
Verificação

No Discord: a DM de verificação com {verify.link}.
Vanity e Tag do servidor
Nas mensagens de agradecimento e no log das regras de Vanity e Tag do servidor.
No Discord: um agradecimento de Vanity feito com um embed salvo com {rule.} e {vanity.}.
Rollouts
Nos alertas de liberações sobre experimentos do Discord.
No Discord: um alerta de Rollout feito com um embed salvo com {rollout.*}.
Missões
Nos embeds salvos dos alertas de missões. São muitas, então ficam recolhidas.Todas as variáveis de missões (113)
Todas as variáveis de missões (113)

No Discord: um alerta de Missões feito com um embed salvo com {quest.*}.
Feeds
Nas palavras acima de cada aviso de um feed (!feed message). Só funcionam ali.

No Discord: as palavras acima de um aviso de feed com {feed.*}.
Placeholders de um recurso
Estes placeholders curtos são preenchidos pelo próprio recurso, não pelo mecanismo acima. Eles só funcionam no lugar indicado. Onde a tabela diz sim em “Variáveis também”, as variáveis normais também funcionam nesse mesmo texto.Contadores
O nome de um contador é qualquer texto com{count}. O Discord permite 100 caracteres no nome de um canal e 1.024 em um tópico.
{count} (membros agora), {goal} ou {milestone} (o número alcançado) e {server}, com os números agrupados (1.000):
Tickets
-, e eles são cortados em 90 caracteres: {category}-{username} dá suporte-liam. Um embed salvo como boas-vindas do ticket usa as variáveis normais no lugar (o membro é quem abriu, o canal é o ticket).
Formulários e apelações
As mensagens de formulário (a DM depois de enviar, aceitar ou recusar, definida com!form message) aceitam {form} (o título), {number}, {server}, {status} e {reason}, e também as variáveis normais, então {user} menciona o membro. Um embed salvo para essas mensagens usa o grupo Formulários no lugar.
As mensagens de apelação (definidas no dashboard) aceitam {username}, {server}, {reason}, {form} e {link} (a página de status da apelação). A mensagem de “enviada” e o aviso de resposta da equipe só preenchem {server}, e o nome do tópico só {username}. A linha sobre apelações em uma DM de punição aceita {server} e {link}; se ela não tiver {link}, o link é adicionado no final.
Receitas
Prontas para copiar e colar. Cada uma diz onde vai e o que o membro vê.Boas-vindas com o número do membro e quem convidou
Boas-vindas com o número do membro e quem convidou
Subida de nível com barra de progresso e recompensa
Subida de nível com barra de progresso e recompensa
--milestone 10 --message "{user} está no nível 10 e desbloqueou {level_role}!", esse nível ganha um texto só dele.Um comando de abraço com alvo
Um comando de abraço com alvo
Uma rolagem de dado
Uma rolagem de dado
Resposta automática que responde com o que veio depois do gatilho
Resposta automática que responde com o que veio depois do gatilho
Idade da conta em uma DM de boas-vindas
Idade da conta em uma DM de boas-vindas
Meta de impulsos
Meta de impulsos
Uma DM de banimento com o link de apelação (embed salvo)
Uma DM de banimento com o link de apelação (embed salvo)
ban-dm a partir de um código e depois use-o para a DM dos banimentos:Nunca como fim e o link de apelação.Contagem regressiva para um evento
Contagem regressiva para um evento
utc para escrevê-lo em UTC.