Como Enviar SMS com Python – Passo a Passo com Twilio

Você sabia que é possível enviar SMS com Python? Sabe como fazer isso? Aprenda o passo a passo utilizando a biblioteca Twilio no Python.

Para enviar SMS com Python, a forma mais comum é usar a biblioteca twilio: você cria uma conta na Twilio, obtém as credenciais (Account SID e Auth Token) e um número de envio, instala com pip install twilio e dispara a mensagem com poucas linhas usando client.messages.create(), informando destinatário, remetente e o texto.

Se quiser pode acompanhar esse conteúdo em formato de vídeo ou pode acessar o nosso Canal do YouTube para mais vídeos!

O que você aprende neste vídeo

Resposta rápida: Para enviar SMS com Python, crie uma conta na Twilio, obtenha um número de envio e instale a biblioteca com pip install twilio. Depois, inicialize Client com o Account SID e o Auth Token e chame client.messages.create(), informando from_, to e body. Guarde as credenciais em variáveis de ambiente.

Neste vídeo (10 min):

  • 0:22 - Apresentação da Twilio como serviço de mensageria
  • 1:20 - Criação da conta e obtenção de um número para os testes
  • 2:16 - Biblioteca Python fornecida pela Twilio
  • 2:25 - Instalação com pip install twilio e consulta à documentação
  • 3:27 - Importação de Client para conectar o código à conta
  • 3:40 - Uso do Account SID e do Auth Token na autenticação
  • 4:26 - Criação da mensagem com client.messages.create()
  • 7:05 - Proteção das credenciais por meio de variáveis de ambiente
  • 7:35 - Configuração do remetente no parâmetro from_
  • 8:15 - Definição do destinatário e do corpo da mensagem, inclusive com variável
  • 8:58 - Execução do código e conferência do SMS recebido

Trechos do vídeo:

  • A conexão é criada com from twilio.rest import Client e as credenciais da conta.
  • O envio reúne remetente, destinatário e conteúdo em uma chamada a client.messages.create().
  • Account SID e Auth Token não devem ficar expostos diretamente no código.

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.

Como Enviar SMS com Python – Passo a Passo com Twilio

O envio de SMS automáticos e programados é um recurso extremamente útil para diversos tipos de projetos, como notificações automáticas, envio de promoções e até alertas de segurança.

Hoje, vou te apresentar a biblioteca Twilio no Python e ensinar como criar sua conta, obter suas credenciais e seguir o passo a passo para enviar SMS com Python!

A biblioteca Twilio simplifica muito esse processo, e você verá que, com poucas linhas de código, conseguirá configurar e enviar mensagens SMS usando Python.

O que é o Twilio?

O Twilio é uma plataforma de comunicação que permite o envio de SMS, e-mails, chamadas telefônicas e outros serviços por meio de uma API. Você pode acessar o site oficial: https://www.twilio.com/pt-br

Essa ferramenta é amplamente utilizada devido à sua boa documentação e preços competitivos. Embora ofereça um plano gratuito para testes, é necessário assinar um plano para acessar todas as funcionalidades da API.

O que é o Twilio?

Inclusive, já temos uma aula ensinando como fazer ligações telefônicas utilizando essa ferramenta: Ligações Telefônicas com Python

Criando e Configurando sua Conta no Twilio

Para usar a API do Twilio, primeiro você precisa criar uma conta gratuita no site da plataforma. Após criar sua conta, você terá acesso ao dashboard da ferramenta.

Dentro do dashboard, clique em Get phone number para obter um número de telefone aleatório para testes.

Configurando sua Conta no Twilio

Além disso, você receberá um crédito inicial para enviar algumas mensagens sem custo e realizar os testes necessários.

crédito inicial

Ao criar sua conta no Twilio, você receberá dois dados essenciais para utilizar em seu projeto:

  • Account SID: Um identificador único da sua conta no Twilio.
  • Auth Token: Um token de autenticação que será usado junto ao SID para autorizar as solicitações de envio de SMS.
Account SID e Auth Token

Instalando a biblioteca do Twilio no Python

Com a conta configurada, o próximo passo é instalar a biblioteca do Twilio no seu ambiente Python. No terminal do seu editor de código, execute o comando: pip install twilio.

Instalando a biblioteca do Twilio no Python

Isso instalará a biblioteca necessária para conectar seu código Python à API do Twilio.

Código para Enviar SMS com Python

O código para enviar SMS com Python usando Twilio é simples e direto.

Primeiro, importamos o módulo Client da biblioteca twilio.rest, que é a classe usada para interagir com a API do Twilio.

Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

Em seguida, definimos as variáveis de autenticação, account_sid e auth_token, que você encontrará na sua página de dashboard da plataforma.

Python
from twilio.rest import Client

account_sid = "SEU_ACCOUNT_SID_TWILIO"
auth_token = "SEU_AUTH_TOKEN_TWILIO"

Substitua ambos os valores pelas suas credenciais reais.

Depois disso, criamos uma instância da classe Client, passando essas credenciais e armazenando-a na variável cliente.

Python
from twilio.rest import Client

account_sid = "SEU_ACCOUNT_SID_TWILIO"
auth_token = "SEU_AUTH_TOKEN_TWILIO"

cliente = Client(account_sid, auth_token)

