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

Voz

Transforma a fala do cliente em texto e a resposta do assistente em áudio.

A conversa por voz usa duas rotas simétricas: uma transforma a fala do cliente em texto, a outra transforma a resposta do assistente em áudio. A voz só está disponível quando flags.voice vale true em Configuração.

Voz para texto

POST/api/v1/storefront/intelligence/voice/transcribePública

Transcreve um áudio

Envia um áudio gravado e recebe o texto falado. Use para preencher a mensagem do cliente antes de chamar Conversar.

Corpo da requisição

audiofileobrigatório
Arquivo de áudio em multipart/form-data. Até 8 MB. O tipo vem do Content-Type da parte (por exemplo audio/webm).

Exemplo de requisição

bash
curl -X POST "$BASE_URL/api/v1/storefront/intelligence/voice/transcribe" \
  -F "audio=@pergunta.webm;type=audio/webm"

Resposta

200Texto transcrito
json
{ "text": "tem esse tênis em azul?" }

Campos da resposta

textstring
O que foi dito.

Erros

StatusQuandoCorpo
400Corpo que não é multipart/form-data (ou maior que 8 MB).{"error":"áudio inválido"}
400Sem o campo audio.{"error":"campo 'audio' obrigatório"}
400Arquivo de áudio vazio.{"error":"áudio vazio"}
502O serviço de voz não conseguiu transcrever.{"error":"não consegui transcrever o áudio"}
503Voz indisponível na plataforma.{"error":"voz indisponível"}

Texto para voz

POST/api/v1/storefront/intelligence/voice/speakPública

Converte texto em áudio

Converte um texto em fala. Devolve o áudio, não JSON.

Corpo da requisição

textstringobrigatório
Texto a falar. Obrigatório.
voicestring
Nome da voz. Opcional; sem ele vale a voz padrão da loja.

Exemplo de requisição

bash
curl -X POST "$BASE_URL/api/v1/storefront/intelligence/voice/speak" \
  -H "Content-Type: application/json" \
  -d '{"text": "Seu pedido sai hoje."}' \
  --output resposta.wav

Resposta

Em caso de sucesso a resposta é 200 com o áudio no corpo e o tipo em Content-Type (audio/wav quando o servidor não informa outro). Cache-Control: no-store: não guarde o áudio.

Erros

StatusQuandoCorpo
400Corpo que não é JSON (ou maior que 1 MB).{"error":"corpo inválido"}
400text vazio.{"error":"text obrigatório"}
502O serviço de voz não conseguiu gerar o áudio.{"error":"não consegui gerar o áudio"}
503Voz indisponível na plataforma.{"error":"voz indisponível"}
As rotas de voz são públicas e não checam `flags.voice`

A decisão de oferecer voz é do seu front-end, com base em flags.voice. Estas duas rotas não exigem login nem shopping_requires_login, mesmo em loja que pede login para navegar.

Veja também

  • Configuração
  • Conversar
Anterior
Aviso proativo e foto
Próxima
Histórico e edição
Nesta página
  • Voz para texto
  • Exemplo de requisição
  • Resposta
  • Erros
  • Texto para voz
  • Exemplo de requisição
  • Resposta
  • Erros
  • Veja também