Mini App Tester

Mock
Propriedades
version
—
platform
—
colorScheme
—
isActive
—
isExpanded
—
isFullscreen
—
isOrientationLocked
—
isClosingConfirmation
—
isVerticalSwipes
—
viewportHeight
—
viewportStableH
—
headerColor
—
backgroundColor
—
bottomBarColor
—
initData
initDataUnsafe
Parâmetros do tema
bg_color
text_color
hint_color
link_color
button_color
button_text_color
secondary_bg_color
header_bg_color
bottom_bar_bg_color
accent_text_color
section_bg_color
section_header_text_color
section_separator_color
subtitle_text_color
destructive_text_color
WebApp 18
ready()
expand()
close()
sendData()
switchInlineQuery()
setHeaderColor()
setBackgroundColor()
setBottomBarColor()
enableClosingConfirmation()
disableClosingConfirmation()
enableVerticalSwipes()
disableVerticalSwipes()
requestFullscreen()
exitFullscreen()
lockOrientation()
unlockOrientation()
openLink()
openTelegramLink()
isVersionAtLeast()
hideKeyboard()
Botões 4
MainButton
Clicar no botão dispara o evento mainButtonClicked
SecondaryButton
BackButton
BackButton
O clique dispara o evento backButtonClicked
SettingsButton
SettingsButton
O clique dispara o evento settingsButtonClicked
Popups e alertas 5
showAlert()
showConfirm()
showPopup()
showScanQrPopup()
readTextFromClipboard()
Feedback háptico 3
impactOccurred()
notificationOccurred()
selectionChanged()
Armazenamento em nuvem 6
setItem()
getItem()
getKeys()
removeItem()
Armazenamento no dispositivo 4
setItem()
getItem()
removeItem()
clear()
Armazenamento seguro 5
setItem()
getItem()
restoreItem()
removeItem()
clear()
Sensores 3
Accelerometer
DeviceOrientation
Gyroscope
Biometria 5
init()
requestAccess()
authenticate()
updateBiometricToken()
openSettings()
Localização 3
LocationManager.init()
LocationManager.getLocation()
LocationManager.openSettings()
Fatura e story 3
openInvoice()
shareMessage()
Permissões e autenticação 3
requestWriteAccess()
requestContact()
requestChat()
Emoji, tela, arquivo 5
Home Screen
addToHomeScreen()
checkHomeScreenStatus()
Emoji Status
File Download
Log de eventos 0
Monitorando 45 eventos
Nenhum evento. Use os métodos acima para gerar eventos.

O Mini App Tester permite testar a API JavaScript de Mini Apps do Telegram (Telegram.WebApp) sem escrever código. Em um navegador comum, ele roda em modo mock e emula a API; aberto dentro do Telegram, conversa com a API real do cliente. Use-o para testar um recurso de Telegram Mini App antes de implementá-lo ou para ver como cada cliente se comporta.

Como testar um Mini App do Telegram

  1. Abra esta página em qualquer navegador. O modo mock começa automaticamente e emula o Telegram.WebApp.
  2. Expanda um dos 13 grupos de métodos, chame os métodos e acompanhe os resultados no log de eventos e no painel de propriedades ao vivo.
  3. Para testar dentro do Telegram, defina https://telegram-bot-api.info/telegram-mini-app-tester.html como URL do Mini App de um bot no @BotFather (/newapp ou as configurações do botão de menu). Não precisa de hospedagem.
  4. Abra no iOS, no Android e no desktop e compare version, platform, colorScheme, initData, themeParams e as áreas seguras.

O que dá para testar

O log de eventos registra mais de 45 eventos com horário, como themeChanged, viewportChanged, mainButtonClicked e fullscreenChanged, para você ver exatamente o que seus handlers vão receber.

Como criar um Mini App do Telegram

Um Mini App é uma página web aberta dentro do Telegram. Para criar o seu, você precisa de um bot (veja como criar um bot no Telegram e como obter o token), de uma página servida por HTTPS que carregue https://telegram.org/js/telegram-web-app.js e de um ponto de entrada: /newapp, o botão de menu ou um botão de teclado com o campo web_app, enviado como mostra o guia como enviar mensagens pela Bot API. Antes de escrever o seu código, use o tester para ver quais chamadas existem e o que cada uma retorna.

Modo mock ou Telegram de verdade

Os Mini Apps se chamavam originalmente Web Apps, por isso o objeto da API ainda é Telegram.WebApp. O modo mock serve para interface e fluxo: mostra quais chamadas existem, o que retornam e quais eventos disparam. Ele não reproduz popups nativos, feedback háptico nem dados reais do usuário, e o seu initData é um exemplo que o Telegram nunca assinou. Dentro do Telegram, o tester usa a API real: o initData é autêntico, cada chamada chega ao cliente de verdade e a interface acompanha o idioma do usuário.

Privacidade

O tester roda inteiramente no seu navegador, não precisa de token de bot e não chama a Bot API. O armazenamento emulado do modo mock fica no localStorage do navegador.

Para apontar o botão de menu para o seu Mini App pela API, chame setChatMenuButton no Bot API Tester e consulte qualquer método no Swagger ou na referência de métodos.

Perguntas frequentes

Como testar um Mini App do Telegram online, sem o Telegram?

Abra o Mini App Tester em qualquer navegador. O modo mock emula o Telegram.WebApp, então você pode chamar métodos, disparar eventos e inspecionar propriedades sem bot nem cliente do Telegram.

O que é preciso para criar um Mini App no Telegram?

Um bot criado no @BotFather, uma página web servida por HTTPS que carregue o script telegram-web-app.js e um ponto de entrada: /newapp, o botão de menu ou um botão de teclado com o campo web_app.

Posso usar o Mini App Tester como Mini App do meu bot?

Sim. Defina https://telegram-bot-api.info/telegram-mini-app-tester.html como URL do Mini App no @BotFather, pelo /newapp ou nas configurações do botão de menu. Dentro do Telegram ele usa a API WebApp real, e você não precisa de hospedagem.

Quais recursos da API WebApp do Telegram ele cobre?

Os métodos principais do WebApp, MainButton, SecondaryButton, BackButton e SettingsButton, popups, HapticFeedback, CloudStorage, DeviceStorage, SecureStorage, sensores, biometria, localização, permissões, faturas e stories, status de emoji, tela cheia e download de arquivos, além de um log com mais de 45 eventos.

O initData do modo mock é válido?

Não. O modo mock usa dados de exemplo que o Telegram nunca assinou, então eles falham na validação HMAC de propósito. Abra o tester dentro do Telegram para obter um initData real e testar a validação no seu servidor.

Preciso de token de bot para usar o Mini App Tester?

Não. A página não chama a Bot API. Você só precisa de um bot se quiser abrir o tester dentro do Telegram como Mini App.