# 19 de outubro de 2026

> Integrações & APIs chega às Definições, com chaves de API pessoais para o seu CRM, o n8n ou um script chamarem a API com permissão por módulo, e webhooks que avisam esses sistemas no momento em que alguém entra, compra, assina, se inscreve num evento ou conclui um curso. E chegam as integrações prontas: Discord, Slack, Telegram, RD Station e HubSpot ligam-se em poucos cliques. A plataforma ganhou também novos controlos de segurança.

Integrar a comunidade com outro sistema deixa de exigir uma conta só para isso: cada pessoa cria a sua própria chave, marca o que ela pode fazer e revoga-a quando quiser. E, no sentido inverso, a comunidade passa a avisar os seus sistemas automaticamente.

- [Chaves de API pessoais, com permissão por módulo](#chaves-de-api-pessoais-com-permissao-por-modulo)
- [Webhooks em Integrações & APIs](#webhooks-em-integracoes-apis)
- [Integrações prontas: Discord, Slack, Telegram, RD Station, HubSpot e atalhos para Zapier, Make e n8n](#integracoes-prontas)

## Chaves de API pessoais, com permissão por módulo

**O que é.** Uma chave que um CRM, uma automação (n8n, Zapier, Make) ou um script usam para chamar a API da comunidade em seu nome, sem início de sessão. Na criação, marca, módulo a módulo, o que ela pode fazer: **ler**, **criar e editar** e **apagar e ações destrutivas**. Sem nada marcado, a chave não faz nada, e nunca vai além do que o seu papel permite.

**Porque importa.** Antes, uma integração precisava de um membro só para ela, com e-mail e palavra-passe guardados no sistema externo, e com todo o poder do papel desse membro. Agora a chave faz só o que liberou, pode ter data de expiração e uma lista de IPs, e deixa de funcionar no momento em que é revogada. Dinheiro (reembolso, levantamento, checkout, cartão), a conta (palavra-passe, início de sessão, e-mail, telefone) e a gestão das próprias chaves ficam fora do alcance de qualquer chave.

**Onde fica.** Proprietário e administrador: **Definições**, separador **Integrações & APIs**. Os outros papéis: **Integrações & APIs**, no menu da conta, abaixo de **Faturação**.

**Como começar.**

1. Clique em **Nova chave**, dê-lhe um nome e marque só os módulos e as colunas de que a integração precisa.
2. Se quiser, defina uma data de expiração e os IPs do servidor que vai fazer as chamadas.
3. Copie a chave de imediato: só aparece uma vez.

**Exemplo.** O Rafael, administrador, cria a chave *CRM* com **ler** em **Membros** e em **Vendas e assinaturas**, restrita ao IP do servidor do CRM. O CRM passa a ir buscar os novos assinantes automaticamente. O proprietário e o administrador veem todas as chaves da comunidade em **Todas da comunidade**, podem revogar qualquer uma e acompanham as chamadas do mês no bloco **Uso**. Ver [Integrações & APIs](/configuracoes/integracoes-e-apis).

![Definições › Integrações & APIs › Nova chave](/screens/integracoes-nova-chave.png "Os 28 módulos e as três colunas: ler, criar e editar, apagar e ações destrutivas.")

## Webhooks em Integrações & APIs

**O que é.** Avise o seu CRM, Zapier, Make ou n8n quando alguém entra, compra, assina, se inscreve num evento ou conclui um curso. Regista o URL de destino, escolhe os eventos (13, em 6 famílias) e a Memberfy envia um aviso assinado no momento em que o facto acontece.

**Porque importa.** Antes, para saber de uma compra ou de um membro novo, o sistema externo tinha de perguntar à API de tempos a tempos. Agora o aviso chega sozinho, com o nome e o e-mail da pessoa, e a folha de cálculo, o CRM ou o grupo da equipa atualizam-se em segundos. Se o destino ficar indisponível, a Memberfy tenta novamente durante quase dois dias e, se ele não voltar, desativa o webhook e avisa por e-mail.

**Onde fica.** **Definições**, separador **Integrações & APIs**, separador **Webhooks**. Proprietário e administrador.

**Como começar.**

1. Clique em **Novo webhook**, cole o URL que o Zapier, o Make ou o n8n forneceu e marque os eventos (a família inteira ou um a um).
2. Copie o segredo: só aparece uma vez, e é com ele que o destino confirma que o aviso veio da Memberfy.
3. Clique em **Enviar teste** e veja a resposta do destino.

**Exemplo.** A Júlia, proprietária, liga a família **Compras** a um gatilho do Zapier. Cada compra concluída passa a ser uma mensagem no canal da equipa. Na secção **Entregas** do webhook, vê cada envio, com a resposta do destino, e **reenvia** o que falhou. Se a firewall do destino só aceitar endereços conhecidos, a opção **Enviar de IPs fixos** faz com que as entregas saiam de dois IPs da Memberfy. Ver [Integrações & APIs › Webhooks](/configuracoes/integracoes-e-apis#webhooks).

![Definições › Integrações & APIs › Webhooks › Novo webhook](/screens/integracoes-novo-webhook.png "O URL de destino, os eventos por família e o aviso sobre dados pessoais.")

Chegou também: o bloco **Uso** passa a contar os webhooks entregues no mês, e a página **Administração › Logs** ganha o tipo **Chaves de API**, com tudo o que as chaves fizeram. Ver [Logs › Chaves de API](/membros/registros-de-atividades#chaves-de-api).

## Integrações prontas

**O que é.** Integrações prontas: Discord, Slack, Telegram, RD Station, HubSpot e atalhos para Zapier, Make e n8n. Escolhe a app, cola a credencial respetiva, marca os eventos e liga. Sem automação pelo meio e sem código.

**Porque importa.** Antes, avisar a equipa no Slack de cada compra, ou levar os membros novos para o CRM, exigia um webhook e uma automação montada à mão. Agora a mensagem chega ao canal (*"Maria comprou Mentoria de Carreira."*, só com o primeiro nome, no idioma da comunidade), o lead aparece no RD Station com a conversão, e o contacto do HubSpot ganha o negócio da compra e da renovação, sem duplicar.

**Onde fica.** **Definições**, separador **Integrações & APIs**, separador **Integrações**. Proprietário e administrador.

**Como começar.**

1. Clique no card da app e siga o guia *"Como conectar o …"* para gerar o URL, o token ou a chave no fornecedor.
2. Cole, marque os eventos e confirme o que a app vai receber.
3. Clique em **Ligar** e depois em **Enviar teste**.

**Exemplo.** A Júlia liga o Telegram: cria o bot no BotFather, adiciona-o ao grupo da equipa e usa **Encontrar meu grupo**. A cada inscrição num evento, o grupo recebe *"Maria se inscreveu em Encontro de Outubro."*. **Desligar** pausa e guarda a configuração; **Remover integração** apaga a credencial e o histórico de entregas. Se o fornecedor falhar durante 72 horas, a app é desligada e o proprietário e os administradores recebem um e-mail. Ver [Integrações prontas](/integracoes/integracoes-prontas).

![Definições › Integrações & APIs › Integrações](/screens/integracoes-apps.png "Um card por app, com o que recebe e o estado.")

## Melhorias

- **Editar webhooks.** Antes, para trocar o URL, os eventos ou os IPs fixos de um webhook era preciso criar outro e apagar o antigo. Agora o detalhe tem **Editar**, sem trocar o segredo: as entregas já em curso seguem para o destino antigo, trocar o URL repõe as falhas a zero e editar não volta a ativar. Ver [Editar um webhook](/configuracoes/integracoes-e-apis#editar-um-webhook).
- **Novos controlos de segurança.**
- **Site:** a página Plataforma em [memberfy.net](https://memberfy.net/plataforma#integracoes) ganha a secção **Integrações & APIs**, que mostra as integrações prontas como disponíveis, e a página inicial e as páginas Para Comunidades, Para RH e Para Coworkings passam a referi-la com exemplos.

## Para programadores

### API

- **Chave de API (`X-Api-Key`)** em vez do token, sempre com o `X-CommunityId` da comunidade da chave; com `Authorization` em simultâneo, `400`. A chave age como o dono e a permissão efetiva é o âmbito (`<módulo>:<nível>`, 28 módulos, `read`/`write`/`delete`) e, ao mesmo tempo, o papel atual do dono. Numa rota pública, a chave sem o âmbito segue como anónima. Ver [Autenticação › Chave de API](/api/autenticacao#chave-de-api).
- Limite de **120 chamadas por minuto por pessoa em cada comunidade**, somando as chaves dessa pessoa, com `429` e `Retry-After`. IPs permitidos por chave (até 20, IPv4, IPv6 ou CIDR).
- Erros com `code` estável: `API_KEY_SCOPE_MISSING`, `API_KEY_BLOCKED`, `API_KEY_ROUTE_NOT_COVERED`, `API_KEY_IP_NOT_ALLOWED`, `API_KEY_RATE_LIMITED`, `API_KEY_WITH_AUTHORIZATION` e `API_KEY_PATH_INVALID`. Ver [Respostas e erros](/api/respostas-e-erros#erros-da-chave-de-api).
- Rotas **`/api/integrations/api-keys`** (listar, criar, ver, mudar o nome e os IPs, revogar, utilização) e **`/api/integrations/usage`**, só com o token de início de sessão. Ver [Referência da API › Integrations](/api/referencia/integrations).
- A especificação ganha o esquema `apiKey`, e cada operação indica o âmbito de que a chave precisa ou que não aceita chave; a [referência](/api/referencia) mostra isso ao lado de **Chave de API**.
- `GET /api/activity-logs` ganha a origem **`apiKeys`**: chave criada, com o nome alterado, com os IPs alterados, revogada, e cada escrita feita com chave (*"via chave {nome}"*).

- **Webhooks** (Standard Webhooks): o envelope (`id`, `type`, `version`, `occurredAt`, `community`, `data`), os 13 eventos e o `ping`, a assinatura `webhook-id`/`webhook-timestamp`/`webhook-signature` com exemplo em Node (`standardwebhooks`), deduplicação pelo `webhook-id` e ordem não garantida. 8 tentativas (1 min, 5 min, 30 min, 2 h, 6 h, 12 h, 24 h, cerca de 45 h); `410` desativa de imediato; 72 h sem sucesso desativa, com e-mail ao proprietário e aos administradores; `429` respeita o `Retry-After` e não conta como falha. Só `https` na porta 443, sem redirecionamento, 10 s. Ver [Webhooks](/api/webhooks).
- [Eventos de webhook](/api/eventos-de-webhook): a referência gerada do catálogo público `GET /api/integrations/events`, com o JSON Schema de cada evento.
- [IPs fixos](/api/ips-fixos): `3.227.95.35` e `34.199.138.158`, para autorizar na firewall.
- Gestão em `https://developers.memberfy.net/api/webhooks` (token de início de sessão de proprietário ou administrador, nunca chave de API). Criar, enviar teste, reativar, reenviar e trocar o URL somam para o limite de 10 por minuto por comunidade; até 10 webhooks por comunidade.
- **Editar webhook:** `PATCH /api/webhooks/{id}` (`url`, `description`, `events`, `fixedIps`, só o que muda). Vale para os eventos seguintes; as entregas em curso mantêm o destino; trocar o URL repõe `failureCount` a zero; não reativa; histórico `updated` com o antes e o depois. Ver [Webhooks › Editar um webhook](/api/webhooks#editar-um-webhook).
- **Integrações prontas:** `/api/apps` em `https://developers.memberfy.net` (catálogo, `PUT`/`DELETE` da instalação, com `?remove=true` para remover, teste, `POST /api/apps/telegram/chats`, entregas e reenvio), com o mesmo token de proprietário ou administrador. Ver [Webhooks › Integrações prontas](/api/webhooks#integracoes-prontas).
- `GET /api/logs` aceita `type=apiKeys`, com `actor.via` = `api_key` nas chamadas feitas com chave.

### MCP: detalhes técnicos

- **`list_integrations`** (nova, leitura, qualquer papel): `scope: mine` (predefinição) lista as suas chaves; `scope: community` (proprietário e administrador) lista as de todos, com `member_id` e `status`. Os âmbitos vêm com os nomes do ecrã; o segredo nunca. Não é possível criar, editar ou revogar chaves pelo assistente. Ver [Ferramentas · Comunidade](/mcp/ferramentas-comunidade#list-integrations).
- `list_activity_logs` aceita `source: apiKeys`, e a lista da comunidade em `list_integrations` sugere essa consulta em `next_steps`.
- Receitas novas: [Que chaves de API tenho?](/mcp/receitas#73-que-chaves-de-api-tenho), [Que chaves da comunidade estão ativas?](/mcp/receitas#74-que-chaves-da-comunidade-estao-ativas) e [O que fez a chave do n8n?](/mcp/receitas#75-o-que-fez-a-chave-do-n8n). O servidor passa a ter 445 ferramentas.
- **`list_integrations`** mostra também os webhooks ao proprietário e ao administrador (`type: webhooks`, ou sem `type`): estado, falhas consecutivas, a última entrega e, quando está a falhar, as últimas entregas que falharam. Só leitura: criar, testar, reenviar e apagar um webhook só é possível no ecrã; o URL completo e o segredo nunca são devolvidos.
- **`list_logs`** aceita `type: apiKeys`.
- **`list_integrations`** com `type: apps` (ou sem `type`), para o proprietário e o administrador: cada app que já esteve ligada alguma vez, com estado, eventos, falhas consecutivas, última entrega com sucesso e as últimas entregas que falharam; a configuração nunca é devolvida. Não é possível ligar, testar ou desligar apps pelo assistente. Receita nova: [Alguma app ou webhook está a falhar?](/mcp/receitas#76-alguma-app-ou-webhook-esta-a-falhar).
