← Guides
Criar Leads via Formulário Web
Capture leads de formulários do seu site e crie automaticamente no CRM.
Pré-requisitos
- Um Service Account (Client ID + Client Secret)
- Um formulário web no seu site
Passo 1: Autenticar
Obtenha um Bearer token usando as credenciais do seu Service Account:
cURL
curl -X POST https://magnetcustomer.net/realms/platform/protocol/openid-connect/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_ID&client_secret=YOUR_SECRET"Passo 2: Criar o lead
Envie os dados do formulário para o endpoint de leads:
cURL
curl -X POST https://minha-empresa.platform-api.magnetcustomer.com/api/leads \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fullname": "Maria Santos",
"email": "maria@exemplo.com.br",
"phones": [{ "number": "11999990000", "typePhone": "cellphone", "ddi": "+55" }],
"customFields": [
{ "customField": "FIELD_ID", "k": "origem", "v": "website" }
]
}'Passo 3: Tratar a resposta
Em caso de sucesso, a API retorna HTTP 201 com o lead criado:
Response 201
{
"_id": "507f1f77bcf86cd799439044",
"lifeCycle": "lead",
"fullname": "Maria Santos",
"email": "maria@exemplo.com.br",
"phones": [{ "number": "11999990000", "typePhone": "cellphone", "ddi": "+55" }],
"createdAt": "2026-01-17T09:00:00Z"
}Exemplo com SDK Node.js
Use o SDK oficial para integrar com um handler de formulário Express.js:
Node.js
import { MagnetCustomer } from '@magnetcustomer/sdk';
const crm = new MagnetCustomer({
account: 'minha-empresa',
clientId: process.env.MAGNET_CLIENT_ID,
clientSecret: process.env.MAGNET_CLIENT_SECRET,
});
// On form submit
app.post('/webhook/form', async (req, res) => {
const { data: lead } = await crm.leads.createLead({
contactInput: {
fullname: req.body.name,
email: req.body.email,
phones: [{ number: req.body.phone, typePhone: 'cellphone', ddi: '+55' }],
},
});
res.json({ success: true, leadId: lead._id });
});Próximo: Aprenda a configurar webhooks para ser notificado quando leads são criados.