Criar fluxos com IA e importar JSON
Contrato versionado, receitas legíveis por máquina e regras para assistentes externos.
Uma IA pode ajudar a montar o arquivo Vensy; ela não precisa receber sua sessão, token do webhook, credenciais ou dados reais de clientes. Importar sempre cria rascunho. Revise referências, simule e publique no app.
Fontes legíveis por máquina
- JSON Schema versão 1, gerado do mesmo validador usado por backend e editor.
- Receitas completas em JSON, com definições e amostras fictícias.
- Índice para LLMs e documentação completa.
O JSON Schema descreve a forma, mas não prova que o grafo é executável nem que canal, template, vendedor e CRM pertencem ao workspace. Essas verificações ocorrem no servidor ao publicar e novamente no consumo.
Instrução sugerida para sua IA
Crie uma automação comercial Vensy schemaVersion 1.
Leia o JSON Schema, as receitas e a documentação de blocos.
Responda apenas com JSON válido, sem JavaScript e sem comentários.
Use um único trigger, um entryNodeId que aponte para ele e término end.
Use IDs de blocos estáveis, únicos, iniciados por letra e com até 64 caracteres.
Todas as saídas next/trueNext/falseNext precisam existir. Não crie ciclos.
Use somente blocos presentes no schema; não invente conectores ou tipos.
Campos dinâmicos usam {{trigger.body.campo}} ou outras raízes documentadas.
Use {{steps.id_do_envio.status}} igual a SENT quando uma ação depender da
confirmação de um WhatsApp anterior. Use runtime.contactReplied para ramificar
pelo estado vivo; stopOnReply bloqueia novos envios, não ações de CRM de um
envio que o provedor já aceitou.
Para mensagens diferentes dentro e fora do expediente, ramifique por
runtime.withinBusinessHours igual a true e use respectSendWindow false,
senão a mensagem de fora do horário espera o próximo horário comercial.
Nunca inclua tenantId, credenciais, segredos, cookies nem dados reais de clientes.
Não invente IDs de pipeline, etapa, tag, membro, canal, template ou credencial.
Deixe referências indisponíveis vazias para seleção humana posterior no editor.
Nunca autorize envio apenas porque o formulário foi preenchido:
mapeie a escolha real do lead para consent com uma expressão de caminho exata.
Nunca use consent "true" fixo. Use consent "" somente para enviar dentro da janela de 24h.
Em templates, bodyVariables segue a ordem das posições {{1}}/{{2}} ou dos nomes
encontrados no corpo {{nome}}/{{produto}}. Cada item pode ser campo ou texto fixo.
Use {{contact.name}}, {{contact.firstName}} ou {{contact.lastName}} quando a
variável pedir nome completo, primeiro nome ou último nome do contato.
Mantenha stopOnReply e stopOnDealClosed ligados, e um horário de envio adequado.
Inclua CREATE/REUSE_OPEN explicitamente no bloco de negócio.
Para distribuição, use availabilityPolicy ONLINE_CAPACITY ou ALL_ACTIVE.
Use distributionMode EQUAL, ou PERCENTAGE com uma chave por membershipId e soma 100.
Não misture customFields de contato e negócio; deixe mapas sem referências vazios.
Não tente publicar/ativar: o resultado será importado como rascunho.
Minha necessidade: [descreva aqui o fluxo e um exemplo fictício dos campos].Formato do arquivo
O editor aceita uma definição isolada ou este envelope. O exemplo mínimo é importável e não realiza nenhuma ação externa:
{
"vensyAutomationExportVersion": 1,
"name": "Meu fluxo comercial",
"definition": {
"schemaVersion": 1,
"entryNodeId": "start",
"trigger": { "type": "WEBHOOK" },
"settings": {
"stopOnReply": true,
"stopOnDealClosed": true,
"maxAgeDays": 30,
"timezone": "America/Sao_Paulo",
"sendWindowStart": "08:00",
"sendWindowEnd": "18:00",
"sendWeekdays": [1, 2, 3, 4, 5],
"respectSendWindow": true
},
"nodes": [
{ "id": "start", "type": "trigger", "label": "Evento recebido", "position": { "x": 320, "y": 60 }, "next": "end" },
{ "id": "end", "type": "end", "label": "Concluir", "position": { "x": 320, "y": 250 } }
]
}
}Use a receita lead-capture no JSON de receitas para o fluxo completo contato → negócio → tag → responsável → WhatsApp. Ela já define o encadeamento; referências ficam vazias até a escolha no workspace.
Importação e exportação seguras
O limite do arquivo é 512 KiB e 80 blocos. Exportações não incluem segredos do webhook, valores de credenciais, amostras capturadas ou histórico. Vínculos de pipeline, etapa, tags, responsáveis, canais, templates e credenciais são removidos para evitar reaproveitamento acidental em outro workspace.
Referências de campos personalizados de contato e negócio também são removidas da exportação portátil; selecione novamente as definições do workspace de destino. O fluxo pode conter textos fixos que você próprio digitou: revise-os antes de compartilhar. Não cole senhas em texto de mensagem, URL ou JSON HTTP.
Versões publicadas são imutáveis. Importar/exportar não concede permissões, não contorna o plano e não altera os Funis de atendimento existentes.