API v1

Integre o Sparta CRM às suas ferramentas

Receba leads do site, de portais e de anúncios direto no funil, consulte e atualize clientes, imóveis e propostas, e avise outros sistemas na hora em que algo muda no CRM.

URL basehttps://app.spartabrokercrm.com.br/api/v1

Introdução

A API do Sparta CRM é REST: você faz requisições HTTPS e recebe JSON em UTF-8. Cada chave de API pertence a uma imobiliária (ou corretor autônomo) e só enxerga os dados dessa conta.

Primeiros passos

  1. Entre no CRM como administrador, abra Integrações › Chaves de API e crie uma chave. Ela começa com sbc_ e só aparece uma vez: guarde em local seguro.
  2. Teste a conexão consultando os dados da sua conta:
Requisição
curl https://app.spartabrokercrm.com.br/api/v1/conta \
  -H "Authorization: Bearer sbc_SUA_CHAVE"
Resposta 200
{
  "dados": {
    "id": 42,
    "nome": "Imobiliária Exemplo",
    "chave": { "nome": "Meu site", "prefixo": "sbc_8fK2mQ1x", "escopo": "completo" }
  }
}
  1. Envie seu primeiro lead com POST /leads. Ele aparece em Clientes e na primeira etapa do funil.

Autenticação

Envie a chave em todas as requisições, no cabeçalho Authorization:

Cabeçalho
Authorization: Bearer sbc_SUA_CHAVE

Também é aceito o cabeçalho X-Api-Key: sbc_SUA_CHAVE. Somente no endpoint de leads a chave pode ir na própria URL (?token=sbc_...), para ferramentas que não permitem configurar cabeçalhos.

Tipos de chave

TipoO que pode fazerOnde usar
Acesso completoLer e alterar clientes, imóveis, propostas e funil, e enviar leads.Seu servidor, Zapier, Make, n8n e sistemas de confiança.
Acesso completo + financeiroTudo do acesso completo e também a leitura de comissões.Seu ERP, BI ou sistema de contabilidade.
Somente receber leadsApenas POST /leads. Não lê nenhum dado.Formulários de site, portais, RD Station: lugares onde a chave pode ficar visível.
Segurança: uma chave de acesso completo dá acesso a todos os clientes da imobiliária. Nunca coloque essa chave em páginas públicas ou aplicativos. Crie uma chave para cada sistema conectado e revogue em Integrações › Chaves de API a que não for mais usada; ela para de funcionar na hora.

Respostas e erros

Respostas de sucesso trazem o conteúdo em dados. Listas trazem também meta com a paginação. Datas são enviadas em UTC no formato ISO 8601 (2026-10-01T15:30:00Z).

Em caso de erro, a resposta traz um objeto erro com um codigo estável (para o seu sistema tratar) e uma mensagem em português. Erros de validação listam os problemas por campo:

Resposta 422
{
  "erro": {
    "codigo": "dados_invalidos",
    "mensagem": "Alguns campos estão inválidos.",
    "campos": {
      "telefone": ["Informe um telefone brasileiro válido com DDD."]
    }
  }
}
HTTPcodigoQuando acontece
200 / 201—Sucesso. 201 quando um registro foi criado.
401nao_autenticadoA chave não foi enviada.
401chave_invalidaChave inexistente ou revogada.
403acesso_negadoChave "Somente receber leads" usada fora de POST /leads, ou chave sem acesso ao financeiro em /comissoes.
404nao_encontradoO registro não existe ou é de outra conta.
404rota_inexistenteEndpoint errado. Confira a URL e o /api/v1.
405metodo_nao_permitidoMétodo HTTP não aceito no endpoint.
422dados_invalidosCampos inválidos; veja erro.campos.
423conta_bloqueadaConta em modo somente leitura por falta de pagamento. Consultas (GET) e POST /leads continuam funcionando.
429limite_excedidoMuitas requisições; aguarde os segundos indicados em Retry-After.
500erro_internoFalha do nosso lado. Tente de novo; se continuar, fale com o suporte.

Paginação e sincronização

Todas as listas são paginadas e aceitam estes parâmetros na URL:

ParâmetroDescrição
paginaNúmero da página, começando em 1.
por_paginaItens por página. Padrão 25, máximo 100.
atualizado_desdeSó registros criados ou alterados a partir desta data (ISO 8601). Com este filtro a lista vem em ordem cronológica de atualização.
criado_desdeSó registros criados a partir desta data.
meta
"meta": { "pagina": 1, "por_pagina": 25, "total": 312, "ultima_pagina": 13 }

