Para que serve
- Permitir que sistemas externos chamem endpoints oficiais (REST + JSON) em nome da organização, não de um usuário específico.
- Pausar todas as integrações de uma vez desligando o ambiente, sem apagar as chaves já criadas.
- Separar credenciais por projeto (produção, homologação, parceiro) usando várias chaves secretas com nomes claros.
Ambiente habilitado x desabilitado
Desligar o ambiente é útil em incidentes ou migrações: você corta o acesso programático imediato sem precisar revogar chave por chave.
Chave pública e chaves secretas
Você pode ter várias chaves secretas, cada uma com um nome (ex.: “Produção”, “Staging”, “ERP”). Isso ajuda a saber qual sistema revogar quando alguém sai do projeto ou quando uma integração vaza.
Ativar ou desativar uma chave secreta
Na lista de chaves secretas existe controle de chave ativa na API. Desativar uma chave específica interrompe só os clientes que usam aquela credencial, sem desligar o ambiente inteiro nem as outras chaves.Remover uma chave
É possível remover uma chave secreta da lista. Enquanto houver apenas uma chave secreta, a interface não permite excluí-la (evita deixar o ambiente sem credencial secreta útil). Para trocar a última chave de forma segura, crie uma nova, atualize as integrações e só então remova a antiga — ou use desativar temporariamente.Onde isso aparece no produto
- Formulários de captação públicos (link ou iframe) carregam o fluxo com a chave na URL — o mesmo tipo de credencial gerenciada aqui; veja Formulários de captação.
- Envio de modelos de mensagem para um chat (
POSTemchats/{chatId}/templatesno gateway): veja abaixo. - Demais integrações server-to-server seguem o cabeçalho e o tipo de chave descritos na referência da API.
Enviar modelo com variáveis pela API
O endpoint de envio de template aceita o ID do modelo cadastrado no Spark. Variáveis funcionam como no painel:- Manuais — envie em
commonVariables, com chavesvar1,var2, … (cada número corresponde a{{1}},{{2}}no texto do modelo). - Automáticas (dados do chat) — não envie no body; o Spark resolve com base no
chatIdda URL (nome, contato, aniversário ou campo personalizado configurado no modelo).
Disparos de campanha pela API
Além de mensagens individuais, é possível criar e iniciar campanhas em massa com filtros de público-alvo, plataforma, template e cadência — o mesmo conjunto de opções do painel de Disparos.Fluxo em duas etapas
A API espelha o painel: primeiro você cria um rascunho com template, plataforma, cadência e filtros; depois inicia informando as variáveis manuais do modelo (se houver). Isso permite estimar o público antes de confirmar o envio.Variáveis no disparo
Funcionam como no envio individual de template (seção acima):- Manuais — envie em
commonVariablesno start (var1→{{1}},var2→{{2}}, …). O mesmo valor vale para todos os destinatários. - Automáticas — resolvidas pelo Spark por chat (nome, contato, aniversário, campo personalizado). Não envie no body.
GET /v1/message-templates/{id} para saber quais variáveis manuais são obrigatórias antes de chamar o start.
Filtros de público-alvo
Segmente chats por tags, plataforma, funil, canal de entrada, datas e dezenas de outros critérios. A estrutura usa grupos combinados com AND entre grupos e AND/OR dentro de cada grupo. Consulte o catálogo completo emGET /v1/campaigns/filters/schema ou veja exemplos prontos no guia da API.
Guia completo com tutorial passo a passo, tabela de filtros, exemplos JSON e SDK: Disparos pela API.
SDK oficial (TypeScript)
Para Node, Bun, Deno e runtimes compatíveis, use o pacotesparkcrm em vez de montar fetch manualmente. A documentação na aba SDKs cobre instalação, referência de métodos, tipos de webhook e tratamento de erros.
Referência técnica
Passo a passo de habilitação, cabeçalhoX-API-Key, base URL e boas práticas de integração estão na Introdução à API (aba Referência da API).
