Pular para conteúdo

PIPEDRIVE_PERSON_GET - Buscar Pessoa no Pipedrive

O que é este Node?

O PIPEDRIVE_PERSON_GET é o node responsável por buscar informações detalhadas de uma pessoa específica no Pipedrive CRM usando o ID da pessoa.

Por que este Node existe?

Acessar dados completos de contatos é essencial para personalização. O PIPEDRIVE_PERSON_GET existe para:

  1. Dados Atualizados: Verificar informações mais recentes do contato
  2. Contexto: Obter histórico para personalizar atendimento
  3. Validação: Conferir se pessoa existe antes de operações
  4. Enriquecimento: Buscar dados adicionais como organização vinculada

Como funciona internamente?

Quando o PIPEDRIVE_PERSON_GET é executado, o sistema:

  1. Recebe ID: Coleta ID da pessoa
  2. Processa variáveis: Substitui {{person_id}}
  3. Faz requisição GET: Busca em /api/v1/persons/{id}
  4. Retorna dados: Pipedrive responde com informações completas
  5. Salva na variável: Armazena resposta

Código interno (pipedrive.executor.ts:48-51):

else if (operation === 'get') {
  const personId = this.replaceVariables(node.data.personId, context.variables);
  const response = await axios.get(`${endpoint}/${personId}?${authParam}`, { headers });
  result = response.data;
}

Quando você DEVE usar este Node?

Use PIPEDRIVE_PERSON_GET quando precisar consultar dados de contato:

Casos de uso

  1. Atendimento personalizado: Buscar histórico do cliente
  2. Validação: Verificar se pessoa existe
  3. Atualização: Obter dados atuais antes de modificar

Quando NÃO usar PIPEDRIVE_PERSON_GET

  • Buscar por nome/email: Use PIPEDRIVE_PERSON_SEARCH
  • Criar pessoa: Use PIPEDRIVE_PERSON_CREATE

Parâmetros

Campo Tipo Obrigatório Descrição
resource string Sim Deve ser "persons"
operation string Sim Deve ser "get"
personId string/number Sim ID da pessoa
config.apiToken string Sim Token API
config.companyDomain string Sim Subdomínio

Exemplo: Buscar Dados do Cliente

{
  "name": "Pipedrive - Buscar Pessoa",
  "nodes": [
    {
      "id": "start_1",
      "type": "start",
      "position": { "x": 100, "y": 100 },
      "data": { "label": "Início" }
    },
    {
      "id": "input_1",
      "type": "input",
      "position": { "x": 300, "y": 100 },
      "data": {
        "label": "ID Pessoa",
        "parameters": {
          "message": "ID da pessoa:",
          "variableName": "person_id"
        }
      }
    },
    {
      "id": "pipedrive_1",
      "type": "pipedrive",
      "position": { "x": 500, "y": 100 },
      "data": {
        "label": "Buscar",
        "resource": "persons",
        "operation": "get",
        "config": {
          "apiToken": "{{pipedrive_token}}",
          "companyDomain": "sua-empresa"
        },
        "personId": "{{person_id}}"
      }
    },
    {
      "id": "message_1",
      "type": "message",
      "position": { "x": 700, "y": 100 },
      "data": {
        "label": "Mostrar",
        "parameters": {
          "message": "Nome: {{pipedriveResult.data.name}}\nEmail: {{pipedriveResult.data.email[0].value}}"
        }
      }
    },
    {
      "id": "end_1",
      "type": "end",
      "position": { "x": 900, "y": 100 },
      "data": { "label": "Fim" }
    }
  ],
  "edges": [
    { "source": "start_1", "target": "input_1" },
    { "source": "input_1", "target": "pipedrive_1" },
    { "source": "pipedrive_1", "target": "message_1" },
    { "source": "message_1", "target": "end_1" }
  ]
}

Resposta do Node

{
  "success": true,
  "data": {
    "id": 123,
    "name": "João Silva",
    "email": [{"value": "joao@email.com", "primary": true}],
    "phone": [{"value": "11999998888", "primary": true}],
    "org_id": 456,
    "org_name": "Empresa ABC"
  }
}

Boas Práticas

SIM: - Valide se pessoa existe antes de usar dados - Use CONDITION para tratar erros - Salve dados em variáveis para reutilizar

NÃO: - Assumir que pessoa sempre existirá - Buscar repetidamente o mesmo ID

Próximos Nodes

PIPEDRIVE_PERSON_UPDATE - Atualizar pessoa → PIPEDRIVE_PERSON_SEARCH - Buscar por nome/email