Sincronização incremental

Para manter outro sistema atualizado sem baixar tudo de novo: guarde o atualizado_em do último registro recebido e, na próxima execução, chame a lista com atualizado_desde igual a esse valor, percorrendo as páginas até a última. Sem esse filtro, as listas vêm do mais recente para o mais antigo.

Limites de uso

Cada conta pode fazer até 120 requisições por minuto, somando todas as chaves. As respostas trazem os cabeçalhos X-RateLimit-Limit e X-RateLimit-Remaining. Ao passar do limite você recebe 429 com Retry-After (em segundos).

No envio de leads em lote, cada requisição aceita até 50 leads.

Leads

O jeito mais simples de colocar contatos no CRM. O lead vira um cliente da categoria Lead com status novo e entra na primeira etapa do funil.

Sem duplicados: se já existe um cliente com o mesmo telefone ou e-mail, o Sparta não cria outro. Ele registra o novo contato no histórico do cliente e responde com "duplicado": true.

POST/leadsAceita chave "Somente receber leads"

Aceita JSON (Content-Type: application/json) ou formulário comum (application/x-www-form-urlencoded). Envie nome e pelo menos telefone ou e-mail.

CampoDescriçãoTambém aceito como
nomeobrigatórioNome do contato.name, full_name
telefoneTelefone brasileiro com DDD, com ou sem máscara e com ou sem +55.phone, celular, mobile_phone, personal_phone, whatsapp, phoneNumber (com ddd separado)
emailE-mail do contato.email_address
mensagemMensagem ou observação. Vai para o histórico e para o card do funil.message, comentario
origemDe onde veio: Site, Instagram, Facebook, Google, WhatsApp, Portal imobiliário, Indicação, Plantão / Stand, Telefone ou Outro. Nomes como facebook, vivareal e zap são reconhecidos.source, utm_source, leadOrigin
campanhaNome da campanha ou formulário. Fica registrado no histórico.campaign, utm_campaign, conversion_identifier
imovel_idID do imóvel de interesse no Sparta (veja Imóveis).—
codigo_anuncioCódigo do anúncio no portal. Fica registrado no histórico.clientListingId, listing_id
responsavel_idID do usuário da conta que vai atender.—
adicionar_ao_funiltrue (padrão) ou false. Com false o lead entra só em Clientes.—

Qualquer campo também pode ir na URL, por exemplo ?origem=Site, útil quando a ferramenta não deixa personalizar o corpo.

curl -X POST https://app.spartabrokercrm.com.br/api/v1/leads \
  -H "Authorization: Bearer sbc_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{
    "nome": "Maria Souza",
    "telefone": "(41) 99999-0000",
    "email": "maria@exemplo.com",
    "origem": "Site",
    "mensagem": "Quero agendar uma visita",
    "imovel_id": 12
  }'
Resposta 201 (novo) ou 200 (duplicado)
{
  "dados": {
    "cliente": {
      "id": 1587,
      "nome": "Maria Souza",
      "telefone": "41999990000",
      "email": "maria@exemplo.com",
      "categoria": "Lead",
      "origem": "Site",
      "status": "novo",
      "...": "demais campos do cliente"
    },
    "duplicado": false,
    "card_id": 932
  }
}

Vários leads de uma vez

Envie um objeto com a lista em leads (até 50). Este também é o formato que o RD Station envia. A resposta traz um item por lead, na mesma ordem; os que tiverem problema vêm com erro e não impedem os demais.

Corpo
{
  "origem": "Facebook",
  "leads": [
    { "nome": "Ana Lima", "telefone": "41988887777" },
    { "nome": "Bruno Reis", "email": "bruno@exemplo.com" }
  ]
}

Clientes

Todos os contatos da imobiliária: leads, compradores, vendedores, locatários e investidores.

O objeto cliente

CampoDescrição
idIdentificador.
nomeNome completo.
telefoneSomente números, com DDD (ex.: 41999990000).
email, cpfContato e documento (CPF só com números).
categoriaComprador, Vendedor, Locatário, Locador, Investidor ou Lead.
origemMesmos valores do campo origem dos leads.
statusnovo, contato (em contato), qualificado ou convertido.
historicoAnotações e contatos recebidos, do mais recente para o mais antigo.
cidade, ufLocalização.
imovel_idImóvel de interesse.
responsavelUsuário que atende: { id, nome, email } ou null.
conjuge{ nome, cpf, telefone, email } ou null.
criado_em, atualizado_emDatas em UTC.
GET/clientesLista paginada

