Para uma agência web, crescer rápido demais frequentemente se torna um pesadelo. Quando isso leva ao aumento de tarefas repetitivas, os recursos disponíveis se esgotam muito antes da conclusão do trabalho: seus fluxos de trabalho ficam fragmentados, seus processos são ineficientes e sua equipe fica desmotivada.

O crescimento saudável e sustentável exige uma mudança fundamental na mentalidade: trabalhar de forma mais inteligente, não mais difícil. Nesse cenário, a automação não é um luxo; é um requisito estratégico para a sobrevivência e o sucesso.

Mas como transformar a ideia de trabalhar de forma mais inteligente em um fluxo de trabalho funcional? A resposta rápida é: conecte sua infraestrutura às suas ferramentas de gerenciamento.

Neste guia, mostraremos a você como conectar sua infraestrutura de hospedagem Kinsta e seu sistema de gerenciamento de projetos Trello, criando uma camada de sincronização personalizada e automatizada.

Vamos começar.

A lacuna entre infraestrutura e gerenciamento

Se você usa o Trello para gerenciar os projetos da sua agência, já conhece o ritual de onboarding: para cada site que você lança, é necessário criar e configurar manualmente um quadro no Trello e preencher checklists com todas as tarefas envolvidas, desde a configuração de DNS até a otimização de SEO.

Depois vem a manutenção diária, tarefas repetitivas e verificações realizadas regularmente para garantir que os sites dos clientes funcionem corretamente, que o uso de recursos permaneça dentro dos limites do plano e que as atualizações sejam aplicadas sem erros. Em um fluxo de trabalho manual, isso significa acessar vários painéis apenas para verificar se um site não está atingindo o limite de largura de banda ou ficando sem espaço em disco.

Quanto mais projetos de clientes você assume, maior a chance de erro humano e mais provável se torna a “fadiga de monitoramento”. Considere o ciclo de vida padrão de um site de cliente:

  • O processo de integração: Provisionamento de ambientes, configuração de DNS, implantação de SSL e configuração de CI/CD.
  • A fase operacional: Monitoramento da saúde do servidor e do consumo de recursos para evitar indisponibilidade ou custos inesperados por uso excedente.

Na prática, ambas as fases exigem coordenação organizacional constante. O principal problema é o efeito de silo: hospedagem e gerenciamento são dois ecossistemas isolados. A informação só flui se alguém se lembrar de verificar uma métrica e enviar uma mensagem no Slack.

Se um site atingir seu limite de recursos, mas o desenvolvedor não atualizar o gerente de projetos, as ineficiências e os atrasos serão inevitáveis.

As agências modernas e orientadas para o crescimento não podem depender de coordenação manual. A comunicação deve fluir de forma contínua e automática da infraestrutura (hospedagem Kinsta) diretamente para a ferramenta de gerenciamento (Trello).

É aqui que a API da Kinsta se torna o membro mais valioso da sua equipe, ajudando você a transformar dados brutos de hospedagem em informações úteis para seus gerentes de projeto.

A stack tecnológica: por que Kinsta e Trello

Escolher as ferramentas certas é o primeiro passo para uma automação eficaz. Kinsta e Trello formam uma combinação ideal porque ambas as plataformas oferecem APIs robustas que permitem construir uma ponte automatizada entre os aspectos técnicos e de gerenciamento dos seus fluxos de trabalho.

  • A API da Kinsta: a Kinsta fornece uma API RESTful que permite que os desenvolvedores da sua equipe executem ações técnicas e operacionais de forma programática – desde o provisionamento de ambientes até a extração de análises em tempo real e registros do servidor. A Kinsta é uma infraestrutura programável.
  • Sistema de gerenciamento de projetos do Trello: o Trello é muito mais do que uma coleção de notas e listas; é uma representação visual dos processos de sua agência com base na lógica do quadro Kanban. A API do Trello ajuda você a transformar um painel estático em um ambiente dinâmico que responde a eventos no seu servidor.

