n8n Webhook 노드 완벽 활용 : 외부 연동의 핵심

목차

    n8n Webhook 노드 완벽 활용 : 외부 연동의 핵심

    구글 폼이 제출되면 즉시 Slack에 알림이 오고, Python 스크립트가 끝나면 결과가 자동으로 시트에 쌓입니다.

    5분마다 체크하는 게 아니라 이벤트 발생 즉시 — 그게 Webhook입니다.

    이 글을 다 읽으면 외부 시스템의 데이터가 들어오는 n8n의 입구, Webhook을 완벽하게 설정할 수 있습니다.

    ① n8n Webhook 개념 — API는 물어보고, Webhook은 알아서 알려줌

    🎭 왜왜씨와 딱딱씨의 대화
    🤔
    왜왜씨

    Webhook이 뭔가요? API랑 뭐가 다른 거예요?

    🎯
    딱딱씨

    API는 "내가 물어보면 답해주는" 방식이고, Webhook은 "상대방이 알아서 알려주는" 방식이야!

    🤔
    왜왜씨

    아! 그래서 실시간으로 알림을 받을 수 있는 거군요?

    🎯
    딱딱씨

    딱 맞아! 구글 폼이 제출되면 Webhook으로 알려주고, Slack에 메시지가 올라오면 Webhook으로 알려주는 거지.

    핵심 비교

    API (Polling) - 내가 주기적으로 확인 (5분마다 체크)
    Webhook (Push) - 이벤트 발생 시 즉시 알림 (실시간)

    Webhook 작동 방식

    1. n8n이 고유한 Webhook URL 생성
    2. 외부 서비스에 해당 URL 등록
    3. 이벤트 발생 시 외부 서비스가 URL로 데이터 전송
    4. n8n 워크플로우가 즉시 실행

    ② n8n Webhook URL 설정하기

    기본 설정 항목

    설정 설명 예시
    HTTP Method 요청 방식 GET, POST, PUT
    Path URL 경로 /payment-callback
    Authentication 인증 방식 None, Basic, Header
    Response Mode 응답 시점 즉시, 마지막 노드

    Webhook URL 구조

    테스트 URL: https://your-n8n.com/webhook-test/abc123
    운영 URL: https://your-n8n.com/webhook/abc123

    테스트 URL은 에디터에서만 작동, 운영 URL은 활성화 후 사용

    ③ n8n Webhook 인증 — 무단 요청 막기

    Webhook URL이 노출되면 악의적인 요청이 들어올 수 있습니다.

    인증 옵션

    방식 설명 보안 수준
    None 인증 없음 🔴 낮음
    Basic Auth 사용자명/비밀번호 🟡 중간
    Header Auth 커스텀 헤더 토큰 🟢 높음

    💡 Header Auth 설정 예시

    Header Name: X-Webhook-Secret
    Header Value: my-super-secret-token-12345
    
    요청 시 헤더에 포함:
    X-Webhook-Secret: my-super-secret-token-12345
        
    🎯 딱딱씨의 팁

    운영 환경에서는 반드시 인증을 설정하세요!

    ④ n8n Webhook 응답 제어

    Response Mode 옵션

    • When Last Node Finishes - 워크플로우 완료 후 응답
    • Respond to Webhook - 별도 노드로 응답 제어
    • Using Response Node - 커스텀 응답 정의

    Respond to Webhook 노드

    // 성공 응답
    {
      "status": "success",
      "message": "데이터가 처리되었습니다",
      "processedAt": "{{ $now.toISO() }}"
    }
    
    // 에러 응답
    {
      "status": "error",
      "message": "{{ $json.errorMessage }}"
    }
    

    ⑤ n8n Webhook 실전 패턴

    💡 예제 1: 구글 폼 → 시트 저장 + 자동 응답

    • Webhook (POST /contact-form) — 폼 제출 시 즉시 호출
    • Set (데이터 정리)
    • Google Sheets (저장)
    • Gmail (제출자에게 자동 응답 메일)

    💡 예제 2: Slack 멘션 → ChatGPT 자동 응답 봇

    • Webhook (POST /slack-events) — Slack Event API에서 멘션 이벤트 수신
    • IF (멘션 여부 확인)
    • ChatGPT (질문에 대한 응답 생성)
    • Slack (채널에 답변 자동 게시)

    💡 예제 3: Python 스크립트 결과 → n8n 후속 처리

    • Webhook (POST /data-pipeline) — Python에서 처리 끝난 결과 전송
    • Switch (데이터 종류별 분기)
    • → 매출 데이터: Google Sheets 저장
    • → 에러 로그: Slack 알림 + Gmail 발송
    🎯 딱딱씨의 팁

    Webhook 노드 공식 문서에서 더 많은 설정을 확인하세요!

    핵심 정리

    Webhook - 외부에서 n8n으로 데이터 전송
    인증 필수 - Header Auth 권장
    응답 제어 - Respond to Webhook 노드
    실시간 - 이벤트 발생 즉시 처리

    3초 선택 가이드

    외부에서 데이터 받기? → Webhook 노드
    보안 필요? → Authentication → Header Auth
    응답 커스텀? → Respond to Webhook 노드
    테스트? → webhook-test URL (에디터에서만 작동)

    다음 글 예고

    👉 n8n HTTP Request 마스터 : 모든 API 연동하기


    Webhook은 외부 세계와 연결하는 다리입니다.
    실시간 자동화의 핵심을 마스터하세요!

    댓글

    이 블로그의 인기 게시물

    n8n으로 업무 자동화 시작하기 : 왜 필요하고 어떻게 활용할까?

    n8n 데이터 처리 노드 : Set, Split, Merge 완벽 정리

    n8n 트리거 노드 : 3가지 유형으로 자동화 시작하기