Conectar Slack ao AnyMarket e notificar novos pedidos

Bom dia, tudo certo?

Como conectar passo a passo o Slack ao AnyMarket 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 AnyMarket e receber notificações de novos pedidos, você precisará seguir os seguintes passos:

  1. Acesse o site do AnyMarket e obtenha suas chaves de API.
  2. Abra o Google App Script e crie um novo script.
  3. Copie e cole o código abaixo no seu novo script e substitua as chaves da API do AnyMarket e do Slack pelos valores corretos:
function main() {

  var api_key = 'sua_api_key';
  var api_secret = 'sua_api_secret';
  
  var slack_webhook_url = 'https://hooks.slack.com/services/xxxxxx/yyyyyy/zzzzzz';
  
  var payload = {
    "query": "{ orders(range: {creationDate: {from: \"2022-01-01\", to: \"2022-01-31\"}}, pagination: {from: 0, to: 50}) { items { codStatus cod Marketplace { name } customer { name email shippingAddress { streetNumber street complement neighborhood city state } } } } }"
  };
  
  var options = {
    'method': 'post',
    'contentType': 'application/json',
    'payload': JSON.stringify(payload)
  };
  
  var response = UrlFetchApp.fetch('https://api.anymarket.com.br/v2/orders/graphql', options);
  
  var result = JSON.parse(response.getContentText());
  
  var orders = result.data.orders.items;
  
  for (var i = 0; i < orders.length; i++) {
    var order = orders[i];
    
    var slack_payload = {
      "text": "Novo pedido recebido!",
      "attachments": [
        {
          "text": "Marketplace: " + order.Marketplace.name + "\nCódigo do pedido: " + order.cod + "\nStatus da venda: " + order.codStatus + "\nCliente: " + order.customer.name + "\nE-mail do cliente: " + order.customer.email + "\nEndereço de entrega: " + order.customer.shippingAddress.street + " " + order.customer.shippingAddress.streetNumber + " " + order.customer.shippingAddress.complement + " - " + order.customer.shippingAddress.neighborhood + " - " + order.customer.shippingAddress.city + " - " + order.customer.shippingAddress.state
        }
      ]
    };
    
    var slack_options = {
      'method': 'post',
      'contentType': 'application/json',
      'payload': JSON.stringify(slack_payload)
    };
    
    UrlFetchApp.fetch(slack_webhook_url, slack_options);
    
  }
  
}
  1. Abra o Google Planilhas e clique em Ferramentas > Editor de Scripts.
  2. Cole o mesmo código no editor do script e salve.
  3. Clique em Executar > main() para testar seu script.

Agora, toda vez que um novo pedido for recebido no AnyMarket, você receberá uma notificação no Slack com os detalhes do pedido.