Filtros: busca (nome, e-mail ou telefone), telefone, email, status, origem, categoria, responsavel_id, além dos parâmetros de paginação.

Exemplo
curl "https://app.spartabrokercrm.com.br/api/v1/clientes?status=novo&por_pagina=50" \
  -H "Authorization: Bearer sbc_SUA_CHAVE"
GET/clientes/{id}Um cliente
POST/clientesCria um cliente

Campos: nome (obrigatório), telefone, email, cpf, categoria, origem, status (padrão novo), historico, cidade, uf, responsavel_id, imovel_id. Para leads de formulários e anúncios prefira POST /leads, que evita duplicados e já coloca no funil.

PATCH/clientes/{id}Atualiza só os campos enviados
Exemplo
curl -X PATCH https://app.spartabrokercrm.com.br/api/v1/clientes/1587 \
  -H "Authorization: Bearer sbc_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{ "status": "qualificado", "responsavel_id": 7 }'

Imóveis

Somente leitura. Útil para exibir os imóveis no site da imobiliária ou enviar para outros sistemas. Faça a consulta pelo seu servidor, nunca pelo navegador, para não expor a chave.

GET/imoveisLista paginada (resumo)

Filtros: busca (nome, bairro ou endereço), cidade, bairro, uf, tipo_imovel, finalidade, tipo_transacao, construtora_id.

GET/imoveis/{id}Imóvel completo, com descrição e fotos
Resposta 200
{
  "dados": {
    "id": 12,
    "nome": "Residencial Jardim Botânico, apto 3 quartos",
    "preco": 685000.00,
    "finalidade": "Residencial",
    "tipo_transacao": "Venda",
    "tipo_imovel": "Apartamento",
    "endereco": { "logradouro": "Rua Exemplo", "numero": "100", "bairro": "Jardim Botânico", "cidade": "Curitiba", "uf": "PR", "cep": "80210-000", "pais": "Brasil" },
    "construtora": { "id": 3, "nome": "Construtora Exemplo" },
    "foto_capa": "https://app.spartabrokercrm.com.br/img/foto-1.jpg",
    "descricao": "…",
    "video_url": null,
    "fotos": ["https://app.spartabrokercrm.com.br/img/foto-1.jpg"],
    "criado_em": "2026-09-02T13:10:00Z",
    "atualizado_em": "2026-09-30T18:42:11Z"
  }
}

Na lista, cada imóvel vem sem descricao, video_url e fotos (só com foto_capa). preco é numérico, em reais, ou null quando não informado.

Propostas

Somente leitura. Propostas de imóveis na planta e prontos.

GET/propostasLista paginada

Filtros: status (ativa, aceita, recusada), tipo (na_planta, pronto), cliente_id, imovel_id.

GET/propostas/{id}Uma proposta
CampoDescrição
tipona_planta ou pronto.
statusativa, aceita ou recusada.
origemsistema (criada no CRM) ou upload (arquivo enviado).
valor, sinal_reservaValores em reais.
condicoes_pagamentoTexto livre.
contratovenda ou locacao.
imovel, imovel_idDescrição do imóvel e, quando houver, o ID cadastrado.
cliente{ id, nome }.
responsavel{ id, nome, email }.
validadeData (AAAA-MM-DD).

Funil de vendas

O funil (kanban) tem etapas personalizadas por imobiliária. Cada cliente no funil é um card.

GET/funil/etapasEtapas ativas, em ordem
Resposta 200
{
  "dados": [
    { "id": 1, "nome": "Novo contato", "tipo": "normal", "cor": "#1976d2", "ordem": 1 },
    { "id": 2, "nome": "Análise de crédito", "tipo": "credito", "cor": "#f59e0b", "ordem": 2 },
    { "id": 3, "nome": "Venda concluída", "tipo": "final", "cor": "#16a34a", "ordem": 3 }
  ]
}
GET/funil/cardsLista paginada

Filtros: etapa_id, cliente_id, status_credito. Cada card traz cliente, etapa, status_credito, motivo_reprovacao, valor_proposta, imovel_id, responsavel e observacoes.

GET/funil/cards/{id}Um card
POST/funil/cardsColoca um cliente no funil

Campos: cliente_id (obrigatório), etapa_id (padrão: primeira etapa), valor_proposta, observacoes, imovel_id, responsavel_id. Cada cliente pode ter um card só.

PATCH/funil/cards/{id}Move de etapa ou atualiza

Campos: etapa_id, status_credito (pendente, aprovado, reprovado), motivo_reprovacao (obrigatório ao reprovar), valor_proposta, observacoes.

As regras do CRM valem também pela API: um card numa etapa de crédito só avança depois que status_credito for aprovado. Você pode aprovar e mover na mesma requisição.
Exemplo
curl -X PATCH https://app.spartabrokercrm.com.br/api/v1/funil/cards/932 \
  -H "Authorization: Bearer sbc_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{ "status_credito": "aprovado", "etapa_id": 3 }'

Comissões

Somente leitura. Exige uma chave do tipo Acesso completo + financeiro. Cada comissão traz as parcelas a receber e o rateio entre corretores.

GET/comissoesLista paginada

Filtros: status (um ou vários separados por vírgula: prevista, aprovada, parcial, recebida, cancelada, estornada), cliente_id, corretor_id, fechamento_desde, fechamento_ate, além de atualizado_desde e criado_desde.

GET/comissoes/{id}Uma comissão
Resposta 200
{
  "dados": {
    "id": 41,
    "status": "parcial",
    "descricao": "Residencial Aurora — apto 1203",
    "tipo_negocio": "venda_planta",
    "valor_negocio": 500000.00,
    "percentual": 6.0,
    "valor_bruto": 30000.00,
    "data_fechamento": "2026-09-20",
    "pagador": { "tipo": "construtora", "nome": "Construtora XYZ" },
    "regra_repasse": "apos_recebimento",
    "cliente": { "id": 812, "nome": "Maria Souza" },
    "parcelas": [
      { "id": 90, "numero": 1, "valor": 10000.00, "vencimento": "2026-10-20", "status": "recebida", "recebido_em": "2026-10-18", "valor_recebido": 10000.00 },
      { "id": 91, "numero": 2, "valor": 20000.00, "vencimento": "2026-11-20", "status": "aberta", "recebido_em": null, "valor_recebido": null }
    ],
    "rateio": [
      { "id": 120, "papel": "vendedor", "beneficiario": "João Lima", "corretor_id": 7, "percentual": 40.0, "valor": 12000.00, "valor_liberado": 4000.00, "valor_pago": 0.00, "status": "liberado" },
      { "id": 121, "papel": "imobiliaria", "beneficiario": "Imobiliária", "corretor_id": null, "percentual": 60.0, "valor": 18000.00, "valor_liberado": 6000.00, "valor_pago": 0.00, "status": "receita" }
    ]
  }
}
CampoDescrição
statusprevista → aprovada → parcial → recebida; ou cancelada / estornada.
regra_repasseapos_recebimento (libera a parte de cada corretor proporcionalmente ao recebido) ou na_aprovacao.
rateio[].statusprevisto, liberado, pago, cancelado, a_recuperar (estorno com repasse já pago) ou receita (parte da imobiliária).
ValoresEm reais, com duas casas. A soma do rateio é sempre igual a valor_bruto.

Webhooks

Webhooks avisam o seu sistema na hora em que algo acontece no CRM, sem você precisar ficar consultando a API. Cadastre a URL que vai receber os avisos em Integrações › Webhooks e escolha os eventos.

Eventos

EventoQuandoConteúdo de dados
lead.recebidoUm lead chegou por POST /leads.cliente, duplicado, card_id, mensagem, campanha, codigo_anuncio
cliente.criadoCliente cadastrado (no CRM, na importação ou pela API).O cliente.
cliente.atualizadoDados do cliente alterados.O cliente e campos_alterados.
funil.card_criadoCliente entrou no funil.O card.
funil.etapa_alteradaCard mudou de etapa.O card e etapa_anterior.
proposta.criadaNova proposta.A proposta.
proposta.status_alteradoProposta aceita, recusada ou reativada.A proposta e status_anterior.
comissao.criadaComissão registrada no financeiro.comissao (a comissão).
comissao.aprovadaComissão aprovada.comissao.
parcela.recebidaRecebimento de uma parcela registrado.comissao e parcela (id, numero, valor_recebido, recebido_em).
repasse.pagoRepasse pago a um corretor ou parceiro.comissao e repasse (id, recibo, beneficiario, valor, pago_em).
comissao.estornadaComissão estornada (distrato).comissao.

Um lead novo gera dois eventos: lead.recebido e cliente.criado (e funil.card_criado, se entrar no funil). Assine só os que você usa.

