n8n과 SalesQL을 활용한 자동 LinkedIn 잠재 고객 발굴 시스템 구축: 맞춤형 검색 조건 설정 및 CRM 연동

수동적인 LinkedIn 잠재 고객 발굴에서 벗어나세요! n8n과 SalesQL의 강력한 조합을 통해 맞춤형 검색 조건을 설정하고 CRM 시스템과 완벽하게 통합하여 잠재 고객 발굴 프로세스를 자동화하고 효율성을 극대화할 수 있습니다. 더 이상 시간을 낭비하지 마세요. 이제 성장에 집중할 때입니다.

1. The Challenge / Context

LinkedIn은 B2B 비즈니스에서 중요한 잠재 고객 발굴 채널이지만, 수동으로 프로필을 검색하고 정보를 추출하는 데 많은 시간과 노력이 소요됩니다. 특히, 특정 산업, 직책, 기술 스택 등 정확한 타겟 고객을 찾는 것은 더욱 어렵습니다. 이러한 비효율성은 영업 및 마케팅 팀의 생산성을 저해하고, 궁극적으로 비즈니스 성장에 부정적인 영향을 미칩니다. 따라서 잠재 고객 발굴 프로세스를 자동화하고 CRM 시스템과 연동하여 효율성을 높이는 것이 중요합니다.

2. Deep Dive: n8n과 SalesQL

n8n은 로우 코드 기반의 워크플로우 자동화 플랫폼입니다. 다양한 서비스와 API를 연결하여 복잡한 작업을 자동화할 수 있으며, 직관적인 인터페이스를 통해 쉽게 워크플로우를 구축하고 관리할 수 있습니다. SalesQL은 LinkedIn에서 프로필 정보를 추출하고 이메일 주소를 찾아주는 서비스입니다. LinkedIn Sales Navigator와 연동하여 더욱 정교한 검색 조건을 설정할 수 있으며, 추출된 데이터를 CSV, Excel 등 다양한 형식으로 내보낼 수 있습니다.

n8n의 핵심은 노드 기반의 워크플로우 구축입니다. 각 노드는 특정 작업을 수행하며, 노드 간의 연결을 통해 데이터 흐름을 정의합니다. 예를 들어, SalesQL 노드는 LinkedIn에서 프로필 정보를 추출하고, HTTP Request 노드는 CRM 시스템에 데이터를 전송하는 역할을 할 수 있습니다. n8n은 다양한 트리거(예: 스케줄, 웹훅)를 지원하여 자동화된 워크플로우를 구축할 수 있도록 돕습니다.

3. Step-by-Step Guide / Implementation

이제 n8n과 SalesQL을 활용하여 자동 LinkedIn 잠재 고객 발굴 시스템을 구축하는 방법을 단계별로 자세히 알아보겠습니다.

Step 1: SalesQL API 키 확보

SalesQL API를 사용하려면 API 키가 필요합니다. SalesQL 계정에 로그인하여 API 키를 발급받으세요. API 키는 워크플로우에서 SalesQL 노드를 인증하는 데 사용됩니다.

Step 2: n8n 워크플로우 생성

n8n 에디터에서 새로운 워크플로우를 생성합니다. 워크플로우의 시작은 Cron 트리거로 설정하여 주기적으로 실행되도록 합니다.

{
  "nodes": [
    {
      "parameters": {
        "cronExpression": "0 8 * * *"
      },
      "name": "Cron",
      "type": "n8n-nodes-base.cron",
      "typeVersion": 1,
      "position": [
        240,
        300
      ]
    }
  ],
  "connections": []
}

위 코드는 매일 오전 8시에 워크플로우를 실행하는 Cron 트리거를 설정하는 예시입니다.

Step 3: SalesQL 노드 추가 및 설정

n8n 워크플로우에 SalesQL 노드를 추가합니다. SalesQL 노드는 `n8n-nodes-salesql` 패키지를 설치하여 사용할 수 있습니다. 노드의 설정에서 API 키를 입력하고, 검색 조건을 설정합니다. 예를 들어, 특정 직책("Software Engineer"), 산업("Technology"), 위치("Seoul")를 검색할 수 있습니다.

