Bot Polar
O bot completo para grupos: comandos, moderação e diversão.
- Menu com centenas de comandos
- Figurinhas e downloads
- Jogos, sorteios e IA
Moderação, figurinhas, downloads, jogos e divulgação. Você paga no PIX, recebe a chave por e-mail e coloca o bot no ar — com atualizações e suporte incluídos.
Escolha o bot certo para o seu grupo ou use a nossa API no seu próprio projeto.
O bot completo para grupos: comandos, moderação e diversão.
Feito para divulgar a sua marca nos grupos e no status.
Venda o seu próprio bot com chaves de licença, sem montar servidor.
144 endpoints prontos para o seu bot, site ou app.
Os administradores ligam o que querem uma vez. O bot aplica as regras, responde aos comandos e mantém o grupo ativo.
Apaga links de outros grupos e avisa quem mandou, sem um admin precisar estar online.
Responda a uma foto ou vídeo e ela vira figurinha na hora.
Músicas e vídeos direto na conversa, sem sair do WhatsApp.
Sorteios, RPG e jogos para manter o grupo animado.
Tire dúvidas e gere textos com inteligência artificial.
Receba quem entra com uma mensagem do jeito do seu grupo.
Sem burocracia e sem esperar por ninguém.
Com e-mail ou Google, em menos de um minuto. Depois escolha o plano.
QR Code ou copia e cola. A confirmação é automática.
A chave e o link para baixar chegam no seu e-mail. Com hospedagem, é só conectar o número no painel.
Pagamento via PIX. Quanto maior o período, menor o valor por mês.
O plano vitalício não tem versão com hospedagem, porque a hospedagem é cobrada por mês. Você pode comprar o vitalício e adicionar a hospedagem depois, em Meus bots.
O plano vitalício não tem versão com hospedagem, porque a hospedagem é cobrada por mês. Você pode comprar o vitalício e adicionar a hospedagem depois, em Meus bots.
Por mais R$ 10,00 por mês, o seu bot fica nos nossos servidores e você controla tudo pelo site.
A sessão do WhatsApp é sua e fica isolada da dos outros clientes. A hospedagem não protege contra restrições ou banimentos do WhatsApp — esse risco é do titular do número.
144 endpoints de figurinhas, downloads, IA e diversão para usar em qualquer bot, site ou app. A chave é grátis; você só compra créditos quando precisar.
const url = 'https://thekhempire.com/api/v1/play/' + encodeURIComponent(busca) const r = await fetch(url, { headers: { 'X-API-Key': 'SUA_CHAVE' } }) const dados = await r.json()
Não, se escolher um plano com hospedagem: o bot roda nos nossos servidores. Sem hospedagem, você pode instalar numa VPS, no seu computador ou no celular com o Termux.
Assim que o PIX é confirmado, você recebe por e-mail a chave de licença e o link para baixar o bot. Com hospedagem, o bot aparece na sua conta, em Meus bots.
Não. Nada é cobrado automaticamente. Quando quiser continuar, renove pelo site em Meus bots, pagando no PIX. O plano vitalício é pago uma única vez.
Pode. Bots não são oficiais do WhatsApp e nenhum serviço consegue garantir proteção contra restrições ou banimentos. O risco é do titular do número, por isso recomendamos usar um número só para o bot.
Como a licença é entregue na hora, não há reembolso depois da entrega. Os termos completos aparecem antes de você confirmar a compra.
Pelo WhatsApp: clique aqui para falar com a gente.
Escolha um plano, pague no PIX e receba tudo por e-mail em instantes.
Entre ou crie uma conta grátis para comprar e gerenciar seus bots.
Entre ou crie a sua conta com o Google.
Bot completo para o seu WhatsApp — menu de comandos, figurinhas, downloads, diversão e moderação. Atualizações e suporte incluídos.
O plano permanente não tem versão hospedada: ele é pago uma vez e a hospedagem é cobrada todo mês. Você pode comprar a licença permanente e adicionar hospedagem em Meus bots. A sessão do WhatsApp é sua e fica isolada da dos outros clientes — banimentos do WhatsApp são risco do titular do número.
Bot focado em divulgação — disparo para grupos, auto-divulgação e status. Feito para promover a sua marca.
O plano permanente não tem versão hospedada: ele é pago uma vez e a hospedagem é cobrada todo mês. Você pode comprar a licença permanente e adicionar hospedagem em Meus bots. A sessão do WhatsApp é sua e fica isolada da dos outros clientes — banimentos do WhatsApp são risco do titular do número.
Menu completo — figurinhas, downloads, diversão e moderação — e por dentro já usa esta mesma API. Atualizações e suporte incluídos.
Emita chaves de licença para os seus clientes e controle tudo: quem tem acesso, quando expira, quem compartilhou a chave. Você não precisa de domínio, servidor nem banco de dados — o seu bot valida com uma chamada à nossa API.
Emita chaves de licença para os clientes do SEU bot, na nossa infraestrutura. Sem domínio, sem servidor, sem banco de dados — o seu bot valida com uma chamada. Até 500 licenças ativas.
sk_…).Cole isto na inicialização do seu bot. Se a chave não for válida, o bot não inicia.
// licenca.js — validação da licença (Node 18+, sem dependências)
const API = 'https://thekhempire.com/api/lic/v1/validar'
export async function validarLicenca(chave, dispositivo) {
const r = await fetch(API, {
method : 'POST',
headers: { 'Content-Type': 'application/json' },
body : JSON.stringify({ chave, dispositivo })
})
return await r.json()
}
// No arranque do bot:
const CHAVE = process.env.LICENCA // a chave que vendeste ao cliente
const NUMERO = '5511999999999' // número do WhatsApp do bot (identifica o aparelho)
const lic = await validarLicenca(CHAVE, NUMERO)
if (!lic.ok) {
const motivos = {
invalida : 'Chave inválida.',
revogada : 'Licença revogada. Fale com o suporte.',
expirada : 'Licença expirada. Renove para continuar.',
outro_dispositivo: 'Esta chave já está sendo usada em outro número.',
projeto_inativo : 'Serviço temporariamente indisponível.'
}
console.error('❌ ' + (motivos[lic.motivo] || 'Licença não validada.'))
process.exit(1)
}
console.log('✅ Licença ok — cliente:', lic.cliente)
// Revalidar de 6 em 6 horas: se revogares a chave, o bot dele para sozinho.
setInterval(async () => {
const v = await validarLicenca(CHAVE, NUMERO).catch(() => null)
if (v && !v.ok) { console.error('❌ Licença deixou de ser válida:', v.motivo); process.exit(1) }
}, 6 * 60 * 60 * 1000)
💡 Por que o dispositivo? É o que impede o compartilhamento: a primeira validação prende a chave àquele número.
Se o seu cliente mudar de número, use limpar-dispositivo no painel.
Base: https://thekhempire.com/api/lic/v1/ · autentica com Authorization: Bearer SEU_SEGREDO (exceto validar, que é público).
| Rota | O que faz | Corpo |
|---|---|---|
POST validar | Valida a chave (usado pelo bot do cliente — não leva segredo) | {chave, dispositivo} |
POST criar | Emite uma chave nova | {cliente, dias, prefixo} |
GET listar | Suas licenças | — |
POST revogar | Corta o acesso na hora | {chave} ou {id} |
POST renovar | Acrescenta dias (soma ao que resta) | {chave, dias} |
POST limpar-dispositivo | Cliente mudou de número/servidor | {chave} |
GET projeto | Status da sua assinatura | — |
⚠️ O segredo fica só no seu servidor/painel — nunca coloque no bot que você entrega ao cliente.
Menu completo — figurinhas, downloads, diversão e moderação — e por dentro já usa esta mesma API. Atualizações e suporte incluídos.
Base: https://thekhempire.com/api/v1/ · autentica com ?apikey=SUA_CHAVE ou o header X-API-Key.
Resposta: { ok, resultado, creditosRestantes } · rate-limit 30 req/10s · cada chamada com sucesso gasta 1 crédito. Use em qualquer bot, site ou app.
case 'play': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !play Believer')
const r = await fetch('https://thekhempire.com/api/v1/play/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { audio: { url: d.resultado.url }, mimetype: 'audio/mpeg' }, { quoted: m })
break
}case 'tts': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !tts ola mundo')
const r = await fetch('https://thekhempire.com/api/v1/tts/' + encodeURIComponent(q) + '?lang=pt', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { audio: { url: d.resultado.url }, mimetype: 'audio/mpeg' }, { quoted: m })
break
}case 'efeito': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !efeito <url do áudio>')
const r = await fetch('https://thekhempire.com/api/v1/efeito/' + encodeURIComponent(q) + '?tipo=esquilo', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { audio: { url: d.resultado.url }, mimetype: 'audio/mpeg' }, { quoted: m })
break
}case 'toaudio': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !toaudio <link do vídeo>')
const r = await fetch('https://thekhempire.com/api/v1/toaudio/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { audio: { url: d.resultado.url }, mimetype: 'audio/mpeg' }, { quoted: m })
break
}case 'sticker': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !sticker <url da imagem>')
const r = await fetch('https://thekhempire.com/api/v1/sticker/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { sticker: { url: d.resultado.url } }, { quoted: m })
break
}case 'gif': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !gif <url do vídeo>')
const r = await fetch('https://thekhempire.com/api/v1/gif/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { video: { url: d.resultado.url }, gifPlayback: true }, { quoted: m })
break
}case 'comprimir': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !comprimir <url do vídeo>')
const r = await fetch('https://thekhempire.com/api/v1/comprimir/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { video: { url: d.resultado.url } }, { quoted: m })
break
}case 'converter': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !converter <url do arquivo>')
const r = await fetch('https://thekhempire.com/api/v1/converter/' + encodeURIComponent(q) + '?para=mp3', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.url)
break
}case 'multi': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !multi https://youtu.be/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/baixar/multi/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || d.resultado.url || JSON.stringify(d.resultado).slice(0, 400))
break
}case 'youtube': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !youtube https://youtu.be/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/baixar/youtube/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || d.resultado.url || JSON.stringify(d.resultado).slice(0, 400))
break
}case 'instagram': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !instagram https://instagram.com/p/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/baixar/instagram/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || d.resultado.url || JSON.stringify(d.resultado).slice(0, 400))
break
}case 'instagram-fotos': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !instagram-fotos https://instagram.com/p/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/baixar/instagram-fotos/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'tiktok': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !tiktok https://tiktok.com/@x/video/1')
const r = await fetch('https://thekhempire.com/api/v1/baixar/tiktok/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || d.resultado.url || JSON.stringify(d.resultado).slice(0, 400))
break
}case 'spotify': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !spotify https://open.spotify.com/track/x')
const r = await fetch('https://thekhempire.com/api/v1/baixar/spotify/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || JSON.stringify(d.resultado).slice(0, 400))
break
}case 'pinterest': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pinterest https://pin.it/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/baixar/pinterest/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || JSON.stringify(d.resultado).slice(0, 400))
break
}case 'youtube': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !youtube lofi beats')
const r = await fetch('https://thekhempire.com/api/v1/buscar/youtube/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'pinterest': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pinterest wallpaper anime')
const r = await fetch('https://thekhempire.com/api/v1/buscar/pinterest/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'imagens': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !imagens gato fofo')
const r = await fetch('https://thekhempire.com/api/v1/buscar/imagens/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'figurinhas': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !figurinhas kkkk')
const r = await fetch('https://thekhempire.com/api/v1/buscar/figurinhas/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'hd': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !hd https://site.com/foto.jpg')
const r = await fetch('https://thekhempire.com/api/v1/imagem/hd/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.url || d.resultado.download_url || JSON.stringify(d.resultado).slice(0, 300))
break
}case '2k': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !2k https://site.com/foto.jpg')
const r = await fetch('https://thekhempire.com/api/v1/imagem/2k/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.url || d.resultado.download_url || JSON.stringify(d.resultado).slice(0, 300))
break
}case '4k': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !4k https://site.com/foto.jpg')
const r = await fetch('https://thekhempire.com/api/v1/imagem/4k/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.url || d.resultado.download_url || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'sem-fundo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !sem-fundo https://site.com/foto.jpg')
const r = await fetch('https://thekhempire.com/api/v1/imagem/sem-fundo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.url || d.resultado.download_url || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'buscar': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !buscar imagine dragons')
const r = await fetch('https://thekhempire.com/api/v1/yt/buscar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'audio': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !audio imagine dragons believer')
const r = await fetch('https://thekhempire.com/api/v1/yt/audio/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download || d.resultado.url)
break
}case 'video': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !video believer')
const r = await fetch('https://thekhempire.com/api/v1/yt/video/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download || d.resultado.url)
break
}case 'info': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !info 7wtfhZwyrcc')
const r = await fetch('https://thekhempire.com/api/v1/yt/info/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.title + ' — ' + (d.resultado.canal || ''))
break
}case 'thumb': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !thumb 7wtfhZwyrcc')
const r = await fetch('https://thekhempire.com/api/v1/yt/thumb/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'base64': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !base64 ola mundo')
const r = await fetch('https://thekhempire.com/api/v1/util/base64/' + encodeURIComponent(q) + '?action=encode', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resultado)
break
}case 'hash': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !hash segredo')
const r = await fetch('https://thekhempire.com/api/v1/util/hash/' + encodeURIComponent(q) + '?type=sha256', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.hash)
break
}case 'gerar': {
const r = await fetch('https://thekhempire.com/api/v1/util/gerar?tipo=senha&tamanho=20', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.senha)
break
}case 'qrcode': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !qrcode https://site.com')
const r = await fetch('https://thekhempire.com/api/v1/util/qrcode/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'encurtar': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !encurtar https://google.com')
const r = await fetch('https://thekhempire.com/api/v1/util/encurtar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.curto)
break
}case 'traduzir': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !traduzir bom dia')
const r = await fetch('https://thekhempire.com/api/v1/util/traduzir/' + encodeURIComponent(q) + '?para=en', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.traducao)
break
}case 'calcular': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !calcular 2+2*3')
const r = await fetch('https://thekhempire.com/api/v1/util/calcular/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resultado)
break
}case 'morse': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !morse ola mundo')
const r = await fetch('https://thekhempire.com/api/v1/util/morse/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resultado)
break
}case 'binario': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !binario ola')
const r = await fetch('https://thekhempire.com/api/v1/util/binario/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resultado)
break
}case 'contar': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !contar ola mundo')
const r = await fetch('https://thekhempire.com/api/v1/util/contar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.palavras + ' palavras · ' + d.resultado.caracteres + ' caracteres')
break
}case 'forca-senha': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !forca-senha Abc12345!')
const r = await fetch('https://thekhempire.com/api/v1/util/forca-senha/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nivel + ' (' + d.resultado.pontos + '/100)')
break
}case 'idade-data': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !idade-data 1998-07-15')
const r = await fetch('https://thekhempire.com/api/v1/util/idade-data/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.idade + ' anos')
break
}case 'web': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !web quem descobriu o brasil')
const r = await fetch('https://thekhempire.com/api/v1/buscar/web/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'cep': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !cep 01001000')
const r = await fetch('https://thekhempire.com/api/v1/util/cep/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.rua + ' - ' + d.resultado.cidade)
break
}case 'cnpj': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !cnpj 00000000000191')
const r = await fetch('https://thekhempire.com/api/v1/util/cnpj/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome)
break
}case 'ddd': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !ddd 21')
const r = await fetch('https://thekhempire.com/api/v1/util/ddd/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.estado + ' — ' + d.resultado.cidades.length + ' cidades')
break
}case 'feriados': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !feriados 2026')
const r = await fetch('https://thekhempire.com/api/v1/util/feriados/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.feriados.map(f => f.data + ' ' + f.nome).join('\n'))
break
}case 'validar-cpf': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !validar-cpf 111.444.777-35')
const r = await fetch('https://thekhempire.com/api/v1/util/validar-cpf/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.valido ? '✅ CPF válido' : '❌ CPF inválido')
break
}case 'validar-cnpj': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !validar-cnpj 00000000000191')
const r = await fetch('https://thekhempire.com/api/v1/util/validar-cnpj/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.valido ? '✅ CNPJ válido' : '❌ CNPJ inválido')
break
}case 'gerar-cpf': {
const r = await fetch('https://thekhempire.com/api/v1/util/gerar-cpf', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.cpf)
break
}case 'gerar-cnpj': {
const r = await fetch('https://thekhempire.com/api/v1/util/gerar-cnpj', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.cnpj)
break
}case 'banco': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !banco 1')
const r = await fetch('https://thekhempire.com/api/v1/br/banco/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome)
break
}case 'taxas': {
const r = await fetch('https://thekhempire.com/api/v1/br/taxas', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(Object.entries(d.resultado.taxas).map(([k, v]) => k + ': ' + v + '%').join('\n'))
break
}case 'isbn': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !isbn 9788545702870')
const r = await fetch('https://thekhempire.com/api/v1/br/isbn/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.titulo + ' — ' + (d.resultado.autores || []).join(', '))
break
}case 'dominio': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !dominio meusite.com.br')
const r = await fetch('https://thekhempire.com/api/v1/br/dominio/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.disponivel ? '✅ disponível' : '❌ registado')
break
}case 'fipe': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/dados/fipe/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'cotacao': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/dados/cotacao/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'banco': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !banco 1')
const r = await fetch('https://thekhempire.com/api/v1/dados/banco/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 300))
break
}case 'pedido': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pedido BR123456789BR')
const r = await fetch('https://thekhempire.com/api/v1/rastrear/pedido/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'clima': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !clima Lisboa')
const r = await fetch('https://thekhempire.com/api/v1/clima/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.tempC + '°C, ' + d.resultado.descricao)
break
}case 'cripto': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !cripto bitcoin')
const r = await fetch('https://thekhempire.com/api/v1/cripto/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply('R$ ' + d.resultado.brl)
break
}case 'github': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !github torvalds')
const r = await fetch('https://thekhempire.com/api/v1/github/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome + ' — ' + d.resultado.repos + ' repos')
break
}case 'wiki': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !wiki Portugal')
const r = await fetch('https://thekhempire.com/api/v1/wiki/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resumo)
break
}case 'ip': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !ip 8.8.8.8')
const r = await fetch('https://thekhempire.com/api/v1/ip/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.pais + ', ' + d.resultado.cidade)
break
}case 'cor': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !cor ff5733')
const r = await fetch('https://thekhempire.com/api/v1/cor/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome + ' — ' + d.resultado.rgb)
break
}case 'hora': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !hora America/Sao_Paulo')
const r = await fetch('https://thekhempire.com/api/v1/util/hora/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.hora)
break
}case 'npm': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !npm express')
const r = await fetch('https://thekhempire.com/api/v1/info/npm/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome + '@' + d.resultado.versao + ' — ' + d.resultado.descricao)
break
}case 'anime': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !anime naruto')
const r = await fetch('https://thekhempire.com/api/v1/info/anime/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'serie': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !serie breaking bad')
const r = await fetch('https://thekhempire.com/api/v1/info/serie/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'filme': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !filme matrix')
const r = await fetch('https://thekhempire.com/api/v1/info/filme/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'ao-vivo': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/futebol/ao-vivo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 700))
break
}case 'tabela': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/futebol/tabela/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 700))
break
}case 'jogo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !jogo flamengo')
const r = await fetch('https://thekhempire.com/api/v1/futebol/jogo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 700))
break
}case 'artilharia': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/futebol/artilharia/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'games': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/noticias/games/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'piada': {
const r = await fetch('https://thekhempire.com/api/v1/piada?lang=pt', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.piada || (d.resultado.setup + '\n' + d.resultado.punchline))
break
}case 'trivia': {
const r = await fetch('https://thekhempire.com/api/v1/trivia', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.pergunta + '\n' + d.resultado.opcoes.map((o, i) => (i + 1) + '. ' + o).join('\n'))
break
}case 'anime': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !anime naruto')
const r = await fetch('https://thekhempire.com/api/v1/anime/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.titulo + ' — Score: ' + d.resultado.score)
break
}case 'pokemon': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pokemon pikachu')
const r = await fetch('https://thekhempire.com/api/v1/pokemon/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome + ' — ' + d.resultado.tipos.join(', '))
break
}case 'frase': {
const r = await fetch('https://thekhempire.com/api/v1/frase', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.frase + ' — ' + d.resultado.autor)
break
}case 'conselho': {
const r = await fetch('https://thekhempire.com/api/v1/conselho', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.conselho)
break
}case 'facto': {
const r = await fetch('https://thekhempire.com/api/v1/facto?tipo=gato', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.facto)
break
}case 'idade': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !idade Maria')
const r = await fetch('https://thekhempire.com/api/v1/idade/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome + ': ' + d.resultado.idadeEstimada + ' anos, ' + d.resultado.genero)
break
}case 'meme': {
const r = await fetch('https://thekhempire.com/api/v1/meme', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url }, caption: d.resultado.titulo }, { quoted: m })
break
}case 'akinator': {
// jogo de adivinhar — a 1ª chamada começa. Guarde d.resultado.sessao e reenvie
// com &resposta=sim|nao|talvez&sessao=... para continuar (veja a doc do endpoint).
const r = await fetch('https://thekhempire.com/api/v1/akinator', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.pergunta)
break
}case 'dado': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/fun/dado/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply('🎲 ' + d.resultado.rolagens.join(', ') + ' (total ' + d.resultado.total + ')')
break
}case 'caracoroa': {
const r = await fetch('https://thekhempire.com/api/v1/fun/cara-coroa', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply('🪙 ' + d.resultado.resultado)
break
}case '8ball': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !8ball vou ficar rico?')
const r = await fetch('https://thekhempire.com/api/v1/fun/8ball/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resposta)
break
}case 'ppt': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !ppt pedra')
const r = await fetch('https://thekhempire.com/api/v1/fun/ppt/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply('Tu: ' + d.resultado.tu + ' · Bot: ' + d.resultado.bot + ' → ' + d.resultado.resultado)
break
}case 'escolher': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !escolher pizza,sushi,hamburguer')
const r = await fetch('https://thekhempire.com/api/v1/fun/escolher/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply('🎯 ' + d.resultado.escolhido)
break
}case 'chuck': {
const r = await fetch('https://thekhempire.com/api/v1/fun/chuck', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.piada)
break
}case 'quiz': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/jogo/quiz/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'gratis': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/jogo/gratis/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'aki': {
const r = await fetch('https://thekhempire.com/api/v1/jogo/akinator', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.question || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'akiresp': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !akiresp 0')
const r = await fetch('https://thekhempire.com/api/v1/jogo/akinator-resp/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.question || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'forca': {
const r = await fetch('https://thekhempire.com/api/v1/jogo/forca', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.masked || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'forcaletra': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !forcaletra a')
const r = await fetch('https://thekhempire.com/api/v1/jogo/forca-chutar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.masked || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'termo': {
const r = await fetch('https://thekhempire.com/api/v1/jogo/termo', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 300))
break
}case 'termochute': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !termochute carro')
const r = await fetch('https://thekhempire.com/api/v1/jogo/termo-chutar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 400))
break
}case 'vocepreere': {
const r = await fetch('https://thekhempire.com/api/v1/jogo/voce-prefere', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 400))
break
}case 'signo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !signo leao')
const r = await fetch('https://thekhempire.com/api/v1/info/signo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 600))
break
}case 'dog': {
const r = await fetch('https://thekhempire.com/api/v1/dog', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'cat': {
const r = await fetch('https://thekhempire.com/api/v1/cat', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'fox': {
const r = await fetch('https://thekhempire.com/api/v1/fox', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'bird': {
const r = await fetch('https://thekhempire.com/api/v1/bird', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url }, caption: d.resultado.facto }, { quoted: m })
break
}case 'wallpaper': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !wallpaper nature')
const r = await fetch('https://thekhempire.com/api/v1/wallpaper/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'theme': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !theme Polar')
const r = await fetch('https://thekhempire.com/api/v1/theme/' + encodeURIComponent(q) + '?estilo=neon', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'upscale': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !upscale <url da imagem>')
const r = await fetch('https://thekhempire.com/api/v1/upscale/' + encodeURIComponent(q) + '?escala=2', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'removerfundo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !removerfundo <url da imagem>')
const r = await fetch('https://thekhempire.com/api/v1/removerfundo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'logo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !logo Polar')
const r = await fetch('https://thekhempire.com/api/v1/logo/' + encodeURIComponent(q) + '?estilo=neon', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'ttp': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !ttp bom dia')
const r = await fetch('https://thekhempire.com/api/v1/ttp/' + encodeURIComponent(q) + '?estilo=brat', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { sticker: { url: d.resultado.url } }, { quoted: m })
break
}case 'ocr': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !ocr <url da imagem>')
const r = await fetch('https://thekhempire.com/api/v1/ocr/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.texto)
break
}case 'waifu': {
const r = await fetch('https://thekhempire.com/api/v1/fun/waifu', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'neko': {
const r = await fetch('https://thekhempire.com/api/v1/fun/neko', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'avatar': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !avatar Polar')
const r = await fetch('https://thekhempire.com/api/v1/img/avatar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'favicon': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !favicon github.com')
const r = await fetch('https://thekhempire.com/api/v1/img/favicon/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.url } }, { quoted: m })
break
}case 'pinterest': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pinterest anime wallpaper')
const r = await fetch('https://thekhempire.com/api/v1/pinterest/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: (d.resultado.imagens || d.resultado.resultados)[0] } }, { quoted: m })
break
}case 'imagem': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !imagem gato fofo')
const r = await fetch('https://thekhempire.com/api/v1/imagem/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { image: { url: d.resultado.imagens[0].imagem } }, { quoted: m })
break
}case 'explicar': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !explicar blockchain')
const r = await fetch('https://thekhempire.com/api/v1/explicar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.explicacao)
break
}case 'resumir': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !resumir <texto ou link>')
const r = await fetch('https://thekhempire.com/api/v1/resumir/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resumo)
break
}case 'dicio': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !dicio amor')
const r = await fetch('https://thekhempire.com/api/v1/dicio/' + encodeURIComponent(q) + '?lang=pt', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.significados[0].definicoes[0].definicao)
break
}case 'noticias': {
const q = (text || '').trim() // o que vem depois do comando
const r = await fetch('https://thekhempire.com/api/v1/noticias/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.noticias.slice(0, 5).map(n => n.titulo).join('\n'))
break
}case 'letra': {
const [artista, ...resto] = (text || '').split('-')
const musica = resto.join('-').trim()
if (!artista.trim() || !musica) return reply('Uso: !letra artista - musica')
const r = await fetch('https://thekhempire.com/api/v1/letra?artista=' + encodeURIComponent(artista.trim()) + '&musica=' + encodeURIComponent(musica), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.letra)
break
}case 'cambio': {
const [valor, de, para] = (text || '').split(' ')
if (!para) return reply('Uso: !cambio 100 USD BRL')
const r = await fetch('https://thekhempire.com/api/v1/cambio?de=' + de + '¶=' + para + '&valor=' + valor, { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.valor + ' ' + d.resultado.de + ' = ' + d.resultado.convertido + ' ' + d.resultado.para)
break
}case 'moeda': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !moeda USD')
const r = await fetch('https://thekhempire.com/api/v1/moeda/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(Object.entries(d.resultado.taxas).map(([k, v]) => k + ': ' + v).join('\n'))
break
}case 'horoscopo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !horoscopo touro')
const r = await fetch('https://thekhempire.com/api/v1/horoscopo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.horoscopo)
break
}case 'randomuser': {
const r = await fetch('https://thekhempire.com/api/v1/random-user', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.nome + '\n' + d.resultado.cidade + '\n' + d.resultado.email)
break
}case 'random': {
const r = await fetch('https://thekhempire.com/api/v1/random?min=1&max=100', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply('🎲 ' + d.resultado.numero)
break
}case 'status-site': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !status-site https://google.com')
const r = await fetch('https://thekhempire.com/api/v1/dados/status-site/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.online ? '🟢 online (' + d.resultado.status + ', ' + d.resultado.tempo_ms + 'ms)' : '🔴 offline')
break
}case 'dl': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !dl <link do vídeo>')
const r = await fetch('https://thekhempire.com/api/v1/dl/' + encodeURIComponent(q) + '?format=audio', { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await conn.sendMessage(m.chat, { audio: { url: d.resultado.url }, mimetype: 'audio/mpeg' }, { quoted: m })
break
}case 'github': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !github https://github.com/user/repo')
const r = await fetch('https://thekhempire.com/api/v1/baixar/github/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.download_url || d.resultado.url || JSON.stringify(d.resultado).slice(0, 300))
break
}case 'dns': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !dns google.com')
const r = await fetch('https://thekhempire.com/api/v1/dev/dns/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 500))
break
}case 'site-status': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !site-status https://google.com')
const r = await fetch('https://thekhempire.com/api/v1/dev/site-status/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 400))
break
}case 'gpt': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !gpt explica buracos negros')
const r = await fetch('https://thekhempire.com/api/v1/ia/gpt/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.response || d.resultado.text || d.resultado.message || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'gptmini': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !gptmini resume isto em 1 frase')
const r = await fetch('https://thekhempire.com/api/v1/ia/gpt-mini/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.response || d.resultado.text || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'gemini': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !gemini qual a capital do japao')
const r = await fetch('https://thekhempire.com/api/v1/ia/gemini/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.response || d.resultado.text || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'groq': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !groq faz um poema curto')
const r = await fetch('https://thekhempire.com/api/v1/ia/groq/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.response || d.resultado.text || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'musica': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !musica lo-fi triste com piano, 30s')
const r = await fetch('https://thekhempire.com/api/v1/ia/musica/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(JSON.stringify(d.resultado).slice(0, 400))
break
}case 'ocr': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !ocr https://site.com/print.png')
const r = await fetch('https://thekhempire.com/api/v1/ia/ocr/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.texto || d.resultado.text || JSON.stringify(d.resultado).slice(0, 600))
break
}case 'descrever': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !descrever https://site.com/foto.jpg')
const r = await fetch('https://thekhempire.com/api/v1/ia/descrever/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.descricao || d.resultado.caption || JSON.stringify(d.resultado).slice(0, 500))
break
}case 'transcrever': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !transcrever https://site.com/audio.mp3')
const r = await fetch('https://thekhempire.com/api/v1/ia/transcrever/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.texto || d.resultado.text || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'video-resumo': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !video-resumo https://youtu.be/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/ia/video-resumo/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resumo || d.resultado.summary || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'video-legendas': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !video-legendas https://youtu.be/xxxx')
const r = await fetch('https://thekhempire.com/api/v1/ia/video-legendas/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.texto || d.resultado.transcript || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'pdf': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pdf https://site.com/doc.pdf')
const r = await fetch('https://thekhempire.com/api/v1/ia/pdf/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resumo || d.resultado.summary || JSON.stringify(d.resultado).slice(0, 800))
break
}case 'pdf-perguntar': {
const q = (text || '').trim() // o que vem depois do comando
if (!q) return reply('Uso: !pdf-perguntar qual o prazo do contrato?')
const r = await fetch('https://thekhempire.com/api/v1/ia/pdf-perguntar/' + encodeURIComponent(q), { headers: { 'X-API-Key': 'SUA_CHAVE' } })
const d = await r.json()
if (!d.ok) return reply('❌ ' + (d.erro || 'deu erro'))
await reply(d.resultado.resposta || d.resultado.answer || JSON.stringify(d.resultado).slice(0, 800))
break
}Precisa de ajuda? Fale com a gente no WhatsApp.
Abrir WhatsApp"Expirada" — renove na aba Comprar/Meus bots. "Aguardando" — o bot ainda não foi ativado no seu WhatsApp. "Revogada" — fale com o suporte.
Associe o Google para entrar sem digitar a senha. O seu 2FA continua ativo.
Enviamos um código para o seu e-mail para confirmar a mudança.
Encerre a sessão em todos os dispositivos — por precaução ou se você perdeu o acesso a algum.
Um código do seu app autenticador (Google Authenticator / Authy) pedido a cada login.
1) No app, escolha "inserir chave manualmente" e cole esta chave:
2) Digite o código de 6 dígitos que o app mostra:
✅ 2FA ativo — a sua conta está protegida.
As últimas linhas que o seu bot escreveu. É aqui que aparece o motivo quando algo dá errado.
Edite seus menus e mensagens. A sessão e as chaves ficam protegidas.
Escolha um arquivo para ver como aplicar as alterações.
Salvar reinicia o bot para aplicar. A sua sessão do WhatsApp não se perde.
O bot roda nos nossos servidores. A sessão do WhatsApp é sua e fica isolada da dos outros clientes. Banimentos do WhatsApp são risco do titular do número — veja os termos.
Escolha o nome da sua chave (é a sua licença — guarde-a; sem espaços):
Leia o QR Code no app do banco ou copie o código: