O que é

A API para automações expõe as mesmas ações do painel por HTTPS, para o n8n, o Make ou um sistema seu. Usa a mesma chave do agente de IA, com as mesmas permissões e a mesma auditoria: o que a chave não pode fazer pelo agente, também não pode pela API. Fica em Configurações → Automação/MCP (Beta) → API para automações (recurso do GW Server Pro).

Esta API é diferente dos clientes de API do módulo de usuários, que servem para criar e gerenciar contas de clientes a partir de um gateway de pagamento. Ver API e webhooks.

Criando a chave

Na aba API para automações, clique em Nova chave para automação. O nível padrão é Operar. Para o n8n, prefira uma lista de IPs de origem com o IP fixo do servidor dele (ver Chaves, níveis e permissões). A chave aparece uma vez só.

Como chamar

  • Endereço: https://<domínio do painel>/api.php?action=AÇÃO
  • Cabeçalho: Authorization: Bearer gwm_…
  • Consultas são GET (parâmetros na URL); mudanças são POST com corpo JSON.
  • A resposta é sempre {"ok": true, "data": …} ou {"ok": false, "error": "…"}.
# listar os sites
curl -H "Authorization: Bearer $GW_TOKEN" \
  "https://SEU-PAINEL/api.php?action=sites"

# limpar o cache de um site
curl -X POST -H "Authorization: Bearer $GW_TOKEN" -H "Content-Type: application/json" \
  -d '{"domain":"exemplo.com"}' \
  "https://SEU-PAINEL/api.php?action=site_cache_purge"

# ação longa devolve data.job_id: acompanhe até status "done" ou "error"
curl -H "Authorization: Bearer $GW_TOKEN" \
  "https://SEU-PAINEL/api.php?action=job_status&job_id=JOB_ID"

No n8n

Nó HTTP Request:

Method:          POST
URL:             https://SEU-PAINEL/api.php?action=site_backup_run
Authentication:  Generic Credential Type → Header Auth
Name:  Authorization
Value: Bearer gwm_SUA_CHAVE
Send Body:       JSON → {"domain": "exemplo.com"}

Para o nó AI Agent do n8n, use o MCP em vez da API: nó MCP Client Tool, endpoint https://SEU-PAINEL/mcp, transporte HTTP Streamable, autenticação Bearer.

Referência das ações

A própria aba traz a Referência das ações, gerada do catálogo do painel: cada ação com o método, o nível exigido, se é destrutiva, se vira job e os parâmetros exatos (tipo, obrigatório, valores aceitos, padrão). Tem busca (“cache”, “backup”, “mautic”) e filtro por área. Parâmetro que a ação não conhece é recusado com a lista dos aceitos.

Códigos de resposta

Código Significa
401 Chave inválida, vencida ou origem não liberada (o mesmo erro de propósito: o motivo fica na Atividade)
403 Fora do escopo da chave (nível ou site)
405 Método errado (tente POST)
409 A ação precisa da aprovação do dono: repita com o cabeçalho X-GWS-Approval depois de aprovada (ver Desfazer e aprovação)

Webhooks de eventos

O servidor avisa um endereço seu (no n8n, um nó Webhook) quando algo acontece. Configure em Webhooks de eventos, na mesma aba: marque Ligado, informe a URL do webhook, escolha os eventos e salve. O segredo HMAC aparece só na hora: guarde no n8n.

Evento Quando
job.completed Job concluído (instalação, backup, troca de PHP, atualização…)
job.failed Job com falha
approval.requested Agente pediu aprovação para ação destrutiva
approval.decided Aprovação decidida no painel
agent.new_ip Chave usada a partir de um IP novo
checkpoint.restored Site restaurado a partir de um ponto de restauração
update.available Versão nova do GW Server disponível (uma vez por versão)
site.import_started Importação de site de outra hospedagem aplicada (começou)

Cada POST vem assinado: confira o HMAC-SHA256 do corpo com o segredo no cabeçalho X-GWS-Signature. O botão Enviar teste manda um evento de exemplo, Gerar novo segredo troca o segredo, e Últimas entregas mostra o histórico com o código HTTP de cada envio. Endereços internos (loopback, rede privada) são recusados como destino.

Veja também