⚡ DOCUMENTAÇÃO PARA DESENVOLVEDORES & REVENDEDORES

Manual de Integração: API REST & Servidor MCP

Conecte seus agentes autônomos de Inteligência Artificial (Cursor, Claude Desktop, Antigravity, n8n, LangChain, Flowise e bots do WhatsApp/Telegram) para cadastrar clientes, ativar licenças e sincronizar listas M3U automaticamente na nuvem.

💼 Plano de Assinatura para Desenvolvedor & Revendedor
R$ 100,00 / MÊS

Com a assinatura mensal de R$ 100, você recebe sua Chave de API Bearer com permissão de chamadas ilimitadas, servidor MCP dedicado e suporte prioritário.

CHAVE PIX OFICIAL PARA ASSINATURA

Faça o Pix de R$ 100,00 e envie o comprovante para [email protected]. Sua chave de acesso será enviada em instantes.

MCP 1. Servidor MCP (Model Context Protocol)

O Model Context Protocol (MCP) é o protocolo padrão que permite que IAs executem ferramentas no mundo real. Com o servidor MCP do IPTV da Casa, a IA lê fotos enviadas por clientes no WhatsApp ou comandos no chat e cadastra a TV sozinha.

Configuração no Claude Desktop ou Cursor:

Adicione este bloco no seu arquivo claude_desktop_config.json:

{
  "mcpServers": {
    "iptvdacasa": {
      "command": "node",
      "args": ["c:/Users/Ton/Documents/iptvdacasa/mcp_server/index.js"],
      "env": {
        "IPTV_API_URL": "https://iptvdacasa.pages.dev/api/v1/ai",
        "IPTV_API_KEY": "iptv_live_SEU_TOKEN_AQUI"
      }
    }
  }
}

Ferramentas MCP Disponíveis para a IA:

Nome da Ferramenta Parâmetros O que ela faz
iptv_cadastrar_cliente mac, key, clientName, days, playlistUrl Registra a Smart TV do cliente na nuvem e concede a quantidade de dias contratada.
iptv_adicionar_lista_m3u mac, playlistUrl, playlistName Sincroniza a URL da lista M3U para a TV do cliente instantaneamente.
iptv_consultar_cliente mac Retorna se a TV está ativa, data de expiração e qual lista está vinculada.
POST 2. Endpoints da API REST JSON
/api/v1/ai
Regra de Versionamento: A API /api/v1/ possui garantia de retrocompatibilidade estrita. Campos e ações existentes nunca têm seu comportamento quebrado. Modificações incompatíveis serão publicadas sob /api/v2/, mantendo a v1 ativa por no mínimo 12 meses.

Endpoint unificado para integrações via HTTP (Python, Node.js, PHP, cURL, webhooks do n8n ou Zapier). O dono gerencia tudo pelo Painel Master do portal, e a MASTER_KEY fica reservada para automações (n8n, backup).

Exemplo 1: Cadastrar e Ativar Smart TV do Cliente

curl -X POST https://iptvdacasa.pages.dev/api/v1/ai \
  -H "Authorization: Bearer iptv_live_SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "register_device",
    "mac": "00:1A:79:B4:C2:10",
    "key": "684920",
    "playlistName": "TV da Sala - Cliente Carlos",
    "days": 365,
    "playlistUrl": "https://meuservidor.com/get.php?username=carlos&password=123"
  }'

Exemplo 2: Adicionar ou Substituir Lista M3U

curl -X POST https://iptvdacasa.pages.dev/api/v1/ai \
  -H "Authorization: Bearer iptv_live_SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "upload_m3u",
    "mac": "00:1A:79:B4:C2:10",
    "playlistName": "Lista Premium 4K",
    "playlistUrl": "https://meuservidor.com/get.php?username=carlos&password=123"
  }'

Códigos de Retorno HTTP:

Status HTTP Significado
200 OK Ação executada com sucesso.
400 Bad Request Parâmetros obrigatórios ausentes ou inválidos (MAC, chave ou URL).
401 Unauthorized Token ausente ou inválido no cabeçalho Authorization.
402 Payment Required Assinatura do plano de API expirada. Renove via Pix.
403 Forbidden Chave de segurança da TV incorreta ou ação permitida apenas para master.

👑 Ações Administrativas (Somente Master com X-Master-Key):

Ações restritas para o proprietário gerenciar chaves e licenças usando o header X-Master-Key: SUA_SENHA_MESTRA:

  • activate_license { mac, days, status, plan } — Concede ou renova licenças oficiais.
  • create_api_key { email, days, sandbox, resellerId } — Emite chaves de produção (iptv_live_) ou testes (iptv_test_).
  • revoke_api_key { token } — Cancela uma chave de API emitida.
  • suspend_reseller { resellerId } — Suspende um revendedor e bloqueia todas as suas chaves.
  • list_devices { cursor } — Lista todos os aparelhos cadastrados no ecossistema.
  • list_audit { resellerId, limit, cursor } — Consulta logs de auditoria por 90 dias com IP e ação.
  • run_maintenance {} — Executa varredura diária de licenças vencendo e dispara webhooks.
WEBHOOK 3. Webhooks em Tempo Real para Revenda
HMAC-SHA256

Receba notificações instantâneas no seu servidor, n8n ou Zapier sempre que uma lista for alterada, uma licença estiver prestes a vencer ou um aparelho voltar a conectar.

Configurando seu Webhook via API

curl -X POST https://iptvdacasa.pages.dev/api/ai \
  -H "Authorization: Bearer iptv_live_SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "set_webhook",
    "url": "https://seu-servidor.com/webhook",
    "secret": "sua_chave_secreta_opcional"
  }'

Validando a Assinatura (Node.js)

const crypto = require('crypto');

function verifyWebhook(rawBody, signatureHeader, secret) {
  const expected = 'sha256=' + crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
  return crypto.timingSafeEqual(Buffer.from(signatureHeader), Buffer.from(expected));
}

Validando no n8n (Workflow Automatizado)

No nó Webhook do n8n, capture os headers e o body bruto. Adicione um nó Crypto (Ação: HMAC, Algoritmo: SHA256, Segredo: seu segredo) e compare o resultado com o cabeçalho X-IPTV-Signature (formato sha256=<hash>) em um nó If antes de processar os dados.