O que o Telegram quer dizer quando fala que tem uma "API aberta"?
Por Alveni Lisboa • Editado por Douglas Ciriaco |
O Telegram é um programa de mensagens reconhecido por ter uma API aberta. Diferentemente do rival WhatsApp, o app de Pavel Durov permite que desenvolvedores de todas as plataformas possam usar o protocolo, a API e até o código-fonte.
- Como o Telegram ganha dinheiro para se sustentar?
- Telegram planeja leiloar nomes de usuários e canais como NFTs
Mas o que é exatamente uma API e qual seria a distinção entre fechada e aberta? A resposta é um conceito importante para entender as diferenças entre um software de código aberto (open source) como o Telegram e outro fechado como o Messenger e o WhatsApp.
API significa Application Programming Interface (Interface de Programação de Aplicação, em português). De uma forma simplificada, é possível entender as APIs como uma espécie de "contrato de serviço" de um aplicativo, que pode ser usado para integrá-lo a outro ou a um site da web.
Diferenças entre APIs do Telegram
O Telegram possui dois tipos próprios de APIs para desenvolvedores: a API do Bot e a API do Telegram/ TDLib. A primeira permite a criação de robôs para executar alguma tarefa automatizada dos chats, como realizar cadastros ou atribuir funções em uma comunidade. Já o segundo possibilita o desenvolvimento de um cliente próprio e personalizado do Telegram.
As APIs do Telegram são gratuitas e acessíveis a qualquer pessoa, por isso são classificadas como abertas. É possível fazer o download do código-fonte do Telegram para modificá-lo com novas cores, acrescentar recursos, criar adesivos animados, construir temas exclusivos e mudar elementos da interface e o que mais você desejar.
Graças à API aberta, o usuário pode criar suas próprias soluções que usam a rede do Telegram, porém sem exigir uma permissão legal. Difere, por exemplo, do WhatsApp, cuja a API é fechada, de propriedade exclusiva da Meta. Apps de terceiros, como o WhatsApp GB, são considerados piratas e combatidos firmemente pelos desenvolvedores da empresa proprietária.
API de Bot
A API permite conectar bots externos à rede do Telegram. Esses robôs atuam como contas especiais que não requerem número de telefone para funcionar, mas podem interagir com os usuários.
As APIs de Bot do Telegram funcionam como uma interface de usuário representativa de um código hospedado em algum lugar do servidor. É basicamente como um trabalhador robô, programado para executar alguma função própria que demandaria trabalho repetitivo e manual de uma pessoa de verdade.
Uma vantagem dessa API aberta é a facilidade de integração, já que o servidor intermédio do próprio mensageiro lida com a parte de criptografia e comunicação. O criador do bot precisa apenas configurá-lo por meio de uma interface HTTPS simples. Isso serve até para robôs de pagamentos, o que permite a comerciantes vender seus produtos sem depender de sistemas externos.
API do Telegram ou TDLib
A API do programa é voltado para quem deseja ter seu próprio aplicativo, mas sem precisar criá-lo do zero. A biblioteca do Telegram contém uma database completa (TDLib) que pode ser usada como um ponto de partida para desenvolvedores criarem suas soluções conectadas à plataforma de mensagens.
Novamente, por ser uma API aberta, é livre para que qualquer pessoa possa desenvolver em cima do código livre. A TDLib cuida dos detalhes de implementação rede, criptografia e armazenamento local de dados, assim o criador precisa se preocupar apenas com o design, a interface e as animações do seu app.
A API suporta todos os recursos do Telegram e está em constante evolução para apresentar novas funcionalidades. Outra vantagem dessa abertura é a imensa compatibilidade com sistemas operacionais: Android, iOS, Windows, macOS, Linux e qualquer outro que você queira portar, já que a biblioteca é compatível com quase todas as linguagens de programação atuais.
API aberta, mas nem tanto
Embora tenha o código aberto, e ofereça a liberdade para você criar seu próprio software, a API do Telegram tem uma limitação importante. Você só poderá usar dados do Telegram e voltados para a rede geral do mensageiro. Esqueça a ideia de ter um servidor local ou um banco de dados exclusivo.
A API permitirá que você crie seu próprio app, mas ele não poderá ter vida própria. Isso porque o serviço está totalmente vinculado ao número de telefone usado, sendo impossível dissociá-lo do código-fonte. Quando você fizer o login, o programa carregará todas as mensagens trocadas anteriormente no Telegram original.
Até existe uma possibilidade de a pessoa criar uma interface voltada para comunicação segura de uma empresa, mas isto vai exibir um elevado conhecimento em desenvolvimento e vários ajustes no back-end. Mesmo assim, o serviço ainda ficará atrelado à rede do Telegram, então é uma espécie de "liberdade limitada".
O código do Telegram tem algumas partes totalmente imutáveis ou complexas demais, o que demandaria tempo e conhecimento para mergulhar nas minúcias da programação. Então, pode-se dizer que uma modificação total seria praticamente impossível, embora a API seja classificada como aberta.
Este "engessamento" é uma das razões pelas quais você não vê tantas alternativas ao Telegram original no mercado. Existe a versão X, desenvolvida pelos próprios criadores do Telegram, porém com uma pegada mais rápida e leve — mais indicada para máquinas menos potentes —, e algumas pouquíssimas variações. Mesmo assim, estima-se que menos de 5% dos usuários utilize uma versão paralela ao programa clássico.
Em resumo, o Telegram é um programa com uma API aberta e um código-fonte "livre" para uso de quem desejar. Mas ele pode não ser a melhor solução se você está começando agora no mundo da programação ou se pretende criar um software com vida própria.