콘텐츠로 이동

16 Things I Wish I Knew About n8n Before I Started

원본 영상: 16 Things I Wish I Knew About n8n Before I Started

n8n을 처음 배울 때 놓치기 쉬운 멀티 트리거, 데이터 고정·편집, 서브에이전트 패턴, 웹훅 설정, 데이터 타입(array/object) 개념 등 16가지를 실전 워크플로 화면과 함께 설명한다.

  1. 멀티 트리거: 하나의 워크플로에 여러 Form Submission 트리거를 붙일 수 있다. 랜딩페이지별(구글 광고용, SEO용, 페이스북 광고용 등) 별도 폼을 만들되 같은 워크플로로 수렴시키는 구조.

  2. Pin Data: 모듈을 더블클릭하면 상단에 “Pin Data” 옵션이 있다. 테스트할 때마다 폼을 다시 제출하지 않아도 되도록 샘플 데이터를 고정시켜 매번 동일한 mock 데이터로 실행 가능.

  3. Pin Data 편집: 고정된 데이터를 연필 아이콘으로 직접 수정할 수 있다. 필드 추가·값 변경이 가능해 다양한 테스트 케이스를 폼 제출 없이 처리.

  4. AI 에이전트 + Call n8n Workflow 툴: 에이전트의 Tools 패널은 기본 제공 앱이 제한적이지만, “Call n8n Workflow” 툴을 추가하면 서브 워크플로를 호출해 사실상 모든 앱에 접근 가능. 메인 에이전트 → 서브 워크플로 구조로 툴 확장.

  5. 서브 워크플로 파라미터 전달: 메인 에이전트에서 서브 워크플로로 파라미터를 넘기려면 서브 워크플로의 트리거에서 Input Data Mode를 JSON으로 설정하고 필드를 정의한 뒤 저장·새로고침해야 메인 에이전트에 해당 필드가 노출됨.

  6. 다중 모듈 선택·이동: Shift + 드래그로 여러 모듈을 선택해 한 번에 이동. Command/Ctrl+C로 복사 후 다른 워크플로에 Ctrl+V로 붙여넣기 가능.

  7. Command/Ctrl+S 저장: 탭을 닫기 전 저장하지 않으면 작업이 날아감. 습관적으로 자주 저장 권장.

  8. Rate Limiting 대응 — Wait 스텝: Google Sheets 등에 대량 데이터를 보낼 때 429 에러(Too Many Requests) 발생. 1초짜리 Wait 스텝을 추가하면 분당 처리량이 60회로 제한되어 쿼터 초과 방지.

  9. 웹훅 HTTP 메서드 일치: 외부 서비스는 대부분 POST로 데이터를 전송하는데, n8n 웹훅 트리거의 기본값은 GET. 반드시 HTTP Method를 발신 측과 일치시켜야 404 에러가 발생하지 않음.

  10. 에러 워크플로: Settings에서 “Error Workflow”를 지정하면 워크플로 실패 시 자동으로 해당 워크플로가 실행됨. Slack 메시지나 이메일로 즉시 알림 가능 — 클라이언트보다 먼저 오류를 인지하는 데 필수.

  11. JMESPath로 중첩 데이터 추출: {{ $jmesPath(data, 'people[*].name') }} 형태로 깊게 중첩된 배열에서 특정 키만 뽑아낼 수 있다. 표현식 편집기에서 {{$ → JMESPath 선택.

  12. 버전 히스토리(Revert): 워크플로 우상단 버전 히스토리 버튼으로 이전 저장 시점으로 되돌리기 가능.

  13. 데이터 타입 이해: 아래 섹션 참조.

  14. Split Out: 배열(리스트)을 개별 아이템으로 분해해 하나씩 처리.

  15. Filter: Split Out 이후 조건(예: budget ≥ 1,000)으로 아이템을 걸러냄.

  16. Aggregate: Split Out의 역연산. 개별 아이템을 다시 배열로 묶음. 예: 50개 리드를 개별 처리 후 하나의 이메일로 묶어 전송.

기능위치 / 방법용도
Pin Data모듈 더블클릭 → 상단 버튼mock 데이터 고정으로 반복 테스트
Pin Data 편집연필 아이콘필드 값·키 수정
멀티 트리거캔버스에 트리거 추가폼별 분기 없이 단일 워크플로 수렴
Call n8n Workflow에이전트 Tools → + 버튼서브 워크플로로 툴 무한 확장
Wait 스텝+ 버튼 → Wait1초 설정으로 rate limit 회피
웹훅 HTTP Method트리거 설정 → HTTP MethodPOST/GET 발신 측과 반드시 일치
Error Workflow워크플로 Settings → Error Workflow실패 시 알림 자동화
JMESPath표현식 $jmesPath(arr, 'key[*].field')중첩 배열 데이터 추출
Revert버전 히스토리 버튼실수 복구
타입설명예시
String텍스트이름, 문의 내용
Number숫자예산, 직원 수
Booleantrue/false인증 여부
Date날짜폼 제출일
Binary파일·이미지PDF, PNG
Object(Collection)key-value 쌍{name: "Jane", email: "..."}
Array리스트 (위 타입 모두 가능)[Bob, Fred, George]
  • Google Sheets API 쿼터: 분당 300 요청 초과 시 429 에러 발생 (Google 공식 문서 인용)
  • Wait 1초 추가 시 분당 최대 60회 처리 → 쿼터 내 유지
  • 예시 워크플로: Google Maps에서 “Toronto landscapers” 검색 결과 스크래핑 후 Google Sheets 적재 (Apify 사용)
  • 예시 필터링: 리드 3명(Bob $1,000 / Fred $500 / George $2,000) 중 예산 $1,000 미만인 Fred 제외 → 2명만 HubSpot에 추가
  • Apify: Google Maps 웹 스크래핑에 활용
  • Req.bin (또는 유사 서비스): 웹훅 테스트용 무료 요청 수신 도구
  • JMESPath 패턴: {{ $jmesPath($json.people, '[*].name') }} — 사람 목록에서 이름만 추출
  • 에이전트 확장 패턴: 메인 AI Agent → Call n8n Workflow 툴 → 서브 워크플로(When Executed by Another Workflow 트리거) → 모든 앱 접근 가능
  • 에러 알림 패턴: Error Workflow 지정 → Gmail/Slack 노드로 팀 알림
  • 배열 처리 패턴: Split Out → Filter → (각 앱으로 처리) → Aggregate → 단일 이메일 발송