Conectar Slack ao Yampi e notificar novos pedidos

Bom dia, tudo certo?

Como conectar passo a passo o Slack ao Yampi via API no Google App Script e Google Planilhas, para receber uma notificação a cada nova venda efetuada?

@ChatGPT

Para conectar o Slack ao Yampi e receber notificações de novos pedidos, siga estes passos:

  1. Primeiro, você precisa criar um webhook no Slack para receber as notificações. Para isso, acesse a página de configurações do seu workspace do Slack e navegue até a seção “Integrações de aplicativos”.
  2. Clique em “Webhooks” e depois em “Adicionar webhook”.
  3. Escolha o canal onde deseja receber as notificações e clique em “Autorizar”.
  4. Copie a URL do webhook gerada pelo Slack.

Agora, vamos conectar o Yampi ao Google Planilhas via API:

  1. No Yampi, acesse a página de configurações da API.
  2. Clique em “Gerar token” e copie o token gerado.
  3. No Google Planilhas, abra uma nova planilha e vá em “Ferramentas” > “Editor de scripts”.
  4. Cole o seguinte código no editor de scripts:
function getNewOrders() {
  var token = "seu_token_do_yampi";
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Nome da planilha");
  var slackUrl = "URL_do_Webhook_do_Slack";
  var orders = JSON.parse(UrlFetchApp.fetch(
    "https://api.yampi.com.br/lojista/v1/pedidos?status=APROVADO",
    { headers: { Authorization: "Bearer " + token } }
  ).getContentText());
  var lastOrder = sheet.getRange("A1").getValue();
  for (var i = 0; i < orders.length; i++) {
    if (orders[i].pedido > lastOrder) {
      var message = "Novo pedido #" + orders[i].pedido + " no valor de R$" + orders[i].total_pedido.toFixed(2);
      var payload = {
        text: message,
        channel: "#nome_do_canal_do_slack"
      };
      var options = {
        method: "POST",
        contentType: "application/json",
        payload: JSON.stringify(payload)
      };
      UrlFetchApp.fetch(slackUrl, options);
      sheet.insertRowBefore(2);
      sheet.getRange("A2:C2").setValues([
        [orders[i].pedido, orders[i].data_pedido, orders[i].total_pedido]
      ]);
    } else {
      break;
    }
  }
  sheet.getRange("A1").setValue(orders[0].pedido);
}
  1. Substitua “seu_token_do_yampi” pelo token gerado no Yampi, “Nome da planilha” pelo nome da sua planilha e “URL_do_Webhook_do_Slack” pela URL do webhook do Slack que você copiou anteriormente.
  2. Salve o script e dê um nome para a função (por exemplo, “getNewOrders”).
  3. Clique em “Executar” e autorize o script a acessar sua conta do Google.
  4. Agora, o script será executado e enviará uma notificação de novo pedido para o canal do Slack que você escolheu, sempre que um novo pedido for recebido no Yampi.

Espero que isso ajude!