Formato do envio

O Sparta faz um POST com JSON para a sua URL:

Corpo
{
  "id": "5f0c1c8e-3a2b-4f7e-9d21-7b8c2a0e4d11",
  "evento": "funil.etapa_alterada",
  "conta_id": 42,
  "criado_em": "2026-10-01T18:20:05Z",
  "dados": {
    "id": 932,
    "cliente": { "id": 1587, "nome": "Maria Souza" },
    "etapa": { "id": 3, "nome": "Proposta", "tipo": "normal", "cor": "#7c3aed", "ordem": 3 },
    "etapa_anterior": { "id": 2, "nome": "Visita", "tipo": "normal", "cor": "#0ea5e9", "ordem": 2 },
    "valor_proposta": 685000,
    "...": "demais campos do card"
  }
}
CabeçalhoDescrição
X-Sparta-EventoNome do evento.
X-Sparta-EntregaID único do envio (igual a id no corpo). Use para ignorar repetições.
X-Sparta-Assinaturat=<timestamp>,v1=<assinatura>. Veja abaixo como validar.

Entrega

  • Responda com qualquer status 2xx em até 5 segundos. Se precisar processar algo demorado, responda primeiro e processe depois.
  • Cada evento é enviado uma vez, sem novas tentativas automáticas. O resultado do último envio aparece em Integrações › Webhooks. Para sincronizar o que tiver perdido, use atualizado_desde na API.
  • Depois de 20 falhas seguidas o webhook é desativado. Corrija o destino e reative na mesma tela.
  • O botão Enviar teste manda um evento webhook.teste para conferir a configuração.
  • A URL precisa ser pública e usar as portas 80, 443, 8080 ou 8443. Endereços de rede interna são recusados.

Validar a assinatura

Cada webhook tem um segredo (começa com whsec_), visível em Integrações › Webhooks. A assinatura é um HMAC-SHA256, em hexadecimal, de timestamp + "." + corpo, usando o corpo bruto exatamente como recebido. Confira a assinatura e recuse envios com mais de 5 minutos para evitar reenvios forjados.

const crypto = require('crypto');

// corpoBruto: o corpo como texto, antes de qualquer JSON.parse
function assinaturaValida(corpoBruto, cabecalho, segredo) {
  const partes = Object.fromEntries((cabecalho || '').split(',').map(p => p.split('=')));
  const esperado = Buffer.from(
    crypto.createHmac('sha256', segredo).update(partes.t + '.' + corpoBruto).digest('hex')
  );
  const recebido = Buffer.from(partes.v1 || '');
  const recente = Math.abs(Date.now() / 1000 - Number(partes.t)) < 300;
  return recente && recebido.length === esperado.length && crypto.timingSafeEqual(recebido, esperado);
}

// Express
app.post('/webhooks/sparta', express.raw({ type: 'application/json' }), (req, res) => {
  if (!assinaturaValida(req.body.toString(), req.get('X-Sparta-Assinatura'), process.env.SPARTA_WEBHOOK_SEGREDO)) {
    return res.sendStatus(401);
  }
  const evento = JSON.parse(req.body);
  res.sendStatus(200);
  // processe evento.evento / evento.dados aqui
});

Formulário do seu site

Para que o formulário de contato do site mande os leads direto para o funil:

  1. Em Integrações › Chaves de API, crie uma chave do tipo Somente receber leads. Como ela só envia leads, pode ficar no código da página.
  2. Cole o exemplo abaixo no site, trocando SUA_CHAVE_DE_LEADS pela chave criada. Os nomes dos campos do formulário (nome, telefone, email, mensagem) são os do endpoint de leads.
  3. Envie um teste e confira em Clientes.
HTML
<form id="contato-sparta">
  <input name="nome" placeholder="Seu nome" required>
  <input name="telefone" placeholder="WhatsApp com DDD" required>
  <input name="email" type="email" placeholder="E-mail">
  <textarea name="mensagem" placeholder="Como podemos ajudar?"></textarea>
  <button type="submit">Quero ser atendido</button>
</form>

<script>
  document.getElementById('contato-sparta').addEventListener('submit', async (e) => {
    e.preventDefault();
    const dados = Object.fromEntries(new FormData(e.target));
    const url = 'https://app.spartabrokercrm.com.br/api/v1/leads?origem=Site&token=SUA_CHAVE_DE_LEADS';
    const r = await fetch(url, {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify(dados),
    });
    alert(r.ok ? 'Recebemos seu contato! Em breve falaremos com você.' : 'Não foi possível enviar. Tente novamente.');
    if (r.ok) e.target.reset();
  });
