VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa

Visão geral da Venddor Intelligence

Como funciona a assistente de IA do painel e o mapa das rotas de conversa: sessões, mensagens, confirmação de ações, anexos, voz e auditoria.

A Venddor Intelligence (VI) é a assistente de IA embutida na plataforma. O administrador da loja conversa com ela em linguagem natural: ela responde perguntas sobre os dados da loja e, quando o administrador confirma, executa alterações no painel (criar um cadastro, ajustar preços, desativar promoções em lote). Esta seção documenta o contrato das rotas de conversa, para quem precisa construir uma interface própria, automatizar um fluxo ou apenas entender o que a plataforma entrega.

O que a VI faz por dentro não faz parte deste contrato. Aqui estão as entradas, as saídas, as permissões e os limites.

Pontos-chave
  • Uma conversa é uma sessão com mensagens. Você abre a sessão, envia a mensagem do administrador e lê a resposta (JSON de uma vez ou em stream).
  • A VI nunca altera a loja sem o "sim" de uma pessoa: a resposta traz um bloco de confirmação com um token, e só a chamada de confirmação executa a ação.
  • A VI age com as permissões de quem pediu: o que o administrador não pode fazer no painel, ela também não faz.
  • Um turno pode levar minutos (o teto no servidor é de 21 minutos). Use stream ou um timeout longo no cliente.
  • Tudo é por loja. Cada recurso (voz, anexos, exportação, importação...) pode ser ligado ou desligado em Configurações.

Como funciona

O laço da conversa

  1. Abra uma sessão
    POST /sessions cria a conversa e devolve o id (UUID). Opcionalmente informe um título e a tela em que o administrador está.
  2. Envie a mensagem
    POST /sessions/{id}/messages com o texto. Com stream: true a resposta chega em eventos SSE; sem ele, em um JSON único.
  3. Leia a resposta
    O campo content é Markdown. Ele pode conter blocos especiais entre cercas de código, como o vi:confirm.
  4. Confirme (ou recuse) a ação
    Se houver um bloco vi:confirm, mostre a descrição ao administrador e chame POST /agent-actions/confirm com o token e approved.
  5. Consulte o histórico
    GET /sessions/{id}/messages devolve a conversa inteira, e GET /agent-actions lista o que foi (e o que não foi) executado.

O bloco de confirmação

Quando a VI propõe uma alteração, o content da resposta inclui um bloco assim:

vi
{"token":"83a02587a9546e662ecac4df02acc928","description":"Desativar 12 promoções vencidas","risk":"sensitive"}
CampoTipoSignificado
tokenstringIdentificador da ação pendente. Vale por 60 minutos e só pode ser usado uma vez.
descriptionstringTexto para mostrar ao administrador antes do "sim".
riskstringsafe (reversível), sensitive (reversível só com trabalho) ou destructive (irreversível). Use para escolher o destaque visual.

O bloco pode trazer campos extras (por exemplo, o resumo de um lote). Ignore o que não conhece.

Conceitos-chave

Privilégios

Todas as rotas exigem um token de administrador e pelo menos um dos privilégios listados na própria rota. A maioria das rotas de conversa aceita intelligence_use_chat ou manage_settings. Um administrador total passa em qualquer verificação. Sem o privilégio, a resposta é 403 com a lista privilege_required_any.

Quem enxerga o quê

GET /sessions e a busca devolvem só as conversas de quem chama. As rotas que recebem o id da sessão (ler, arquivar, listar mensagens) não conferem o dono: guarde os ids como dados sensíveis. As memórias, a base de conhecimento e as configurações são da loja inteira.

Dinheiro, datas e ids

Ids são UUIDs em texto. Datas são RFC 3339 em UTC. Valores monetários, quando aparecem em campos próprios, são inteiros em centavos (4990 = R$ 49,90). Veja Ids, dinheiro e datas.

Idioma das respostas

A VI responde no idioma da conversa. Mensagens de erro desta API chegam em inglês ou em português conforme a rota, e as que vêm em português estão assim indicadas nas páginas.

Rotas

Todas exigem Authorization: Bearer $TOKEN de um administrador.

MétodoCaminho (após /api/v1/admin/intelligence)Para que servePágina
POST/sessionsAbrir uma conversasessions
GET/sessionsListar as conversas de quem chamasessions
GET/sessions/searchBuscar conversas pelo texto das mensagenssessions
GET/sessions/{id}Ler uma conversasessions
PATCH/sessions/{id}Arquivar uma conversasessions
GET/sessions/{id}/messagesListar as mensagensmessages
POST/sessions/{id}/messagesEnviar uma mensagemmessages
POST/sessions/{id}/truncateApagar a partir de uma mensagemmessages
POST/sessions/{id}/bulk-continuationRetomar a conversa após um lotemessages
PUT/sessions/{id}/page-contextInformar a tela atualpage-context
POST/sessions/{id}/snippets/{snippetId}/closeRecolher um trecho interativopage-context
POST/attachmentsConverter um anexoattachments
POST/sessions/{id}/exportExportar a conversa em DOCXattachments
GET/planilhas/{id}Baixar uma planilha geradaattachments
GET/agent-actionsListar ações executadas e não executadasconfirm
POST/agent-actions/confirmConfirmar ou recusar uma açãoconfirm
POST/sessions/{id}/selectionResponder a uma lista de opçõesselection
POST/sessions/{id}/selection/searchBuscar dentro de uma lista de opçõesselection
GET/sessions/{id}/selection/{selectionId}Ler o estado de uma lista de opçõesselection
GET/sessions/{id}/fsmEstado do pedido em montagemorder-draft
POST/sessions/{id}/fsm/cancelCancelar o pedido em montagemorder-draft
POST/sessions/{id}/order/add-itemAdicionar um item ao pedido em montagemorder-draft
POST/voice-askPerguntar por voz ou transcriçãovoice
POST/voice/transcribeTranscrever áudiovoice
POST/voice/speakTransformar texto em áudiovoice
GET/auditRegistro de execuções da VIaudit

Erros comuns

  • Esperar a resposta com o timeout padrão do cliente. Um turno com várias consultas pode passar de um minuto. Use stream: true ou um timeout de vários minutos.
  • Tratar a resposta como se a ação já tivesse sido feita. Enquanto houver um bloco vi:confirm sem a chamada de confirmação, nada mudou na loja.
  • Reutilizar um token de confirmação. Ele é de uso único e vence em 60 minutos; depois disso a confirmação responde com status: 410 dentro de um 200.
  • Esquecer que o 200 da confirmação não garante sucesso. O resultado real está no campo status do corpo.
  • Guardar o histórico por GET /sessions e achar que é de todos. A lista é só do usuário do token.
  • Mandar PUT /settings parcial. A rota substitui o documento inteiro (veja Configurações).

Próximos passos

Sessões
Abrir, listar, buscar e arquivar conversas.
Mensagens
Enviar texto, ler a resposta e o stream.
Confirmar ações
O "sim" que executa a alteração.
Memória e conhecimento
Regras e documentos que orientam as respostas.
Anterior
Links de mídia da conversa
Próxima
Sessões de conversa
Nesta página
  • Como funciona
  • O laço da conversa
  • O bloco de confirmação
  • Conceitos-chave
  • Privilégios
  • Quem enxerga o quê
  • Dinheiro, datas e ids
  • Idioma das respostas
  • Rotas
  • Erros comuns
  • Próximos passos