{
  "id": "conversation-id-1",
  "status": "HUMAN_REQUESTED",
  "isAiEnabled": false,
  "channel": "whatsapp",
  "agent": {
    "id": "agent-id",
    "name": "Nome do Agente",
    "iconUrl": "https://exemplo.com/icon.png"
  },
  "lead": {
    "id": "lead-id",
    "email": "cliente@exemplo.com",
    "phoneNumber": "+5511999999999"
  },
  "metadata": {
    "reason": "Customer requested human support",
    "isFormSubmitted": false
  },
  "messages": [
    {
      "id": "message-id-1",
      "text": "Agente desativado. Conversa transferida para atendimento humano.",
      "from": "system",
      "createdAt": "2024-01-01T00:00:00.000Z",
      "conversationId": "conversation-id-1"
    }
  ],
  "workspace": {
    "id": "workspace-id",
    "organization": {
      "memberships": [
        {
          "user": {
            "email": "admin@empresa.com"
          }
        }
      ]
    }
  },
  "createdAt": "2024-01-01T00:00:00.000Z",
  "updatedAt": "2024-01-01T00:00:00.000Z"
}

Desativar Agente em Conversa

Este endpoint permite desativar o agente de IA em uma conversa específica, fazendo com que as mensagens futuras não sejam processadas automaticamente pelo agente.

Casos de uso

  • Transferir conversa para atendimento humano
  • Pausar respostas automáticas em conversas específicas
  • Permitir intervenção manual em conversas sensíveis
  • Desabilitar temporariamente o agente em conversas específicas

Parâmetros

ParâmetroTipoLocalizaçãoDescrição
conversationIdstringpathID da conversa (obrigatório)
isAiEnabledbooleanbodyDefine se o agente está ativo na conversa (false para desativar)
statusstringbodyStatus da conversa (opcional)
metadataobjectbodyMetadados adicionais da conversa (opcional)

Valores aceitos para status

  • UNRESOLVED - Conversa não resolvida
  • RESOLVED - Conversa resolvida
  • HUMAN_REQUESTED - Solicitação de atendimento humano

Exemplos de código

const deactivateAgent = async (conversationId) => {
  const response = await fetch(`https://dash.superagentes.ai/api/conversations/${conversationId}`, {
    method: 'PATCH',
    headers: {
      'Authorization': `Bearer ${seu_token_jwt}`,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      isAiEnabled: false,
      status: 'HUMAN_REQUESTED'
    })
  });
  
  const data = await response.json();
  return data;
};

Corpo da requisição

{
  "isAiEnabled": false,
  "status": "HUMAN_REQUESTED",
  "metadata": {
    "reason": "Customer requested human support"
  }
}

Exemplo de resposta

{
  "id": "conversation-id-1",
  "status": "HUMAN_REQUESTED",
  "isAiEnabled": false,
  "channel": "whatsapp",
  "agent": {
    "id": "agent-id",
    "name": "Nome do Agente",
    "iconUrl": "https://exemplo.com/icon.png"
  },
  "lead": {
    "id": "lead-id",
    "email": "cliente@exemplo.com",
    "phoneNumber": "+5511999999999"
  },
  "metadata": {
    "reason": "Customer requested human support",
    "isFormSubmitted": false
  },
  "messages": [
    {
      "id": "message-id-1",
      "text": "Agente desativado. Conversa transferida para atendimento humano.",
      "from": "system",
      "createdAt": "2024-01-01T00:00:00.000Z",
      "conversationId": "conversation-id-1"
    }
  ],
  "workspace": {
    "id": "workspace-id",
    "organization": {
      "memberships": [
        {
          "user": {
            "email": "admin@empresa.com"
          }
        }
      ]
    }
  },
  "createdAt": "2024-01-01T00:00:00.000Z",
  "updatedAt": "2024-01-01T00:00:00.000Z"
}

Códigos de resposta

CódigoDescrição
200Agente desativado com sucesso
400Dados inválidos na requisição
401Token de autenticação inválido
403Sem permissão para acessar esta conversa
404Conversa não encontrada
500Erro interno do servidor

Eventos disparados

Quando um agente é desativado, os seguintes eventos podem ser disparados:
  • conversation-resolved: Se o status for alterado para RESOLVED
  • human-requested: Se o status for alterado para HUMAN_REQUESTED
Estes eventos podem acionar notificações por email para os administradores e clientes, dependendo da configuração do workspace.