---
title: "How to configure internal events for the Start node"
description: "Instructions for configuring the Internal Events trigger for the Start node — tickets, SLA, delivery errors, filters."
---

# How to configure internal events for the Start node?

The **Internal Events** trigger runs the section when a ConnectiveOne system event occurs: ticket created, ticket updated, SLA breach, message delivery error, etc.

## When you need it

- Automatic reaction to ticket creation, update, a new **public** message in the ticket thread (operator or client, including Client Portal), or an operator **internal note**.
- Escalation when SLA is breached or when a ticket stays in a status too long.
- Reaction to message delivery error (Viber, Telegram, WhatsApp).

## What to know

- **Event** — a platform system event (ticket created, time in status exceeded, etc.).
- **eventConfig** — filter settings for the event (channel, client type, keywords, status, time).
- **Parameter reference** — detailed parameters for each event: [Internal events trigger reference](/en/scenariobuilder/reference/internal-events-trigger-reference.md).
- For **Internal note in ticket**: the text is not sent to the client; **Chat Reminder** does not treat the note as a public operator reply.

## Before you start

- [x] You are signed in with integrator or administrator rights.
- [x] You have a section with a Start node added.
- [x] Node Inspector is open.

## Steps

### 1. Select Internal Events trigger type

1. Select the Start node on the canvas.
2. In Node Inspector, in the **Trigger type** field, select **Internal Events**.

### 2. Select event type

1. Click **Select event** or **Change event**.
2. In the modal, choose the event type you need.

**Available events:**

| Category | Events |
|----------|--------|
| Tickets | Ticket created, Ticket updated, Status name changed, Ticket reassigned, Ticket reopened, **Ticket message** (new public message in ticket), **Internal note in ticket** (`ticket_internal_note`) |
| SLA and escalations | TFR escalated, TTC escalated, Time in status exceeded |
| Closure | Chat closed, Ticket closed |
| Messages | Message delivery error |

### 3. Configure filters (eventConfig)

After selecting an event, additional settings appear. The set depends on the event type.

#### General filters (for many events)

- **Channel filter** — only certain channels (Telegram, Facebook, WhatsApp, etc.). Empty value — all channels.
- **Client type** — new or existing customer. Empty — all customers.

#### Event "Time in status exceeded" (time_in_status_exceeded)

Has its own configuration block:

- **Status** — select a status from the list (e.g. "Open", "Pending").
- **Time** — hours, minutes, seconds. The section runs when the ticket has been in the selected status longer than the specified time.
- **Channels** — select channels the condition applies to (optional).

**Example:** Status "Open", time 2 hours, channels Telegram and Viber — the section runs if the ticket has been in "Open" status for more than 2 hours for dialogs from Telegram or Viber.

#### Event "Message delivery error" (message_delivery_error)

- **Error codes** (errorCodes) — array of e-chat error codes. If specified, the section runs only for these codes. Empty — all errors.
- **Channel filter** — only certain channels (Telegram, Viber, WhatsApp).

**E-chat error codes (example):**
- Viber: `2` (number not in use), `3` (temporary error), `4` (blocked), `5` (pending), `6` (cannot chat), `7` (new number).
- Telegram: `4` (blocked).

For details: [Internal events trigger reference](/en/scenariobuilder/reference/internal-events-trigger-reference.md).

#### Other events (ticket_created, ticket_updated, etc.)

For some events, additional filters may be limited or absent in the UI. See the [reference](/en/scenariobuilder/reference/internal-events-trigger-reference.md) if needed.

### 4. Save changes

1. Click **Save** in the toolbar.
2. Publish the scenario for changes to take effect.

## What happens next

The section runs when the selected event occurs and filter conditions are met. Event data is available in the scenario context (chat_room_id, channel, error_code, etc. — depending on event type).

## How to verify it works

- Ensure filters are correct — overly narrow conditions may not trigger.
- Ensure events actually occur in the system (e.g. create a test ticket).
- For "Time in status exceeded" — verify the correct status and time are selected.

## Common issues

| Problem | Solution |
|---------|----------|
| Internal events not firing | Verify filter correctness. Ensure events occur. Check that the scenario is published. |
| Too many triggers | Narrow filters: select a specific channel, client type, or other conditions. |
| "Time in status" not firing | Verify status and time are selected. Ensure channels are added (if required). |

## Related materials

- [What is the Start node](/en/scenariobuilder/explanation/what-is-start-node.md)
- [Internal events trigger reference](/en/scenariobuilder/reference/internal-events-trigger-reference.md)
- [Configure Start node triggers](/en/scenariobuilder/how-to/configure-start-node-triggers.md)
