Enviar contatos (leads)
O formulário do site envia o contato do visitante para a Zariv, que o coloca no funil de vendas e o entrega a um corretor.
POST
/leadsRegistra o interesse de um visitante. O contato entra no funil de vendas da imobiliária e é distribuído a um corretor.
#Corpo da requisição (JSON)
| Campo | Tipo | Descrição |
|---|---|---|
nomeobrigatório | string | Nome da pessoa. |
telefoneobrigatório | string | Telefone ou WhatsApp, com DDD. |
email | string | E-mail. |
imovel_id | string | Imóvel de interesse. O código e o título dele entram na observação do contato. |
mensagem | string | Mensagem do visitante. |
data_visita | string (AAAA-MM-DD) | Quando preenchido, o contato é marcado como Visita agendada e a data entra na observação. |
tipo | string | captacao para quem quer anunciar o próprio imóvel (página "Anunciar" do site). |
vitrine_codigo | string | Código da vitrine de onde o visitante veio. O contato vai direto para o corretor que compartilhou, sem passar pela roleta. |
#Exemplo
curl -X POST "https://web.zariv.com.br/api/public/v1/leads" \
-H "Authorization: Bearer $ZARIV_API_KEY" \
-H "Content-Type: application/json" \
-d '{"nome":"João da Silva","telefone":"69999998888","email":"[email protected]","imovel_id":"3f2b6c1e-5a1d-4b7e-9d0a-6a8f1c2e7b10","mensagem":"Gostaria de conhecer o imóvel.","data_visita":"2026-11-20"}'const resposta = await fetch("https://web.zariv.com.br/api/public/v1/leads", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.ZARIV_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"nome": "João da Silva",
"telefone": "69999998888",
"email": "[email protected]",
"imovel_id": "3f2b6c1e-5a1d-4b7e-9d0a-6a8f1c2e7b10",
"mensagem": "Gostaria de conhecer o imóvel.",
"data_visita": "2026-11-20"
}),
});
console.log(await resposta.json());import os, requests
resposta = requests.post(
"https://web.zariv.com.br/api/public/v1/leads",
headers={"Authorization": f"Bearer {os.environ['ZARIV_API_KEY']}"},
json={
"nome": "João da Silva",
"telefone": "69999998888",
"email": "[email protected]",
"imovel_id": "3f2b6c1e-5a1d-4b7e-9d0a-6a8f1c2e7b10",
"mensagem": "Gostaria de conhecer o imóvel.",
"data_visita": "2026-11-20"
},
timeout=15,
)
print(resposta.json())<?php
$ch = curl_init("https://web.zariv.com.br/api/public/v1/leads");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer " . getenv("ZARIV_API_KEY"),
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS => json_encode({"nome":"João da Silva","telefone":"69999998888","email":"[email protected]","imovel_id":"3f2b6c1e-5a1d-4b7e-9d0a-6a8f1c2e7b10","mensagem":"Gostaria de conhecer o imóvel.","data_visita":"2026-11-20"}, true),
]);
$dados = json_decode(curl_exec($ch), true);
curl_close($ch);#Resposta
{
"sucesso": true,
"mensagem": "Recebemos sua solicitação! Em breve um corretor entrará em contato."
}#O que acontece com o contato
- O site envia o contatoCom nome e telefone (obrigatórios) e, se houver, e-mail, imóvel de interesse e mensagem.
- A Zariv cria o leadOrigem “site”, com a etiqueta Site. Se veio de uma vitrine, também Link compartilhado.
- Distribui para um corretorPela roleta da imobiliária. Se veio de uma vitrine, fica direto com o corretor que compartilhou.
- O corretor vê no funilO lead aparece no funil de vendas e no app do corretor.
#Casos de uso
#Interesse em um imóvel
Envie imovel_id. O código e o título do imóvel entram automaticamente nas observações do lead, e o corretor já sabe de qual anúncio se trata.
#Pedido de visita
Envie data_visita no formato AAAA-MM-DD. O lead ganha a etiqueta Visita agendada e a data aparece nas observações, por exemplo “Visita agendada pelo site para quinta-feira, 20 de novembro”.
#Quero anunciar meu imóvel (captação)
Envie tipo: "captacao". O lead entra marcado como solicitação de captação, com interesse em venda, para o time de captação atender.
{
"nome": "Ana Paula",
"telefone": "69999997777",
"tipo": "captacao",
"mensagem": "Quero vender uma casa no Jardim Clodoaldo."
}#Boas práticas
- Valide nome e telefone no formulário antes de enviar. A API responde
400se faltarem. - Desative o botão de enviar até a resposta chegar, para o visitante não criar o mesmo contato duas vezes.
- Mostre a mensagem de sucesso que a própria API devolve em
mensagem. - Envie o contato pelo servidor do site e coloque uma proteção contra robôs (como captcha) no formulário público.