Esse objeto cliente possui diversas propriedades e métodos relacionados ao envio de mensagens, chamadas, e-mails e outras funcionalidades oferecidas pelo Twilio.

No nosso caso, vamos focar na propriedade messages. Essa propriedade nos dá acesso às funcionalidades de mensagens SMS via a API do Twilio.

Para criar nossa mensagem, utilizaremos o método create() do objeto messages. Esse método é responsável por criar e enviar a mensagem de texto, retornando um objeto como resposta.

Ele precisa receber três parâmetros:

  • from_: O número de telefone da Twilio que será usado para enviar a mensagem.
  • to: O número de telefone que receberá a mensagem.
  • body: O conteúdo da mensagem. Esse conteúdo pode ser uma string simples ou uma f-string para inserir variáveis dinamicamente dentro do SMS.
Python
from twilio.rest import Client

account_sid = "SEU_ACCOUNT_SID_TWILIO"
auth_token = "SEU_AUTH_TOKEN_TWILIO"

cliente = Client(account_sid, auth_token)
qtde_likes = 10
mensagem = cliente.messages.create(
    from_="+SEU_TELEFONE_TWILIO",
    to="+TELEFONE_DESTINO",
    body=f"Se inscreva no canal e dê {qtde_likes} like no vídeo"
)

O objeto mensagem, retornado pelo método create() do cliente Twilio, contém várias informações sobre a mensagem que foi criada e enviada.

Entre essas informações, temos a propriedade body, que contém o texto da mensagem enviada. Assim, após enviar a mensagem, podemos visualizar o conteúdo no terminal do editor de códigos usando um print.

Python
from twilio.rest import Client

account_sid = "SEU_ACCOUNT_SID_TWILIO"
auth_token = "SEU_AUTH_TOKEN_TWILIO"

cliente = Client(account_sid, auth_token)
qtde_likes = 10
mensagem = cliente.messages.create(
    from_="+SEU_TELEFONE_TWILIO",
    to="+TELEFONE_DESTINO",
    body=f"Se inscreva no canal e dê {qtde_likes} like no vídeo"
)

print(mensagem.body)

Executando esse código, a mensagem será enviada para o seu celular a partir da sua conta do Twilio.

mensagem enviada para o celular

Como essa é uma conta gratuita, o Twilio adiciona uma mensagem de aviso informando que essa é uma conta de testes.

Durante o desenvolvimento, é recomendável usar o seu número de celular como destinatário para realizar os testes e configurações necessárias.

Quando estiver pronto para produção, você poderá adquirir um plano completo do Twilio e remover essas limitações.

Para mais informações sobre as funcionalidades do Twilio, consulte a documentação oficinal.

Boas Práticas ao Trabalhar com o Twilio – Variáveis de Ambiente

Uma boa prática ao trabalhar com o Twilio, ou qualquer outra API que use chaves e tokens de acesso, é mantê-los seguros utilizando variáveis de ambiente.

Isso evita que, ao compartilhar seu projeto, suas credenciais fiquem expostas diretamente no código.

Se quiser aprender o que são variáveis de ambiente e como configurá-las, confira a nossa aula completa sobre o assunto: Variáveis de Ambiente no Python – O que São e Como Usá-las?

Como Enviar SMS com Python – Passo a Passo com Twilio

Na aula de hoje, eu te mostrei de forma prática e rápida o passo a passo de como enviar SMS com Python utilizando a biblioteca Twilio.

Essa é uma tarefa relativamente simples que pode ser concluída em minutos. Com a facilidade da API Twilio, você pode integrar a funcionalidade de mensagens SMS em seus aplicativos e projetos de forma segura e fácil.

Além disso, o Twilio oferece suporte a outros serviços, como e-mails e chamadas telefônicas, permitindo uma variedade de formas de automatizar comunicações e alertas.

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes de Python

Posts mais recentes da Hashtag Treinamentos

Perguntas frequentes

1. O que é o Twilio?

O Twilio é uma plataforma de comunicação na nuvem que oferece APIs para enviar e receber SMS, fazer chamadas de voz, WhatsApp e mais. Em vez de lidar com operadoras, você usa a API dele. No Python, a biblioteca oficial twilio facilita o envio de mensagens com poucos comandos, ideal para automações e notificações.

2. Como instalar a biblioteca do Twilio no Python?

Basta rodar pip install twilio no terminal. Depois, importe o cliente com from twilio.rest import Client e crie a conexão passando seu Account SID e Auth Token, obtidos no painel da Twilio. A partir daí, você já pode chamar client.messages.create() para enviar SMS diretamente pelo código Python.

3. Preciso pagar para enviar SMS com o Twilio?

A Twilio funciona por créditos: ao criar a conta, você ganha um saldo de testes para experimentar o envio, geralmente para números verificados. Para uso amplo e sem restrições, é preciso adicionar créditos, cobrados por mensagem enviada. Para estudar e testar automações, o saldo inicial gratuito costuma ser suficiente.

4. Dá para enviar SMS grátis com Python?

Com a Twilio, o envio para números verificados usando o saldo de testes é uma forma de começar sem custo. Também existem outras plataformas de SMS com camadas gratuitas ou de avaliação. Vale lembrar que o envio real em massa costuma ser cobrado por mensagem, então o gratuito é ótimo para aprender e testar.