본문으로 건너뛰기

워크플로우

Connect Base 워크플로우 자동화 심화 가이드입니다.

개요

워크플로우를 사용하면 시각적 편집기로 비즈니스 로직을 자동화할 수 있습니다. 코드 없이 복잡한 작업 흐름을 설계하고 실행할 수 있습니다.

트리거 종류

이벤트 트리거

데이터 변경 시 자동 실행:

  • 데이터 생성됨
  • 데이터 수정됨
  • 데이터 삭제됨

스케줄 트리거

정해진 시간에 실행:

  • Cron 표현식 지원
  • 예: 0 9 * * 1 (매주 월요일 오전 9시)

웹훅 트리거

외부 HTTP 요청으로 실행:

  • 고유 웹훅 URL 제공
  • POST 요청 데이터를 변수로 사용

수동 트리거

콘솔이나 API에서 직접 실행

노드 타입

함수 노드

서버리스 함수 호출:

[함수: send-email]
├── 입력: { to, subject, body }
└── 출력: { success, messageId }

조건 노드

조건에 따라 분기:

[조건: order.amount > 100000]
├── True → [고액 주문 처리]
└── False → [일반 주문 처리]

반복 노드

배열 데이터 순회:

[반복: order.items]
└── 각 item에 대해 → [재고 차감]

대기 노드

지정 시간 대기:

[대기: 7일]
└── 이후 → [리마인드 이메일]

HTTP 노드

외부 API 호출:

[HTTP: POST https://api.slack.com/webhook]
├── 헤더: { Authorization }
└── 바디: { text }

변수 사용

트리거 데이터

{{ trigger.data }}      // 트리거 데이터 전체
{{ trigger.data.name }} // 특정 필드

이전 노드 결과

{{ nodes.node_1.output }}        // 이전 노드 출력
{{ nodes.send_email.success }}   // 특정 필드

환경 변수

{{ env.SLACK_WEBHOOK_URL }}
{{ env.ADMIN_EMAIL }}

예제: 신규 회원 온보딩

[트리거: user.created]
    │
    ▼
[함수: 환영 이메일 발송]
    │
    ▼
[대기: 1일]
    │
    ▼
[조건: 프로필 완성됨?]
    ├── Yes → [종료]
    └── No → [리마인드 이메일]
             │
             ▼
         [대기: 3일]
             │
             ▼
         [조건: 프로필 완성됨?]
             ├── Yes → [종료]
             └── No → [최종 리마인드]

모범 사례

1. 에러 처리

각 노드에 에러 핸들링 설정:

  • 재시도 횟수 설정
  • 실패 시 대체 경로 지정
  • 에러 알림 설정

2. 테스트 실행

프로덕션 배포 전 테스트:

  • 테스트 데이터로 실행
  • 각 노드 결과 확인
  • 로그 검토

3. 버전 관리

변경사항 추적:

  • 주요 변경 시 새 버전 생성
  • 이전 버전으로 롤백 가능