Base de conhecimento
Cadastra, altera e apaga as perguntas e respostas fixas que o assistente usa.
Listar as entradas
Devolve todas as entradas, da mais nova para a mais antiga, sem paginação.
/api/v1/admin/whatsapp-confluence/ai/kbAdminLista a base de conhecimento
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/whatsapp-confluence/ai/kb" \
-H "Authorization: Bearer $TOKEN"Resposta
200Entradas
json
{
"entries": [
{
"id": 12,
"question": "Qual o prazo de troca?",
"answer": "Aceitamos trocas em até 30 dias, com a nota fiscal.",
"enabled": true
}
]
}Campos da resposta
entriesarrayEntradas. Lista vazia se não houver.
entries[].idintegerId da entrada.
entries[].questionstringPergunta (ou trecho) que dispara a entrada.
entries[].answerstringResposta cadastrada.
entries[].enabledbooleanSe a entrada está em uso.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 500 | Falha ao ler. | {"error":"..."} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
Criar uma entrada
Cadastra uma pergunta com sua resposta. A entrada nasce ativa. Exige manage_settings.
/api/v1/admin/whatsapp-confluence/ai/kbAdminCria uma entrada de conhecimento
Corpo da requisição
questionstringobrigatórioPergunta. Obrigatória e não vazia.
answerstringResposta. A API aceita vazio, mas uma entrada sem resposta não ajuda.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/whatsapp-confluence/ai/kb" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"question": "Qual o prazo de troca?", "answer": "Aceitamos trocas em até 30 dias, com a nota fiscal."}'Resposta
200Entrada criada
json
{
"id": 12,
"question": "Qual o prazo de troca?",
"answer": "Aceitamos trocas em até 30 dias, com a nota fiscal.",
"enabled": true
}Campos da resposta
idintegerId da entrada.
questionstringPergunta (ou trecho) que dispara a entrada.
answerstringResposta cadastrada.
enabledbooleanSe a entrada está em uso.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | question vazia ou JSON inválido. A mensagem diz "question + answer required" mas só a pergunta é exigida. | {"error":"question + answer required"} |
| 500 | Falha ao gravar. | {"error":"..."} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
| 403 | O administrador não tem o privilégio manage_settings. | {"error":"insufficient privileges","required":"manage_settings"} |
Alterar uma entrada
Substitui pergunta, resposta e estado de uma entrada. Serve também para desligar ou religar sem apagar. Exige manage_settings.
/api/v1/admin/whatsapp-confluence/ai/kb/{id}AdminAltera uma entrada de conhecimento
Parâmetros de caminho
idintegerobrigatórioId numérico da entrada.
Corpo da requisição
questionstringPergunta.
answerstringResposta.
enabledbooleanobrigatórioEm uso. Omitido conta como
false e desliga a entrada.Exemplo de requisição
bash
curl -X PUT "$BASE_URL/api/v1/admin/whatsapp-confluence/ai/kb/12" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"question": "Qual o prazo de troca?", "answer": "Aceitamos trocas em até 15 dias, com a nota fiscal.", "enabled": true}'Resposta
200Entrada alterada
json
{
"status": "ok"
}Campos da resposta
statusstringSempre
ok.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | JSON inválido. | {"error":"invalid body"} |
| 500 | Falha ao gravar. | {"error":"..."} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
| 403 | O administrador não tem o privilégio manage_settings. | {"error":"insufficient privileges","required":"manage_settings"} |
Apagar uma entrada
Remove a entrada em definitivo. Para só parar de usar, desligue com enabled false. Exige manage_settings.
/api/v1/admin/whatsapp-confluence/ai/kb/{id}AdminApaga uma entrada de conhecimento
Parâmetros de caminho
idintegerobrigatórioId numérico da entrada.
Exemplo de requisição
bash
curl -X DELETE "$BASE_URL/api/v1/admin/whatsapp-confluence/ai/kb/12" \
-H "Authorization: Bearer $TOKEN"Resposta
200Entrada apagada
json
{
"status": "ok"
}Campos da resposta
statusstringSempre
ok.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 500 | Falha ao apagar. | {"error":"..."} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O usuário não tem papel de administrador. | {"error":"insufficient permissions"} |
| 403 | O administrador não tem o privilégio manage_settings. | {"error":"insufficient privileges","required":"manage_settings"} |