Resposta de AdaptiveCard para Teams

Olá a todos, estou usando o nó “Create Chat message” para Teams e gostaria de poder enviar mensagens em formato “Adaptive Card”. A configuração do nó apenas permite formatos Text ou HTML. Para ter certeza, testei ambas as opções, e o texto contendo a estrutura JSON do meu Adaptive Card chega e é exibido como texto simples, não interpretado.

A outra solução é usar uma chamada da Microsoft API, mas é uma pena porque tudo já está disponível no n8n para fazer isso. O contentType simplesmente precisaria ser definido como “application/vnd.microsoft.card.adaptive”.

Há alguma melhoria planejada?

Obrigado antecipadamente.

Informações sobre sua configuração de n8n

  • Versão do n8n: 2.25.7
  • Banco de dados (padrão: SQLite):
  • Configuração EXECUTIONS_PROCESS do n8n (padrão: own, main):
  • Executando n8n via (Docker, npm, n8n cloud, desktop app): Docker
  • Sistema operacional: Linux

@flipflip você encontrou um limite real do nó nativo, não é um erro da sua parte. Os cartões adaptativos do Teams não vão no corpo da mensagem nem em seu contentType. O corpo permanece em html com um placeholder , e o cartão fica em um array de anexos separado, que o nó Create chat message não consegue construir, então seu cartão é renderizado como texto simples.

Ainda sem suporte nativo, então use o nó HTTP Request (reutilize sua credencial Teams OAuth2 via Predefined Credential Type, sem nova autenticação): POST para graph.microsoft.com/v1.0/chats/{chatId}/messages com:

{
  "body": { "contentType": "html", "content": "<attachment id=\"CARD_GUID\"></attachment>" },
  "attachments": [
    { "id": "CARD_GUID", "contentType": "application/vnd.microsoft.card.adaptive", "content": "{STRINGIFIED card JSON}" }
  ]
}

Duas pegadinhas: o conteúdo do anexo deve ser uma string JSON stringificada, e seu id deve corresponder ao placeholder.

Perfeito, tudo bem!
Obrigado