Ao integrar Kinsta e Trello, você transforma os dados brutos do MyKinsta em insights acionáveis para suas equipes. Sem trabalho manual, sem etapas perdidas, sem sobrecarga e sem desperdício do tempo dos seus desenvolvedores.

Dito isso, é hora de preparar o ambiente e reunir suas ferramentas.

Reúna suas ferramentas

Antes de começar a programar, você precisará reunir as ferramentas necessárias:

  • Chave API da Kinsta
  • Chave API do Trello
  • Token do Trello
  • Um repositório de código no GitHub

Vamos começar com a chave API da Kinsta.

Etapa 1: gerar uma chave API da Kinsta

A chave API da Kinsta permite que você acesse seu serviço de hospedagem por meio da API. Siga estas etapas para criar uma nova chave API da Kinsta:

  1. Acesse o painel MyKinsta.
  2. Navegue até a página Chaves API (Seu nome > Configurações da empresa > Chaves API).
  3. Clique em Criar chave API.
  4. Escolha uma data de expiração ou defina uma data de início personalizada e o número de horas até a expiração da chave.
  5. Dê um nome exclusivo para a chave.
  6. Clique em Gerar.
Criar chave API no MyKinsta.
Criar chave API no MyKinsta.

Certifique-se de copiar sua chave API e armazená-la em um local seguro. Você não poderá visualizá-la novamente. Caso a perca, será necessário revogá-la e gerar uma nova.

Etapa 2: gerar chave API e token do Trello

Para gerar uma chave API, o Trello exige que você crie um Trello Power-Up, que é essencialmente um aplicativo Trello. Para começar, acesse o portal de administração do Power-Up.

Portal de administração de Power-Ups do Trello
Portal de administração de Power-Ups do Trello.

Clique em New e preencha o formulário exibido.

Formulário de novo aplicativo do Trello.
Formulário de novo aplicativo do Trello.

Depois de salvar suas informações, você será redirecionado para o painel do Power-Up. Digite os detalhes necessários e salve suas configurações. Em seguida, clique em API Key no menu à esquerda e, em seguida, em Generate a new API key no meio da página.

Gerar nova chave API do Trello.
Gerar nova chave API do Trello.

Pronto! Agora você já tem sua chave API do Trello. Certifique-se de armazená-la em um local seguro.

Chave API e secret do Trello
Copie e cole sua chave API do Trello em um local seguro.

No entanto, apenas a chave API não é suficiente para integrar o Trello aos seus aplicativos. Você também precisa gerar um token. Clique no link Token à direita para acessar uma página que lista as permissões que você está concedendo ao seu Power-Up. Revise essas permissões e autorize o Trello a compartilhar os dados.

Token do Trello.
Copie e cole o token do Trello.

Copie e cole o token do Trello em um local seguro.

Etapa 3: criar um repositório de código no GitHub

O GitHub não é apenas um repositório de código. Também é um ambiente onde você pode configurar tarefas repetitivas e automações.

No GitHub, você precisará configurar os três itens a seguir:

  • O repositório, que hospeda seu código;
  • Secrets, usados para armazenar suas chaves API e token;
  • O fluxo de trabalho, que contém as instruções de automação.

1. Criar o repositório do GitHub

No GitHub, clique no botão verde New.

  1. Dê um nome ao seu repositório.
  2. Adicione uma descrição.
  3. Defina a visibilidade como Private.
  4. Marque a opção Add README.
  5. Clique em Create repository.
Criar um novo repositório do GitHub.
Criar um novo repositório do GitHub.

2. Configurar seus Action secrets

Em seguida, você precisa configurar seus secrets. Este é um passo importante porque permite evitar a inclusão das suas chaves API diretamente no código.

No seu novo repositório, clique na aba Settings no topo da página. No menu lateral esquerdo, clique em Secrets and variables e depois em Actions.

Página de configuração de secrets e variables do Actions.
Página de configuração de secrets e variables do Actions.

Clique em New repository secret e adicione suas chaves API e token.

Secrets do repositório GitHub.
Secrets do repositório GitHub.

3. Configurar o fluxo de trabalho

Agora você precisa conceder permissões de escrita ao GitHub. Ainda em Settings, acesse Actions > General.

Role até a seção Workflow permissions e marque a opção Read and write permissions. Em seguida, clique em Save.

Permissões de fluxo de trabalho do GitHub.
Permissões de fluxo de trabalho do GitHub.

Automatizando o onboarding com a API da Kinsta e o Trello

Agora você tem suas chaves API e o token do Trello. O próximo passo é integrar sua hospedagem da Kinsta ao seu sistema de gerenciamento de projetos Trello.

Usaremos o GitHub Actions para executar periodicamente um script de sincronização entre a Kinsta e o Trello. Esse processo automatizado consultará a API da Kinsta em intervalos definidos para identificar novos sites e, em seguida, usará a API do Trello para garantir que seu quadro do Trello reflita perfeitamente o portfólio de sites da Kinsta.

No GitHub, você precisa criar um arquivo de configuração YAML para especificar quando o script deve ser executado. Em nosso exemplo, o script será executado a cada 30 minutos.

Volte para a seção Code do seu repositório e clique em Add file > Create new file.

Insira .github/workflows/main.yml no nome do arquivo. O GitHub criará automaticamente as pastas .github e workflows. Em seguida, cole o seguinte código:

name: Kinsta-Trello Integration
on:
  schedule:
    - cron: '*/30 * * * *' # Run every 30 minutes
  workflow_dispatch:       # Allows to start it manually for testing

jobs:
  run-sync:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: Run automation script
        env:
          KINSTA_API_KEY: ${{ secrets.KINSTA_API_KEY }}
          KINSTA_COMPANY_ID: ${{ secrets.KINSTA_COMPANY_ID }}
          TRELLO_API_KEY: ${{ secrets.TRELLO_API_KEY }}
          TRELLO_TOKEN: ${{ secrets.TRELLO_TOKEN }}
        run: node index.js

Depois de concluir, clique no botão verde Commit changes….

A configuração inicial está concluída. Agora você pode seguir para a criação do script.

Etapa 2: criar o script

Você precisará criar um novo arquivo index.js no diretório raiz do seu projeto do GitHub e adicionar o código mostrado nas seções a seguir.

1. Declarar variáveis

O primeiro passo é declarar as variáveis que o script precisa para executar suas tarefas.

const KINSTA_API_URL = 'https://api.kinsta.com/v2';
const TRELLO_API_URL = 'https://api.trello.com/1';

const secrets = {
	kinsta: process.env.KINSTA_API_KEY,
	company: process.env.KINSTA_COMPANY_ID,
	trelloKey: process.env.TRELLO_API_KEY,
	trelloToken: process.env.TRELLO_TOKEN
};

2. O próximo passo é definir a função de automação.

A próxima etapa é definir a função de automação.

async function startAutomation() {
	try {
		console.log("🚀 Starting Kinsta-Trello automation...");

		const kinstaUrl = `${KINSTA_API_URL}/sites?company=${secrets.company}`;

		const kinstaResponse = await fetch(kinstaUrl, {
			method: 'GET',
			headers: { 
				'Authorization': `Bearer ${secrets.kinsta}` 
			}
		});

		if (!kinstaResponse.ok) throw new Error(`Kinsta API error: ${kinstaResponse.status}`);

		const kinstaData = await kinstaResponse.json();

		const sites = kinstaData.company?.sites || [];

		console.log(`✅ Successfully fetched ${sites.length} sites from Kinsta.`);

		const trelloResponse = await fetch(`${TRELLO_API_URL}/members/me/boards?key=${secrets.trelloKey}&token=${secrets.trelloToken}`);
		
		if (!trelloResponse.ok) throw new Error(`Trello API error: ${trelloResponse.statusText}`);
		
		const trelloBoards = await trelloResponse.json();

		for (const site of sites) {
			const boardExists = trelloBoards.find(board => board.name === site.name);

			if (!boardExists) {
				console.log(`✨ New site found: ${site.name}. Provisioning workflow...`);

				const createBoardUrl = `${TRELLO_API_URL}/boards/?name=${encodeURIComponent(site.name)}&defaultLists=false&key=${secrets.trelloKey}&token=${secrets.trelloToken}`;
				const newBoardResponse = await fetch(createBoardUrl, { method: 'POST' });
				const newBoard = await newBoardResponse.json();

				if (newBoardResponse.ok) {
					console.log(`✅ Board created for ${site.name}. Setting up workflow...`);

					const toDoListId = await createWorkflow(newBoard.id);

					if (toDoListId) {
						await createGoLiveCard(toDoListId);
					}
				} else {
					console.log(`❌ Failed to create board for ${site.name}.`);
				}
			} else {
				console.log(`ℹ️ Site "${site.name}" already has a board. Skipping.`);
			}
		}

		console.log("🏁 Automation workflow finished!");
	
	} catch (error) {
		console.error("❌ Critical error during automation:", error.message);
	}
}

startAutomation();

Vamos analisar essa função bloco por bloco.

O primeiro console.log indica que o processo foi iniciado:

console.log("🚀 Starting Kinsta-Trello automation...");

O código a seguir recupera sites da sua empresa no MyKinsta:

const kinstaUrl = `${KINSTA_API_URL}/sites?company=${secrets.company}`;

const kinstaResponse = await fetch(kinstaUrl, {
	method: 'GET',
	headers: { 
		'Authorization': `Bearer ${secrets.kinsta}` 
	}
});

if (!kinstaResponse.ok) throw new Error(`Kinsta API error: ${kinstaResponse.status}`);

const kinstaData = await kinstaResponse.json();

const sites = kinstaData.company?.sites || [];

console.log(`✅ Successfully fetched ${sites.length} sites from Kinsta.`);
  • Se a resposta não for kinstaResponse.ok, você receberá uma mensagem de erro. Se a API retornar um resultado válido, a função armazenará a lista de sites no array sites e exibirá uma mensagem de sucesso.

O próximo passo é recuperar seus quadros existentes no Trello:

const trelloResponse = await fetch(`${TRELLO_API_URL}/members/me/boards?key=${secrets.trelloKey}&token=${secrets.trelloToken}`);

if (!trelloResponse.ok) throw new Error(`Trello API error: ${trelloResponse.statusText}`);

const trelloBoards = await trelloResponse.json();

Em seguida, vamos passar para a lógica de sincronização.

for (const site of sites) {
	const boardExists = trelloBoards.find(board => board.name === site.name);

	if (!boardExists) {
		console.log(`✨ New site found: ${site.name}. Provisioning workflow...`);

		const createBoardUrl = `${TRELLO_API_URL}/boards/?name=${encodeURIComponent(site.name)}&defaultLists=false&key=${secrets.trelloKey}&token=${secrets.trelloToken}`;
		const newBoardResponse = await fetch(createBoardUrl, { method: 'POST' });
		const newBoard = await newBoardResponse.json();

		if (newBoardResponse.ok) {
			console.log(`✅ Board created for ${site.name}. Setting up workflow...`);

			const toDoListId = await createWorkflow(newBoard.id);

			if (toDoListId) {
				await createGoLiveCard(toDoListId);
			}
		} else {
			console.log(`❌ Failed to create board for ${site.name}.`);
		}
	} else {
		console.log(`ℹ️ Site "${site.name}" already has a board. Skipping.`);
	}
}
  • O loop for itera sobre os elementos do array sites, ou seja, a lista de sites da empresa no MyKinsta, e verifica se existe um quadro para cada site. Se não existir um quadro com o nome do site, ele cria um.
  • Se o novo quadro tiver sido criado com êxito (if (newBoardResponse.ok) {...}), chame as funções createWorkflow() e createGoLiveCard() descritas abaixo. Observe que createGoLiveCard() só é chamada para sua lista de tarefas (To Do).

3. Definir a função createWorkflow()

A função createWorkflow() cria três listas padrão em seu espaço do Trello e retorna o ID da lista de tarefas (To Do).

async function createWorkflow(boardId) {
	const lists = ['To Do', 'Doing', 'Done'];
	let toDoListId = null;

	for (const listName of lists) {
		const url = `${TRELLO_API_URL}/boards/${boardId}/lists?name=${encodeURIComponent(listName)}&key=${secrets.trelloKey}&token=${secrets.trelloToken}`;
		const response = await fetch(url, { method: 'POST' });
		const newList = await response.json();

		console.log(`   - List "${listName}" created.`);

		if (listName === 'To Do') toDoListId = newList.id;
	}
	return toDoListId;
}

4. Definir a função auxiliar createGoLiveCard()

Agora você precisa definir a função que gera o checklist Go-Live Pipeline.

async function createGoLiveCard(listId) {
	const cardUrl = `${TRELLO_API_URL}/cards?idList=${listId}&name=${encodeURIComponent('🚀 Go-Live Pipeline')}&desc=${encodeURIComponent('Standard agency tasks for site launch.')}&key=${secrets.trelloKey}&token=${secrets.trelloToken}`;
	const cardResponse = await fetch(cardUrl, { method: 'POST' });
	const card = await cardResponse.json();

	if (cardResponse.ok) {
		const checklistUrl = `${TRELLO_API_URL}/checklists?idCard=${card.id}&name=Launch%20Tasks&key=${secrets.trelloKey}&token=${secrets.trelloToken}`;
		const checklistResponse = await fetch(checklistUrl, { method: 'POST' });
		const checklist = await checklistResponse.json();

		const tasks = [
			'Point DNS to Kinsta',
			'Install & Force SSL (Let\'s Encrypt)',
			'Set up Search Console & Analytics',
			'Performance Test (Kinsta APM)',
			'Final Backup before Launch'
		];

		for (const task of tasks) {
			await fetch(`${TRELLO_API_URL}/checklists/${checklist.id}/checkItems?name=${encodeURIComponent(task)}&key=${secrets.trelloKey}&token=${secrets.trelloToken}`, {
				method: 'POST'
			});
		}
		console.log(`   - Go-Live Pipeline card with checklist created.`);
	}
}

Essa função faz o seguinte:

  • Primeiro, ela usa a API do Trello para criar a lista Go-Live Pipeline.
  • Em seguida, se a resposta for cardResponse.ok, ela adiciona uma lista com 5 itens ao cartão Tarefas (To Do).

5. Executar o fluxo de trabalho

É hora de testar seu código. Primeiro, faça commit das suas alterações e, em seguida, acesse a seção Actions (link no menu superior).

Fazer commit das alterações no GitHub.
Fazer commit das alterações no GitHub.

Quando terminar, clique em seu aplicativo no menu à esquerda. Em nosso exemplo, é Kinsta-Trello integration.

Página do GitHub Actions.
Página do GitHub Actions.

Clique no botão Run workflow à direita. Isso iniciará seu workflow. Clique no workflow em execução e depois em Run automation script. Você verá as etapas do processo em andamento, junto com mensagens de sucesso de console.log ou mensagens de erro se o processo falhar.

Executar script de automação no GitHub.
Executar script de automação no GitHub.

Conforme mostrado na imagem acima, o script criou um novo quadro do Trello com três listas, incluindo a lista do Pipeline Go-Live. As imagens a seguir mostram o novo quadro do Trello e a checklist do Pipeline Go-Live dentro do cartão To Do.

Um quadro do Trello foi criado automaticamente.
Um quadro do Trello foi criado automaticamente.
O checklist ‘Go-Live’ Pipeline foi adicionado à lista ‘To Do’.
O checklist ‘Go-Live’ Pipeline foi adicionado à lista ‘To Do’.