{
  "nodes": [
    {
      "parameters": {
        "operation": "search",
        "companyName": "",
        "email": "",
        "firstName": "",
        "lastName": "",
        "linkedinURL": "",
        "location": "Seoul",
        "phoneNumber": "",
        "profileURL": "",
        "school": "",
        "searchText": "Software Engineer",
        "title": "Software Engineer",
        "industry": "Information Technology and Services",
        "numberOfPages": 1
      },
      "name": "SalesQL",
      "type": "n8n-nodes-salesql.salesql",
      "typeVersion": 1,
      "position": [
        480,
        300
      ],
      "credentials": {
        "salesqlApi": "YOUR_SALESQL_API_KEY"
      }
    }
  ],
  "connections": {
    "Cron": {
      "main": [
        [
          {
            "node": "SalesQL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

주의: YOUR_SALESQL_API_KEY 부분을 실제 SalesQL API 키로 변경해야 합니다.

Step 4: 데이터 변환 (Optional)

SalesQL에서 반환된 데이터 형식이 CRM 시스템에 맞지 않을 경우, Function 노드를 사용하여 데이터를 변환할 수 있습니다. 예를 들어, 이름과 성을 결합하거나, 특정 필드를 삭제할 수 있습니다.

const items = $input.all();
let newItems = [];

for (let item of items) {
  let newItem = {
    json: {
      fullName: item.json.firstName + " " + item.json.lastName,
      email: item.json.email,
      linkedinURL: item.json.profileURL
    }
  };
  newItems.push(newItem);
}

return newItems;

위 코드는 SalesQL에서 추출한 firstName과 lastName을 합쳐 fullName 필드를 생성하고, 필요한 정보만 추출하여 새로운 데이터 구조를 만드는 예시입니다.

Step 5: CRM 시스템 연동

n8n의 HTTP Request 노드 또는 CRM 시스템의 전용 노드를 사용하여 데이터를 CRM 시스템에 전송합니다. HTTP Request 노드를 사용하는 경우, CRM 시스템의 API 엔드포인트와 인증 방법을 설정해야 합니다.

{
  "nodes": [
    {
      "parameters": {
        "requestMethod": "POST",
        "url": "YOUR_CRM_API_ENDPOINT",
        "options": {},
        "bodyContentType": "json",
        "bodyParametersJson": "={\n  \"fullName\": \"{{ $json.fullName }}\",\n  \"email\": \"{{ $json.email }}\",\n  \"linkedinURL\": \"{{ $json.linkedinURL }}\"\n}",
        "headerParametersUi": {
          "parameter": [
            {
              "name": "Content-Type",
              "value": "application/json"
            },
            {
              "name": "Authorization",
              "value": "Bearer YOUR_CRM_API_TOKEN"
            }
          ]
        }
      },
      "name": "HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 1,
      "position": [
        720,
        300
      ]
    }
  ],
  "connections": {
    "Function": {
      "main": [
        [
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

주의: YOUR_CRM_API_ENDPOINTYOUR_CRM_API_TOKEN을 실제 CRM 시스템의 API 엔드포인트 및 인증 토큰으로 변경해야 합니다.

Step 6: 에러 처리 및 로깅

워크플로우 실행 중 발생할 수 있는 에러를 처리하고, 실행 결과를 로깅하는 것은 매우 중요합니다. IF 노드를 사용하여 에러를 감지하고, Logger 노드를 사용하여 로그를 기록할 수 있습니다.

4. Real-world Use Case / Example

저는 마케팅 자동화 컨설턴트로 일하면서, 고객사의 LinkedIn 잠재 고객 발굴 프로세스를 자동화하는 데 이 시스템을 활용했습니다. 기존에는 영업 팀이 LinkedIn Sales Navigator에서 수동으로 잠재 고객을 검색하고 정보를 수집하는 데 많은 시간을 소비했습니다. n8n과 SalesQL을 연동하여 자동화된 워크플로우를 구축한 결과, 잠재 고객 발굴에 소요되는 시간을 80% 이상 단축하고, 영업 팀은 보다 가치 있는 활동에 집중할 수 있게 되었습니다. 특히, 특정 기술 스택을 사용하는 개발자를 타겟팅하는 데 매우 효과적이었습니다.

5. Pros & Cons / Critical Analysis

  • Pros:
    • 시간 절약 및 효율성 향상
    • 정확한 타겟 고객 발굴
    • CRM 시스템과의 seamless한 연동
    • 로우 코드 기반으로 쉬운 워크플로우 구축
  • Cons:
    • SalesQL API 사용량에 따른 비용 발생
    • LinkedIn의 정책 변경에 따른 워크플로우 수정 필요 가능성
    • CRM 시스템 API에 대한 이해 필요

6. FAQ

  • Q: SalesQL API 사용량은 어떻게 관리하나요?
    A: SalesQL 계정에서 API 사용량을 확인할 수 있으며, 필요한 경우 더 많은 API 크레딧을 구매할 수 있습니다.
  • Q: n8n을 설치하는 방법은 무엇인가요?
    A: n8n 공식 문서 (https://docs.n8n.io/)를 참조하여 Docker, npm 등 다양한 방법으로 설치할 수 있습니다.
  • Q: LinkedIn 정책 변경에 어떻게 대응해야 하나요?
    A: LinkedIn 정책이 변경되면 SalesQL API의 동작 방식도 변경될 수 있습니다. SalesQL의 업데이트를 주시하고, 필요한 경우 워크플로우를 수정해야 합니다.

7. Conclusion

n8n과 SalesQL을 활용한 자동 LinkedIn 잠재 고객 발굴 시스템은 영업 및 마케팅 팀의 생산성을 극대화하고, 비즈니스 성장을 가속화하는 데 강력한 도구가 될 수 있습니다. 지금 바로 n8n을 설치하고, SalesQL API 키를 발급받아 자동화된 워크플로우를 구축해 보세요. 시간을 절약하고, 더 많은 잠재 고객을 확보하고, 비즈니스를 성장시키는 데 도움이 될 것입니다. n8n 공식 문서 (https://docs.n8n.io/) 와 SalesQL API 문서를 참고하여 더 많은 정보를 얻을 수 있습니다.