🎉 SEMANA DO CONSUMIDOR

Últimos dias para comprar os cursos com 50% de desconto

Ver detalhes

Postado em em 30 de maio de 2023

Você sabe o que é webhook e como construir a sua estrutura? Nesta aula vou te explicar tudo isso com um passo a passo simples!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

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

Fala Impressionadores! Você sabe o que é um Webhook? Sabe como enviar e receber ?

Nessa aula eu quero te mostrar o que é um webhook, qual a diferença entre ele, o JSON e o API para que você entenda como essa estrutura funciona.

Vou te dar alguns exemplos para ficar mais fácil de entender o que é e quando ele é utilizado.

Quer aprender mais sobre comunicação entre sistemas da internet?

Então vem comigo que eu vou te explicar sobre os webhooks, requisições HTTP e muito mais!

O que é um Webhook?

Como o próprio nome sugere Hook significa gancho, ou seja, é a forma com que duas ferramentas na internet conseguem se comunicar, um exemplo disso é quando você tem um site e nele existe um sistema de pagamento:

informativo de transação
informativo de transação

Esse sistema de pagamento precisa avisar para o seu site quando o pagamento deu certo, quando houve problemas no recebimento, quando a compra foi aprovada ou cancelada, etc.

Então basicamente quando a compra é feita o sistema do cartão envia uma informação para o site avisando se a compra foi concluída ou não, envia também o nome do cliente e outras informações.

As informações sigilosas do cartão ficam seguras, as únicas informações enviadas são as necessárias para o site entender a situação da transação.

e-mail de confirmação ou atualização
e-mail de confirmação ou atualização

O mesmo acontece com o e-mail que envia um webhook para o seu CRM para avisar quando o e-mail que você enviou foi aberto.

Então ele é uma forma de comunicação entre sistemas, você tanto pode receber quanto enviar um.

Geralmente o webhook é enviado em um formato JSON e isso pode causar algumas confusões, então se você tiver dúvidas pode olhar as aulas onde expliquei o que são JSON e API.

Basicamente o JSON é um dicionário com uma formatação específica enquanto a API é um sistema inteiro, uma API pode ter diversos pontos que recebem e enviam webhooks.

Resumindo, são informações enviadas de um sistema a outro no formato JSON que podem ser enviadas por uma API.

A estrutura do webhook é uma estrutura condicionada, ou seja, para enviar é necessário que uma condição seja satisfeita, essa condição pode ser o cliente passar o cartão, pode ser um cancelamento, a questão é que o envio está programado de acordo com esses eventos.

Como enviar um Webhook no Python?

Normalmente o webhook é transitado por meio de requisições HTTP que é como a internet se comunica.

Essas requisições existem em dois formatos:

  • GET -> Recebe
  • POST -> Envia

O primeiro passo é baixar a biblioteca requests e rodar ela em seu terminal:

>pip install request

Feito isso, importe a biblioteca e vamos começar o código:

import requests

request.post(link, data={})

O webhook sempre será endereçado para um link = endpoint específico que sempre vai estar disponível para receber alguma chamada, e essa é a primeira informação que vamos colocar dentro dos parênteses.

Após isso, vamos criar um dicionário com os dados da transação e modificar o formato do dicionário para o formato JSON, para fazer isso vamos precisar importar o JSON no código.

Código para enviar:

import requests

import json

# envia um webhook

link = "https://webhook.site/36991bfc-ea7a-4483-9ace-a9ffe261e283"

dicionario = {

    "nome": "Fulano",

    "valor": 999,

    "parcelas": 12,

}

dicionario_ajustado = json.dumps(dicionario)

requests.post(link, data=dicionario_ajustado)

Agora, vamos ver como receber.

Quando nós enviamos no código acima, criamos uma biblioteca, transformamos para o formato JSON e enviamos para um link disponível para receber webhooks.

Então para receber webhooks teremos que fazer o processo inverso, neste caso temos que criar o link que vai ficar disponível para receber webhooks.

Como criar o link?

Para criar o link vamos utilizar algum framework para a criação de API, neste caso vamos usar o Flask.

Dentro da estrutura do Flask vamos criar uma função dentro do Python, essa função vai receber uma informação que está no formato JSON e vai transformar de volta ao formato de uma biblioteca, o processo contrário que fizemos antes.

A partir daí você pode trabalhar com as informações da biblioteca como for mais conveniente dentro do seu código.

#flask

@ -> libera esse link de receber um POST

def receber_webhook():

        dicionário = request.json()

Essa lógica utilizada acima para receber webhooks foi explicada no detalhe na aula sobre API disponível gratuitamente! Clique no link!

Conclusão – O que é Webhook

Nessa aula eu te mostrei o que é um webhook, como criar, enviar e receber. Dessa forma você vai poder adicioná-los nas suas aplicações.

A partir de agora você têm mais essa ferramenta para usar quando estiver fazendo um projeto mais robusto.

Eu espero que aproveitem! Até a próxima!

Hashtag Treinamentos

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


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

Raquel evento Hashtag

Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.