</script>

Usa WordPress (Contact Form 7, Elementor, RD) ou outra plataforma de formulários? Configure o envio por webhook da própria ferramenta para a URL https://app.spartabrokercrm.com.br/api/v1/leads?origem=Site&token=SUA_CHAVE_DE_LEADS.

Facebook e Instagram Lead Ads

Os formulários de anúncio do Facebook e do Instagram são conectados por uma ferramenta de automação. Exemplo com o Zapier (no Make e no n8n os passos são equivalentes):

  1. Crie uma chave Somente receber leads no Sparta.
  2. No Zapier, crie um Zap com o gatilho Facebook Lead Ads › New Lead e escolha a página e o formulário do anúncio.
  3. Adicione a ação Webhooks by Zapier › POST. Em URL, use https://app.spartabrokercrm.com.br/api/v1/leads?origem=Facebook&token=SUA_CHAVE (troque para origem=Instagram se o anúncio for do Instagram). Em Payload Type, escolha json.
  4. Em Data, ligue os campos: nome → nome completo, telefone → telefone, email → e-mail e campanha → nome do formulário ou do anúncio.
  5. Teste o Zap e ative. Cada novo lead do anúncio cai no funil em segundos.

No Make: módulo Facebook Lead Ads › Watch Leads seguido de HTTP › Make a request (método POST, corpo JSON). No n8n: Facebook Lead Ads Trigger seguido de HTTP Request.

RD Station Marketing

  1. Crie uma chave Somente receber leads no Sparta.
  2. No RD Station Marketing, abra a área de Integrações e crie um Webhook.
  3. Em URL, informe https://app.spartabrokercrm.com.br/api/v1/leads?origem=Site&token=SUA_CHAVE e escolha o gatilho de conversão (ou de oportunidade, se só quiser leads qualificados).
  4. Salve e faça uma conversão de teste numa landing page do RD.

O formato do RD Station (lista em leads, com name, email, mobile_phone e personal_phone) é reconhecido automaticamente.

Portais imobiliários (ZAP, VivaReal e OLX)

Os portais do Grupo OLX podem enviar os contatos dos seus anúncios para uma URL. Para receber esses leads no Sparta:

  1. Crie uma chave Somente receber leads no Sparta.
  2. No Canal Pro, procure a integração de leads por URL e informe https://app.spartabrokercrm.com.br/api/v1/leads?origem=Portal%20imobili%C3%A1rio&token=SUA_CHAVE. Se não encontrar a opção, peça ao atendimento do Canal Pro a "integração de leads" informando essa URL.
  3. Faça um contato de teste em um dos seus anúncios.

Os campos enviados pelos portais (name, email, ddd, phone, message, clientListingId, leadOrigin) são reconhecidos. O código do anúncio fica salvo no histórico do cliente. Outros portais que enviem leads por URL funcionam da mesma forma.

Zapier, Make e n8n

Além de receber leads, as ferramentas de automação podem reagir ao que acontece no CRM e consultar dados.

Quando algo acontecer no Sparta, fazer algo em outra ferramenta

  1. Na ferramenta, crie um gatilho do tipo webhook: Webhooks by Zapier › Catch Hook, Webhooks › Custom webhook no Make ou o nó Webhook no n8n. Copie a URL gerada.
  2. No Sparta, em Integrações › Webhooks, cole a URL e marque os eventos, por exemplo funil.etapa_alterada.
  3. Clique em Enviar teste para a ferramenta reconhecer o formato e monte as ações: avisar a equipe no WhatsApp ou no Slack, preencher uma planilha, enviar e-mail…

Consultar ou alterar dados do Sparta

Crie uma chave de acesso completo e use a ação de requisição HTTP da ferramenta (Webhooks by Zapier › Custom Request, HTTP › Make a request ou HTTP Request no n8n) com o cabeçalho Authorization: Bearer sbc_SUA_CHAVE e os endpoints desta página.

Suporte

Precisa de ajuda para integrar, ou de uma integração que não está aqui? Fale com a gente pelo WhatsApp (41) 99781-8917.

Quando novos campos ou eventos forem adicionados, eles aparecerão nas respostas sem quebrar o que já funciona. Mudanças incompatíveis, se houver, virão numa nova versão (/api/v2).