> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nora.my/llms.txt
> Use this file to discover all available pages before exploring further.

# Trigger 블록

> Flow가 시작되는 방식. 채팅, 웹훅, 스케줄, 이벤트

**Trigger 블록**은 Flow의 입구입니다. 실행이 *어떻게* 시작되는지, 그리고 *어떤 페이로드*가 첫 Agent로 들어가는지 정합니다.

Flow마다 Trigger가 적어도 하나는 있어야 합니다. 여럿도 됩니다. 같은 Flow가 채팅 UI, 웹훅, 야간 스케줄을 한꺼번에 받을 수 있죠.

## Trigger 종류

### 채팅 Trigger

기본입니다. Nora 대시보드, 공유한 워크스페이스 채팅 링크, 또는 임베드에서 Flow를 채팅 인터페이스로 띄웁니다. 턴마다 같은 세션 안에서 새 실행이 만들어집니다.

이렇게 정합니다.

* **Public link** 켬/끔. 켜면 공유할 수 있는 URL이 생깁니다(워크스페이스 인증이 걸립니다).
* **Anonymous access** 켬/끔. 기본은 끔입니다. 끄면 로그인이 필요합니다.
* **Session memory** 기억할 대화 턴 수. 기본은 20 입니다.

### 웹훅 Trigger

Flow를 HTTP 엔드포인트로 만듭니다. JSON을 POST 할 수 있는 무엇이든 부를 수 있습니다.

이런 걸 받습니다.

* URL: `https://api.platform.nora.my/flows/{slug}/trigger`
* 서명 시크릿. 요청마다 `X-Nora-Signature`로 들어갑니다.

POST 본문이 Trigger의 출력 페이로드가 됩니다. 첫 Agent가 그걸 입력으로 받습니다.

### 스케줄 Trigger

Flow를 크론 스케줄로 돌립니다.

* **Cron 표현식** 표준 5필드, `@daily` / `@hourly` 축약을 지원합니다.
* **Timezone** 기본은 워크스페이스 타임존입니다.
* **Payload 템플릿** 첫 Agent로 보낼 고정 JSON 페이로드(스케줄 실행을 파라미터로 다룰 때 좋습니다).

Flow를 언퍼블리시하면 스케줄이 자동으로 멈춥니다.

### 이벤트 Trigger

Nora 내부 이벤트에 걸립니다. 새 문서 인제스트, 피드백 추가, 신호 열림, 승인 결정 같은 것들이죠. 시스템 활동에 반응하는 메타 Flow에 좋습니다.

<Frame>
  <img src="https://mintcdn.com/conscience-technology/Jo24V8Wx9hATIxJq/images/docs/workflow-trigger-inspector.png?fit=max&auto=format&n=Jo24V8Wx9hATIxJq&q=85&s=698f20e2909865b6cdf8b1b3f51e12a3" width="400" alt="Trigger 인스펙터 — 스케줄 트리거의 cron 표현식, 시간대, 입력, Thread ID가 보인다" data-path="images/docs/workflow-trigger-inspector.png" />
</Frame>

## 서명(웹훅)

Trigger 인스펙터에서 언제든 서명 시크릿을 로테이션할 수 있습니다. 60분 유예 동안은 이전 서명도 받으므로, 다운타임 없이 호출자를 업데이트할 수 있습니다.

호출자 쪽에서 이렇게 확인합니다.

```python theme={null}
import hmac, hashlib
signature = hmac.new(secret.encode(), request.body, hashlib.sha256).hexdigest()
assert signature == request.headers["X-Nora-Signature"]
```

## 요율 제한

Trigger마다 요율 제한(RPS + 동시 실행)을 둡니다. 넘긴 요청은 `429`를 받습니다. 인스펙터 → **Limits**에서 조정합니다.

## 여러 Trigger

Trigger마다 다른 시작 Agent로 잇거나, 하나로 모을 수 있습니다. Agent의 입력 스키마는 받을 수 있는 모든 페이로드 모양을 다뤄야 합니다. 페이로드에 `type` 판별자를 두는 게 흔한 방법입니다.
