TI24H Cloud

Guia de Integração

API de monitoramento de computadores com IA: consulte o status da frota, receba alertas em tempo real e acione correções — com uma chave de API por empresa.

Base: https://api.ti24h.cloud · Docs interativos: swagger.html

1. Como obter sua chave

  1. Entre no painel ti24h.cloud.
  2. Abra a aba Integrações.
  3. Clique em Gerar token (ex.: "ERP da empresa").
  4. Copie o token agora — ele só é mostrado uma vez. Formato: ti24h_<48 hex>.

Trate o token como senha. Ele dá acesso aos dados da SUA empresa, e só da sua.

2. Autenticação

Envie o token no header X-API-Key:

X-API-Key: ***

Limite: 120 req/min por token (HTTP 429). · Isolamento: cada token enxerga somente a própria empresa.

3. Endpoints (exemplos com curl)

3.1 Resumo da frota

curl -s https://api.ti24h.cloud/v1/api/status \
  -H "X-API-Key: ***"
# resposta
{
  "empresa": "Empresa Exemplo Ltda",
  "total_pcs": 12,
  "online": 11,
  "offline": 1,
  "alertas_abertos": { "info": 0, "aviso": 2, "critico": 1 }
}

3.2 Listar computadores

curl -s https://api.ti24h.cloud/v1/api/computadores -H "X-API-Key: ***"

Cada item traz id, nome, grupo, status (online/offline/manutencao), IPs e hardware.

3.3 Detalhe de um computador

curl -s https://api.ti24h.cloud/v1/api/computadores/6 -H "X-API-Key: ***"

Inclui os últimos 10 alertas do PC.

3.4 Alertas (com filtros)

curl -s "https://api.ti24h.cloud/v1/api/alertas?status=aberto&severidade=critico" \
  -H "X-API-Key: ***"

Filtros: status (aberto|resolvido|ignorado|todos) e severidade (info|aviso|critico). Cada alerta traz impacto (o que pode acontecer se não corrigir) e recomendacao (o que fazer).

3.5 Histórico de correções

curl -s https://api.ti24h.cloud/v1/api/correcoes -H "X-API-Key: ***"

3.6 Enfileirar uma correção

curl -s -X POST https://api.ti24h.cloud/v1/api/computadores/6/acoes \
  -H "X-API-Key: ***" \
  -H "Content-Type: application/json" \
  -d '{"tipo":"clear_temp"}'

O agente executa no próximo ciclo (até 5 min) e o resultado aparece no histórico.

tipoo que faz
clear_templimpa arquivos temporários do usuário
esvaziar_lixeiraesvazia a lixeira
limpeza_geraltemporários + lixeira
dns_flushlimpa o cache de DNS
restart_explorerreinicia o Explorer (Windows travado)
windows_update_fixrepara o serviço de Windows Update
otimizar_ssdTRIM + otimização (SSD)
desfragmentar_hdddesfragmenta (HD)
sfc_scanverifica e repara arquivos do sistema

4. Webhooks — alertas na sua URL

Cadastre uma URL na aba Integrações (ou via POST /v1/webhooks) e o TI24H envia um POST toda vez que um alerta abre ou resolve. Eventos: alerta.aberto, alerta.resolvido — ou * para todos.

Payload (alerta.aberto)

{
  "evento": "alerta.aberto",
  "ts": 1787238613,
  "empresa": { "id": 1, "nome": "Empresa Exemplo Ltda" },
  "computador": { "id": 6, "nome": "PC FISCAL" },
  "alerta": {
    "id": 123, "tipo": "disco_alto", "severidade": "critico",
    "titulo": "Disco C: acima de 90%", "valor": 92.5, "limite": 90,
    "impacto": "O disco está quase cheio... pode travar e perder dados.",
    "recomendacao": "Libere espaço: limpe temporários e esvazie a lixeira."
  }
}

Verificar a assinatura (obrigatório)

Todo POST traz X-TI24H-Signature: sha256=<HMAC-SHA256 do corpo bruto com o secret>

# PHP
$corpo = file_get_contents('php://input');
$esperado = 'sha256=' . hash_hmac('sha256', $corpo, SEU_SECRET);
if (!hash_equals($esperado, $_SERVER['HTTP_X_TI24H_SIGNATURE'] ?? '')) {
  http_response_code(401); exit('assinatura invalida');
}

# Python
import hmac, hashlib
esperado = 'sha256=' + hmac.new(secret.encode(), corpo, hashlib.sha256).hexdigest()
ok = hmac.compare_digest(esperado, assinatura)

Entrega: 3 tentativas com backoff (60s, 120s, 180s). Responda 2xx para confirmar. Teste: botão "testar" no painel (evento teste em até 1 min).

5. Códigos de erro

HTTPerrosignificado
401token_invalidoX-API-Key ausente, inválida ou revogada
404nao_encontradorecurso não existe (ou de outra empresa)
422script_nao_aprovadocorreção fora da allowlist
429rate_limitmais de 120 req/min
500erro_internofalha no servidor

6. Exemplo completo — bot de alertas no Telegram

#!/usr/bin/env bash
TOKEN_API="ti24h_5f3c..."
TG_TOKEN="***"
TG_CHAT="123456789"

ALERTAS=$(curl -s "https://api.ti24h.cloud/v1/api/alertas?status=aberto&severidade=critico" \
  -H "X-API-Key: ***")

echo "$ALERTAS" | python3 -c "
import json, sys, urllib.request, urllib.parse
for a in json.load(sys.stdin).get('alertas', []):
    msg = f" {a['severidade'].upper()} — {a['computador']}\n{a['titulo']}"
    url = 'https://api.telegram.org/botTG_TOKEN/sendMessage'
    urllib.request.urlopen(url, data=urllib.parse.urlencode({
        'chat_id': 'TG_CHAT', 'text': msg}).encode())
"

Dica: com webhook você não precisa de polling — o TI24H chama sua URL na hora.

7. Boas práticas