코어 트리거
코어 트리거는 가장 일반적인 워크플로우 진입점을 다룹니다: 수동 호출, 스케줄 실행, 수신 HTTP 요청 및 파일 업로드.
수동 입력
사용자 또는 외부 시스템이 명시적으로 호출할 때 워크플로우를 시작합니다. 워크플로우가 실행되기 전에 채워야 하는 사용자 정의 입력 필드로 구성할 수 있습니다 — 요청 제출, 보고서 시작 또는 EKB 채팅 인터페이스에서 프로세스를 시작하는 것과 같은 온디맨드 작업에 적합합니다.
언제 사용하나요
- EKB UI에서 온디맨드로 또는 API를 통해 워크플로우를 실행하려는 경우.
- 워크플로우가 실행되기 전에 사용자 제공 입력이 필요한 경우.
- 특정 값으로 워크플로우를 테스트하거나 디버깅하는 경우.
구성
| 필드 | 유형 | 설명 |
|---|---|---|
| 입력 필드 | 임의 | 트리거 설정에서 구성된 사용자 정의 매개변수. 각 필드에는 이름, 유형 및 런타임에 사용자에게 표시되는 선택적 설명이 있습니다. |
출력 변수
| 변수 | 설명 |
|---|---|
trigger.user_input | 사용자가 제출한 원시 텍스트. |
trigger.inputs.<field> | 각 명명된 입력 필드의 값. <field>를 구성된 필드 이름으로 대체합니다(예: trigger.inputs.customer_name). |
trigger.chat_id | 실행을 시작한 채팅 세션의 ID. |
trigger.message_id | 워크플로우를 트리거한 메시지의 ID. |
Hello {{ trigger.inputs.customer_name }}, your request has been received.
참고
- 입력 필드는 워크플로우가 시작되기 전에 사용자에게 양식으로 표시됩니다. 필드 이름은 짧고 설명적으로 유지합니다.
trigger.user_input은 사용자 정의 입력 필드가 구성되지 않은 경우에도 사용 가능합니다.- 이 트리거를 프로그래밍 방식으로 호출하려면 워크플로우 ID와 필요한 입력 값을 포함하여 EKB API를 호출합니다.
웹훅
워크플로우에 고유한 HTTP 엔드포인트를 노출합니다. 타사 애플리케이션, 자동화 플랫폼 또는 사용자 정의 스크립트와 같은 외부 시스템이 해당 URL로 HTTP 요청을 보내 워크플로우를 시작할 수 있습니다. 요청 본문, 헤더, 쿼리 매개변수 및 HTTP 메서드는 모두 다운스트림 노드에 전달됩니다.
언제 사용하나요
- 외부 시스템이 이벤트 발생 시 Odin에 알림을 보내야 하는 경우(예: 양식 제출, 결제 이벤트 또는 다른 플랫폼의 업데이트).
- Automation Anywhere 또는 HTTP 엔드포인트를 호출할 수 있는 다른 시스템과 Odin을 통합하는 경우.
- 다른 개발자나 도구가 호출할 수 있는 API 엔드포인트로 워크플로우를 노출하려는 경우.
구성
| 설정 | 유형 | 설명 |
|---|---|---|
http_method | 문자열 | 엔드포인트가 수용할 HTTP 메서드: GET, POST, PUT, PATCH 또는 DELETE. |
auth_type | 문자열 | 수신 요청 인증 방법: none, basic 또는 header. |
response_mode | 문자열 | onReceived는 요청이 도착하자마자 즉시 HTTP 200을 반환합니다. lastNode는 워크플로우가 완료될 때까지 기다린 후 최종 출력을 HTTP 응답으로 반환합니다. |
출력 변수
| 변수 | 설명 |
|---|---|
trigger.body | 수신 요청의 JSON 본문. |
trigger.headers | 요청과 함께 전송된 HTTP 헤더. |
trigger.query | 요청의 URL 쿼리 매개변수. |
trigger.method | 호출자가 사용한 HTTP 메서드. |
trigger.webhook_url | 웹훅 엔드포인트의 전체 URL. 워크플로우를 호출할 외부 시스템과 공유합니다. |
응답 모드
| 모드 | 동작 |
|---|---|
onReceived | 요청이 도착하면 워크플로우가 완료되기 전에 즉시 HTTP 200 OK를 반환합니다. 일회성 시나리오에 사용합니다. |
lastNode | 워크플로우가 완료될 때까지 HTTP 연결을 열어둔 다음 최종 노드 출력을 응답 본문으로 반환합니다. 호출자가 동기 페이로드를 기대하는 경우에 사용합니다. |
참고
header인증을 사용하는 경우 트리거 설정에서 예상되는 헤더 이름과 값을 구성합니다.trigger.webhook_url은 통합 파트너에게 전송하는 설정 문서에 엔드포인트 URL을 포함하는 데 유용합니다.- Automation Anywhere에서 이 웹훅을 호출하는 경우 봇에서 HTTP 작업을 사용하여 웹훅 URL로 POST합니다.
스케줄
cron 식으로 정의된 반복 스케줄에 따라 자동으로 워크플로우를 실행합니다. 일일 보고서, 주기적 데이터 동기화 또는 반복 알림과 같은 시간 기반 작업을 수동 개입 없이 자동화하는 데 사용합니다.
언제 사용하나요
- 매일, 매주 또는 매월 정해진 시간에 워크플로우를 실행해야 하는 경우.
- 반복적인 비즈니스 프로세스를 자동화하는 경우(예: 매일 아침 데이터 가져오기, 주간 요약 전송).
- 정기적으로 외부 시스템을 폴링하려는 경우.
구성
| 설정 | 유형 | 설명 |
|---|---|---|
schedule | 문자열 | 워크플로우 실행 시점을 정의하는 cron 식. |
timezone | 문자열 | cron 식이 평가되는 표준시. UTC 또는 America/New_York과 같은 표준 시간대 이름을 허용합니다. |
항상 timezone 필드를 명시적으로 설정합니다. 설정하지 않으면 스케줄이 UTC에서 실행되며, 이로 인해 지역별 워크플로우에서 예상치 못한 타이밍이 발생할 수 있습니다.
cron 식 참조
cron 식에는 다섯 개의 필드가 있습니다: 분 · 시 · 일 · 월 · 요일.
┌───── 분 (0–59)
│ ┌───── 시 (0–23)
│ │ ┌───── 일 (1–31)
│ │ │ ┌───── 월 (1–12)
│ │ │ │ ┌───── 요일 (0–6, 일요일 = 0)
│ │ │ │ │
* * * * *
| 식 | 스케줄 |
|---|---|
0 9 * * * | 매일 오전 9시 |
0 9 * * 1 | 매주 월요일 오전 9시 |
0 */6 * * * | 6시간마다 |
0 8 1 * * | 매월 1일 오전 8시 |
*/15 * * * * | 15분마다 |
출력 변수
| 변수 | 설명 |
|---|---|
trigger.trigger_time | 스케줄이 실행된 시점의 ISO 8601 타임스탬프. |
trigger.schedule_expression | 이번 실행에 사용된 cron 식. |
trigger.trigger_type | 항상 "schedule". |
참고
- 스케줄 트리거는 사용자 입력을 전달하지 않습니다. 워크플로우에 동적 데이터가 필요한 경우 API 노드 또는 툴킷 도구를 사용하여 워크플로우 내에서 가져옵니다.
- 다운스트림 노드에서
trigger.trigger_time을 사용하여 레코드에 타임스탬프를 찍거나 스케줄된 실행이 발생한 시점을 기록합니다.
파일 업로드
하나 이상의 파일이 업로드될 때 워크플로우를 시작합니다. 각 파일의 콘텐츠, 이름, 크기 및 MIME 유형을 다운스트림 노드에 제공합니다 — 업로드된 보고서를 분석하거나, 스프레드시트에서 데이터를 추출하거나, 파일을 AI 모델에 라우팅하는 것과 같은 문서 처리 워크플로우에 적합합니다.
언제 사용하나요
- 사용자가 워크플로우가 처리할 파일을 제출하도록 하려는 경우(예: 송장, 계약서, CSV 내보내기).
- 업로드된 문서에서 콘텐츠를 추출하여 LLM 또는 데이터 처리 노드에 전달해야 하는 경우.
- 다중 파일 수집 파이프라인을 구축하는 경우.
구성
이 트리거에는 필수 구성 필드가 없습니다. 파일이 워크플로우와 관련된 채팅 또는 인터페이스에 업로드되면 자동으로 활성화됩니다.
출력 변수
- 단일 파일
- 다중 파일
| 변수 | 설명 |
|---|---|
trigger.file.content | 업로드된 파일의 전체 추출 텍스트 콘텐츠. |
trigger.file.name | 원본 파일 이름. |
trigger.file.size | 바이트 단위의 파일 크기. |
trigger.file.type | MIME 유형(예: application/pdf, text/csv). |
trigger.file_count | 업로드된 파일의 총 수. 단일 파일의 경우 1을 반환합니다. |
| 변수 | 설명 |
|---|---|
trigger.files | 업로드된 모든 파일의 배열. 각 항목에는 content, name, size 및 type이 포함됩니다. |
trigger.file_count | 업로드된 파일의 총 수. |
단일 실행에서 여러 업로드를 처리할 때 루프 노드를 사용하여 trigger.files를 반복합니다.
파일 콘텐츠는 평문으로 추출됩니다. PDF 및 Word 문서와 같은 바이너리 형식은 자동으로 분석됩니다 — 추출된 텍스트가 trigger.file.content에 표시됩니다.
참고
trigger.file은 항상 첫 번째(또는 유일한) 업로드된 파일을 참조합니다. 다중 파일 워크플로우의 경우 루프 노드와 함께trigger.files를 사용합니다.- 조건부 노드에서
trigger.file.type을 사용하여 다른 파일 유형을 다른 처리 분기에 라우팅합니다.