Venddor Intelligence na vitrine
Visão geral do copiloto de compras do cliente e do mapa das rotas que o front-end usa.
Venddor Intelligence é o assistente de compras embutido na vitrine. O cliente pergunta em linguagem natural ("tem algo parecido mais barato?", "cadê meu pedido?"), fala ou manda uma foto, e o assistente responde e executa ações de compra em nome dele. Estas rotas são o contrato que o widget oficial usa; elas permitem que um front-end próprio ofereça a mesma experiência.
Como funciona
- Ver se o assistente está ligado
Chame Configuração. Ela devolve
enabled, as capacidades (flags), o nome da marca do assistente, a saudação e sugestões de perguntas no idioma do cliente. - Conversar
Envie cada mensagem em Conversar. Na primeira, não mande
session_id; guarde o que vier no eventodonee mande nas seguintes. - Responder cartões de escolha
Quando a resposta traz um cartão (por exemplo, "qual destes produtos?"), o cliente clica e você envia a escolha por Cartões de escolha.
- Restaurar após recarregar
Com o
session_idguardado, Histórico e edição reconstrói a conversa.
Conceitos-chave
Quem é o cliente
Com token, o assistente sabe quem é o cliente (pedidos, endereços, preços de contrato). Sem token, o visitante é identificado só pelo X-Session-ID. Uma conversa de cliente logado só pode ser lida pelo próprio cliente; a de visitante, por quem tem o session_id. Um session_id que não é seu responde 404, o mesmo de um que não existe.
Idioma
O idioma vem, nesta ordem, do idioma gravado na conta do cliente, do cookie venddor_language e do cabeçalho Accept-Language (pt-BR, en ou es). Cartões e textos fixos saem nesse idioma.
Custo e limites
Cada mensagem à conversa consome o plano de inteligência da loja. Não chame a rota em laço nem a cada tecla digitada. As rotas de configuração e de aviso proativo são leves.
Endpoints
| Método | Rota | O que faz | Página |
|---|---|---|---|
| GET | /api/v1/storefront/intelligence/config | Configuração do assistente | Configuração |
| POST | /api/v1/storefront/intelligence/assist | Envia uma mensagem (SSE) | Conversar |
| POST | /api/v1/storefront/intelligence/proactive | Aviso contextual da página | Aviso proativo e foto |
| POST | /api/v1/storefront/intelligence/snap | Busca de produtos por foto | Aviso proativo e foto |
| POST | /api/v1/storefront/intelligence/voice/transcribe | Voz para texto | Voz |
| POST | /api/v1/storefront/intelligence/voice/speak | Texto para voz | Voz |
| GET | /api/v1/storefront/intelligence/sessions/{id}/messages | Histórico da conversa | Histórico e edição |
| POST | /api/v1/storefront/intelligence/sessions/{id}/truncate | Apaga a partir de uma mensagem | Histórico e edição |
| POST | /api/v1/storefront/intelligence/sessions/{id}/selection | Envia a escolha de um cartão | Cartões de escolha |
| POST | /api/v1/storefront/intelligence/sessions/{id}/selection/search | Busca dentro de um cartão | Cartões de escolha |
| GET | /api/v1/storefront/intelligence/sessions/{id}/selection/{selectionId} | Estado atual de um cartão | Cartões de escolha |
Erros comuns
- Ler a resposta de
assistcomo JSON. ComAcceptde fluxo, ela étext/event-stream. Leia evento por evento (veja Conversar). - Mandar um
session_idantigo ou de outro cliente. Emassist, ele é ignorado e uma conversa nova começa (confira osession_iddo eventodone). Nas demais rotas responde404. - Mostrar o botão sem checar
enabled. A conversa não verifica essa chave; um assistente desligado ainda pode responder se alguém chamar a rota direto. - Enviar áudio ou imagem grandes. Áudio até 8 MB, foto de busca até 12 MB, corpo da conversa até 24 MB.
- Reenviar a escolha de um cartão. A segunda vez responde
409com o resultado da primeira; a ação nunca roda duas vezes.