Monitoramento proativo com a API da Kinsta e o Trello

A integração da hospedagem da Kinsta com o gerenciamento de projetos do Trello vai muito além do onboarding inicial. Ao aproveitar suas respectivas APIs, você pode manter um fluxo contínuo de comunicação entre os dois ambientes, garantindo que sua equipe permaneça informada em tempo real sobre a saúde dos seus sites.

Por exemplo, você pode adicionar automaticamente um cartão do Trello ao quadro da sua equipe sempre que ocorrer um evento crítico, como alto uso de largura de banda ou pouco espaço em disco. O sistema pode gerar automaticamente um cartão no quadro da equipe técnica, completo com um checklist de tarefas.

Usando a mesma lógica e as mesmas ferramentas que usamos para onboarding, você também pode automatizar o monitoramento e o gerenciamento de health checks dos seus sites. Isso exige um novo arquivo de configuração e um script dedicado: volte ao GitHub e crie o arquivo.github/workflows/health-check.yml com o seguinte código:

name: Daily Health Check

on:
  schedule:
    - cron: '0 9 * * *' # Runs at 09:00
  workflow_dispatch:    # Start manually

jobs:
  health-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - name: Run Health Check
        env:
          KINSTA_API_KEY: ${{ secrets.KINSTA_API_KEY }}
          KINSTA_COMPANY_ID: ${{ secrets.KINSTA_COMPANY_ID }}
          TRELLO_API_KEY: ${{ secrets.TRELLO_API_KEY }}
          TRELLO_TOKEN: ${{ secrets.TRELLO_TOKEN }}
        run: node health-check.js

