Links de Cadastro

Links de Cadastro são URLs compartilháveis que acionam o fluxo de Embedded Signup do WhatsApp quando acessadas. Você cria um link no Dashboard ou via API, compartilha com seus usuários finais (por exemplo, via e-mail, SMS ou seu fluxo de onboarding), e quando eles clicam e completam o fluxo, o número de WhatsApp deles é automaticamente conectado à sua conta.

O link redireciona para uma página pública hospedada pelo Muchaw DEV que gerencia o fluxo completo — nenhum código frontend adicional é necessário.

$curl -X POST https://dev.muchau.com.br/api/signup-links \
> -H "Authorization: Bearer $MUCHAW_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "name": "Fluxo de Onboarding",
> "customMessage": "Conecte seu WhatsApp para começar a receber notificações.",
> "redirectUrl": "https://seu-app.com/onboarding/sucesso",
> "maxUsages": 1,
> "expiresAt": "2024-12-31T23:59:59Z"
> }'

Resposta:

1{
2 "id": "sl_01j...",
3 "slug": "abc123",
4 "name": "Fluxo de Onboarding",
5 "url": "https://connect.muchaw.dev/abc123",
6 "active": true,
7 "usageCount": 0,
8 "maxUsages": 1,
9 "expiresAt": "2024-12-31T23:59:59.000Z",
10 "customMessage": "Conecte seu WhatsApp para começar a receber notificações.",
11 "redirectUrl": "https://seu-app.com/onboarding/sucesso",
12 "createdAt": "2024-01-15T10:00:00.000Z",
13 "updatedAt": "2024-01-15T10:00:00.000Z"
14}

Compartilhe o campo url com seus usuários finais.

Opções de configuração

CampoDescrição
nameRótulo interno para o link (não exibido aos usuários finais)
slugSlug personalizado da URL (gerado automaticamente se não fornecido). Deve ser alfanumérico minúsculo + hífens.
maxUsagesNúmero máximo de vezes que o link pode ser usado. null = ilimitado.
expiresAtData/hora ISO 8601 após a qual o link fica inativo. null = nunca expira.
customMessageMensagem exibida na página de cadastro acima do botão de conexão.
redirectUrlURL para redirecionar os usuários após o cadastro bem-sucedido.
$# Listar todos os links
$curl "https://dev.muchau.com.br/api/signup-links" \
> -H "Authorization: Bearer $MUCHAW_API_KEY"
$
$# Atualizar um link
$curl -X PUT "https://dev.muchau.com.br/api/signup-links/<id>" \
> -H "Authorization: Bearer $MUCHAW_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{ "active": false }'
$
$# Excluir um link
$curl -X DELETE "https://dev.muchau.com.br/api/signup-links/<id>" \
> -H "Authorization: Bearer $MUCHAW_API_KEY"

Como funciona o fluxo público

Quando um usuário final acessa https://connect.muchaw.dev/<slug>:

  1. A página busca a configuração do link via GET /api/signup-links/by-slug/<slug> (público, sem autenticação)
  2. O popup de Embedded Signup do Facebook é aberto
  3. O usuário completa o fluxo e a página chama POST /api/signup-links/by-slug/<slug>/complete com o código de autorização
  4. O Muchaw DEV provisiona o número automaticamente
  5. O usuário é redirecionado para redirectUrl (se configurado)