Skip to main content
A Tenant API é uma API de nível plataforma, separada da API externa por ApiID usada no restante desta referência. Ela existe para quem opera o PanÐá Zap em modo white-label/multi-empresa e precisa criar e administrar contas de clientes (tenants) programaticamente — por exemplo, a partir de um sistema próprio de vendas ou onboarding automatizado.
Esta API usa uma URL base diferente (sem o prefixo /v2/api/external/{ApiID}/) e, para o endpoint de atualização de tenant, exige um SuperAdminToken em vez do Bearer Token padrão de uma integração comum. Não utilize estes endpoints com o token de uma integração de cliente regular.

Listar tenants


Exibir tenant


Criar tenant

Provisiona uma nova conta de empresa (tenant), incluindo o usuário administrador inicial e, opcionalmente, um plano e um gateway de pagamento.

Atualizar tenant

Atualiza um tenant existente, identificado pelo CPF/CNPJ. Requer SuperAdminToken.
Nomes de canal em allowedChannels e channelConnectionLimits: os canais oficiais por login usam sublinhado (waba_oauth, instagram_oauth, facebook_oauth).

Criar integração de API para um tenant


Excluir integração de API


Criar canal (sessão) para um tenant

Cria um canal no tenant informado e, automaticamente, uma integração de API apontando para ele. A resposta traz { whatsapp, api }.

Modo Híbrido (WABA + Não Oficial)

A mesma rota aceita campos adicionais para gravar um vínculo híbrido entre um canal WABA oficial e um canal não oficial, permitindo que o tráfego de sessão (dentro da janela de 24h) seja desviado para o canal não oficial enquanto templates e campanhas continuam pela API oficial. O sentido depende de qual canal está sendo criado nesta chamada:
  1. Criando o canal WABA (type: "waba"): envie hybridMode e linkedChannelId (ID do canal não oficial já existente que vira o “transporte”).
  2. Criando o canal NÃO OFICIAL (baileys, whatsapp, zapo, meow, evo, evogo, zapi, uazapi): envie linkToWhatsappId com o ID do canal WABA já existente, que passa a apontar para o canal recém-criado. Aqui hybridMode é opcional — sem ele, o vínculo é gravado mas o desvio continua desligado.
Resposta com bloco hybrid:
Se a validação do vínculo falhar, o canal e a API continuam sendo criados e a resposta traz { "applied": false, "error": "ERR_..." } — corrija depois com PUT /whatsapp/{whatsappId}.
A flag híbrida não substitui o onboarding oficial. O modo coexistence só desvia mensagens de fato se o número WABA foi onboardado em coexistência (fluxo de 2 QRs) e o canal vinculado estiver CONNECTED; fora disso, o envio segue pela API oficial (fail-open, sem erro). No envio pela API externa, o desvio por mensagem ainda exige routeVia: "auto".

Resposta Padrão