Estes são os pontos principais deste script de configuração:

  • Configuramos um temporizador automático para executar o script todos os dias às 09:00 UTC ((schedule: - cron: '0 9 * * *').
  • O workflow_dispatch executa o script a qualquer momento por meio da aba Actions no GitHub. Isso é especialmente útil durante o desenvolvimento e a depuração.
  • Em seguida, definimos a sequência de operações: o comando final usa o node para executar o arquivo health-check.js.

1. Declarar variáveis

Navegue até o diretório raiz do seu repositório, crie um arquivo chamado health-check.js e declare as seguintes variáveis:

const KINSTA_API_URL = 'https://api.kinsta.com/v2';
const TRELLO_API_URL = 'https://api.trello.com/1';

const secrets = {
	kinsta: process.env.KINSTA_API_KEY,
	company: process.env.KINSTA_COMPANY_ID,
	trelloKey: process.env.TRELLO_API_KEY,
	trelloToken: process.env.TRELLO_TOKEN
};

2. Obter sites da Kinsta

Em seguida, defina a função getKinstaSites():

async function getKinstaSites() {
	const url = `${KINSTA_API_URL}/sites?company=${secrets.company}`;
	const response = await fetch(url, {
		method: 'GET',
		headers: { 'Authorization': `Bearer ${secrets.kinsta}` }
	});
	if (!response.ok) throw new Error(`Kinsta API error: ${response.status}`);
	const data = await response.json();
	return data.company?.sites || [];
}

Essa função retorna uma lista dos sites da empresa no MyKinsta ou um array vazio.

3. Obter uso de largura de banda

Defina uma função chamada getBandwidthUsage() que retorna o uso da largura de banda de um site.

async function getBandwidthUsage(siteId) {
  const url = `${KINSTA_API_URL}/sites/${siteId}/usage/bandwidth/this-month`;
  const response = await fetch(url, {
    method: 'GET',
    headers: { 'Authorization': `Bearer ${secrets.kinsta}` }
  });
  if (!response.ok) return null;
  const data = await response.json();
  const bytes = data.site?.this_month_usage?.bandwidth;
  return bytes !== undefined ? Math.round(bytes / (1024 * 1024)) : 0;
}

4. Criar cartões do Trello

A função a seguir gera um cartão intitulado “⚠️ Bandwidth Alert: High Traffic”:

async function postTrelloAlert(siteName, message) {
	const boardsResp = await fetch(`${TRELLO_API_URL}/members/me/boards?key=${secrets.trelloKey}&token=${secrets.trelloToken}`);
	const boards = await boardsResp.json();
	const board = boards.find(b => b.name === siteName);

	if (board) {
		const listsResp = await fetch(`${TRELLO_API_URL}/boards/${board.id}/lists?key=${secrets.trelloKey}&token=${secrets.trelloToken}`);
		const lists = await listsResp.json();
		const targetList = lists.find(l => l.name === 'To Do') || lists[0];

		const cardsResp = await fetch(`${TRELLO_API_URL}/lists/${targetList.id}/cards?key=${secrets.trelloKey}&token=${secrets.trelloToken}`);
		const cards = await cardsResp.json();
    
		const alertTitle = `⚠️ Bandwidth Alert: High Traffic`;
		if (!cards.find(c => c.name === alertTitle)) {
			await fetch(`${TRELLO_API_URL}/cards?idList=${targetList.id}&name=${encodeURIComponent(alertTitle)}&desc=${encodeURIComponent(message)}&key=${secrets.trelloKey}&token=${secrets.trelloToken}`, {
				method: 'POST'
			});
		console.log(`📌 Alert posted for ${siteName}`);
		}
	}
}
  • Observe a condição if (!cards.find(...)). Isso evita que você sobrecarregue o quadro com notificações duplicadas.

5. Executar o script

Por fim, defina uma função que monitore seus sites.

async function runMonitoring() {
  console.log("📊 Starting standalone Health Check...");
  const sites = await getKinstaSites();
  for (const site of sites) {
    const usage = await getBandwidthUsage(site.id);
    if (usage !== null) {
      console.log(`Site: ${site.name} | Usage: ${usage} MB`);
      if (usage > 100) { // Test threshold
        await postTrelloAlert(site.name, `Bandwidth usage: ${usage} MB.`);
      }
    }
  }
}

runMonitoring().catch(console.error);

Quando executada, essa função chama as funções definidas anteriormente:

  • getKinstaSites(): busca a lista de sites da empresa no MyKinsta;
  • getBandwidthUsage(): verifica o uso da largura de banda do mês atual para cada site;
  • postTrelloAlert(): gera automaticamente um cartão do Trello somente quando você atinge o limite e não existe nenhum cartão anterior.
Um cartão do Trello criado automaticamente após uma verificação de largura de banda.
Um cartão do Trello criado automaticamente após uma verificação de largura de banda.

Escale sua operação com mais inteligência e menos esforço com a Kinsta

Escalar não precisa significar trabalhar mais. Com uma estratégia de automação bem planejada, tarefas manuais repetitivas podem ser eliminadas e novos projetos podem ser adicionados ao seu portfólio sem sobrecarregar suas operações.

Ao preencher a lacuna entre a infraestrutura dos seus sites e o gerenciamento de projetos, você pode estabelecer canais de comunicação contínuos que convertem dados brutos de hospedagem em tarefas operacionais acionáveis.

Graças às APIs da Kinsta e às ações do GitHub, criamos um sistema automatizado de integração e monitoramento proativo que reduz erros humanos, alivia a carga de trabalho da sua equipe e garante prontidão para responder a problemas assim que surgirem. Com isso, você deixa de apagar incêndios e passa a se preparar proativamente para o futuro.

Pronto para automatizar os fluxos de trabalho da sua agência? Confira nossos planos e encontre o ideal para você.

Carlo Daniele Kinsta

Carlo é um apaixonado por webdesign e desenvolvimento frontend. Ele tem mais de 10 anos de experiência com WordPress e colaborou com diversas universidades e instituições educacionais na Itália e na Europa. Carlo já publicou inúmeros artigos e guias sobre WordPress, tanto em sites italianos quanto internacionais, além de revistas impressas. Você pode seguir ele no LinkedIn e no X.