Consultas
Schema de Captura para Conversa
Retorna os schemas dos campos ainda pendentes de captura em uma conversa, filtrando pelo que já foi coletado
Endpoint
POST /getCaptureSchemaForConversation
Parâmetros
conversationId
string (UUID)
requiredID da conversa a ser avaliada.
formCatalogIds
array de UUIDs
IDs dos formulários a considerar. Se omitido, avalia todos os formulários do host.
Exemplo
curl -X POST {BASE_URL}/getCaptureSchemaForConversation \
-H "Authorization: Bearer {TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"conversationId": "uuid-da-conversa",
"formCatalogIds": ["uuid-formulario-1"]
}'
Resposta
{
"conversationId": "uuid",
"leadId": "uuid",
"hostId": "uuid",
"totalSchemas": 1,
"totalForms": 1,
"schemas": [
{
"formId": "uuid",
"formName": "Formulário de Contato",
"scope": "lead",
"totalFields": 5,
"fieldsToCapture": 3,
"schema": {
"name": "form_uuid",
"description": "Captura estruturada...",
"parameters": {
"type": "object",
"properties": {
"nome_cliente": {
"type": "string",
"description": "Nome do Cliente"
}
}
}
},
"fields": [
{
"variableId": "uuid",
"keyName": "nome_cliente",
"label": "Nome do Cliente",
"dataType": "text",
"required": false,
"captureStrategy": "keep_first"
}
]
}
],
"forms": [
{
"formId": "uuid",
"formName": "Formulário de Contato",
"totalFields": 5,
"fieldsToCapture": 3,
"needsCapture": true
}
]
}
Campos da Resposta
totalSchemas
number
Quantidade de schemas retornados (formulários com campos pendentes).
schemas
array
forms
array
Resumo por formulário com needsCapture indicando se há campos pendentes.
Estratégias de captura
| Estratégia | Comportamento |
|---|---|
keep_first | Retorna apenas campos sem nenhum valor armazenado |
overwrite | Retorna todos os campos (permite sobrescrever valor existente) |
append | Retorna todos os campos (permite adicionar múltiplos valores) |
Erros
| Código | Descrição |
|---|---|
400 | conversationId ausente ou inválido |
401 | Token inválido ou ausente |
404 | Conversa não encontrada |
500 | Erro interno do servidor |