Update SDR interaction status
Permite que sistemas externos (backoffice) atualizem o status das interações SDR usando telefone ou CPF como identificador. **Autenticação:** - Requer API Key via header `X-API-KEY` ou `Authorization: Bearer {key}` - NÃO usa JWT (endpoint externo) **Identificadores Suportados:** - `phone`: Número de telefone brasileiro (aceita: 5511999999999, 11999999999, (11) 99999-9999) - `cpf`: CPF do cliente (aceita: 12345678901, 123.456.789-01) **Status Disponíveis:** - `interested`: Lead demonstrou interesse - `not_interested`: Lead não demonstrou interesse - `no_response`: Sem resposta do lead - `callback_requested`: Lead solicitou retorno - `converted`: Lead convertido em cliente **Comportamento:** - Busca a pessoa pelo identificador (telefone ou CPF) - Localiza a interação SDR mais recente para essa pessoa - Atualiza o status da interação - Se notes fornecido, concatena em interaction_notes com timestamp - Mantém histórico (não sobrescreve notes anteriores)
Permite que sistemas externos (backoffice) atualizem o status das interações SDR usando telefone ou CPF como identificador.
Autenticação:
- Requer API Key via header
X-API-KEYouAuthorization: Bearer {key} - NÃO usa JWT (endpoint externo)
Identificadores Suportados:
phone: Número de telefone brasileiro (aceita: 5511999999999, 11999999999, (11) 99999-9999)cpf: CPF do cliente (aceita: 12345678901, 123.456.789-01)
Status Disponíveis:
interested: Lead demonstrou interessenot_interested: Lead não demonstrou interesseno_response: Sem resposta do leadcallback_requested: Lead solicitou retornoconverted: Lead convertido em cliente
Comportamento:
- Busca a pessoa pelo identificador (telefone ou CPF)
- Localiza a interação SDR mais recente para essa pessoa
- Atualiza o status da interação
- Se notes fornecido, concatena em interaction_notes com timestamp
- Mantém histórico (não sobrescreve notes anteriores)
In: header
Request Body
application/json
Dados para atualização do status da interação SDR. Use identifier_type para especificar se o identificador é telefone ou CPF.
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/sdr/interactions/status" \ -H "Content-Type: application/json" \ -d '{ "identifier": "11999999999", "identifier_type": "phone", "status": "converted", "notes": "Cliente fechou contrato - Apólice #12345" }'{
"success": true,
"updated_count": 1,
"interaction_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"previous_status": "interested",
"new_status": "converted",
"person_name": "João Silva"
}{
"statusCode": 400,
"message": [
"identifier is required",
"identifier_type must be either \"phone\" or \"cpf\""
],
"error": "Bad Request"
}{
"statusCode": 401,
"message": "API key is missing",
"error": "Unauthorized"
}{
"statusCode": 404,
"message": "No SDR interaction found for phone: 11999999999",
"error": "Not Found"
}Create SDR interaction
Cria uma nova interação SDR e atualiza a tabela sell com informações de contato e qualificação. **Identificação do Contato:** O agente SDR deve fornecer **UM** dos seguintes campos para identificar o lead: - `phone`: Número de telefone do lead (formato brasileiro, com ou sem código 55) - Exemplo: `"5511999999999"` ou `"11999999999"` - `session_id`: UUID da sessão web (formato: Lia-{uuid}) - Exemplo: `"Lia-2a08196b-ac9a-4984-9f78-a681cf3653c3"` - Use quando o contato veio do chat web (sem telefone disponível) **Campos Obrigatórios:** - `phone` OU `session_id` (um dos dois) - `channel`: Canal usado ('whatsapp', 'sms', 'email') - `result`: Resultado da interação ('interested', 'not_interested', 'no_response', 'callback_requested', 'converted') **Comportamento:** - Busca pessoa existente pelo telefone (com matching flexível) ou cria pessoa mínima se não existir - Para UUIDs web, cria pessoa mínima automaticamente - Cria/atualiza registro em `sdr_interactions` - Atualiza tabela `sell` com informações de contato e qualificação - Sincroniza dados entre ambas as tabelas automaticamente - Evita duplicatas (atualiza se houver interação recente para o mesmo telefone/pessoa) **Exemplos de Uso:** 1. **Contato por telefone - Lead interessado:** - Fornece `phone` - Define `contact: true` e `result: "interested"` 2. **Contato por telefone - Lead qualificado:** - Fornece `phone` - Define `contact: true`, `sent: true`, `sent_to`, `converted_to_lead: true` 3. **Contato web (UUID) - Lead interessado:** - Fornece `session_id` (formato: Lia-{uuid}) - Define `contact: true` e `result: "interested"` 4. **Contato web (UUID) - Lead qualificado:** - Fornece `session_id` - Define `contact: true`, `sent: true`, `sent_to`, `converted_to_lead: true`
Get SDR KPI metrics
Returns aggregated KPI metrics (contacts, conversion rate, leads, avg response time, response rate) with role-based authorization and caching.