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

# Events

> Internally, Rasa conversations are represented as

Internally, Rasa conversations are represented as
a list of [events](/docs/reference/integrations/action-server/events). Rasa SDK provides classes
for each event, and takes care of turning instances of event classes into properly formatted
event payloads.

This page is about the event classes in `rasa_sdk`.
The side effects of events and their underlying
payloads are identical regardless of whether you use `rasa_sdk` or another action
server.
For details about the side effects of an event, its underlying
payload and the class in Rasa it is translated to
see the [documentation for events for all action servers](/docs/reference/integrations/action-server/events)
(also linked to in each section).

<Tip>
  **Importing events**

  All events written in a Rasa SDK action server need to be imported from `rasa_sdk.events`.
</Tip>

## Event Classes

### SlotSet

```python theme={null}
rasa_sdk.events.SlotSet(
    key: Text,
    value: Any = None,
    timestamp: Optional[float] = None
)
```

**Underlying event**: [`slot`](/docs/reference/integrations/action-server/events#slot)

**Parameters**:

* `key`: Name of the slot to set
* `value`: Value to set the slot to. The datatype must match the [type](/docs/reference/primitives/slots#slot-types)
  of the slot
* `timestamp`: Optional timestamp of the event

**Example**

```python theme={null}
evt = SlotSet(key = "name", value = "Mary")
```

### AllSlotsReset

```python theme={null}
rasa_sdk.events.AllSlotsReset(timestamp: Optional[float] = None)
```

**Underlying event**: [`reset_slots`](/docs/reference/integrations/action-server/events#reset_slots)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = AllSlotsReset()
```

### ReminderScheduled

```python theme={null}
rasa_sdk.events.ReminderScheduled(
    intent_name: Text,
    trigger_date_time: datetime.datetime,
    entities: Optional[Union[List[Dict[Text, Any]], Dict[Text, Text]]] = None,
    name: Optional[Text] = None,
    kill_on_user_message: bool = True,
    timestamp: Optional[float] = None,
)
```

**Underlying event**: [`reminder`](/docs/reference/integrations/action-server/events#reminder)

**Parameters**:

* `intent_name`: Intent which the reminder will trigger
* `trigger_date_time`: Datetime at which the execution of the action should be triggered.
* `entities`: Entities to send with the intent
* `name`: ID of the reminder. If there are multiple reminders with the same id only the last will be run.
* `kill_on_user_message`: Whether a user message before the trigger time will abort the reminder
* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
from datetime import datetime

evt = ReminderScheduled(
    intent_name = "EXTERNAL_dry_plant",
    trigger_date_time = datetime(2020, 9, 15, 0, 36, 0, 851609),
    entities = [{"name": "plant","value":"orchid"}],
    name = "remind_water_plants",
)
```

### ReminderCancelled

```python theme={null}
ReminderCancelled(
    name: Optional[Text] = None,
    intent_name: Optional[Text] = None,
    entities: Optional[Union[List[Dict[Text, Any]], Dict[Text, Text]]] = None,
    timestamp: Optional[float] = None,
)
```

**Underlying event**: [`cancel_reminder`](/docs/reference/integrations/action-server/events#cancel_reminder)

**Parameters**:

* `name`: ID of the reminder.
* `intent_name`: Intent which the reminder triggers
* `entities`: Entities sent with the intent
* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = ReminderCancelled(name = "remind_water_plants")
```

### ConversationPaused

```python theme={null}
ConversationPaused(timestamp: Optional[float] = None)
```

**Underlying event**: [`pause`](/docs/reference/integrations/action-server/events#slot)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = ConversationPaused()
```

### ConversationResumed

```python theme={null}
ConversationResumed(timestamp: Optional[float] = None)
```

**Underlying event**: [`resume`](/docs/reference/integrations/action-server/events#resume)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = ConversationResumed()
```

### FollowupAction

```python theme={null}
FollowupAction(
    name: Text,
    timestamp: Optional[float] = None
)
```

**Underlying event**: [`followup`](/docs/reference/integrations/action-server/events#followup)

**Parameters**:

* `name`: The name of the follow up action that will be executed.
* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = FollowupAction(name = "action_say_goodbye")
```

### UserUtteranceReverted

```python theme={null}
UserUtteranceReverted(timestamp: Optional[float] = None)
```

**Underlying event**: [`rewind`](/docs/reference/integrations/action-server/events#rewind)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = UserUtteranceReverted()
```

### ActionReverted

```python theme={null}
ActionReverted(timestamp: Optional[float] = None)
```

**Underlying event**: [`undo`](/docs/reference/integrations/action-server/events#undo)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = ActionReverted()
```

### Restarted

```python theme={null}
Restarted(timestamp: Optional[float] = None)
```

**Underlying event**: [`restart`](/docs/reference/integrations/action-server/events#restart)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = Restarted()
```

### SessionStarted

```python theme={null}
SessionStarted(timestamp: Optional[float] = None)
```

**Underlying event**: [`session_started`](/docs/reference/integrations/action-server/events#session_started)

**Parameters**:

* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = SessionStarted()
```

### UserUttered

```python theme={null}
UserUttered(
    text: Optional[Text],
    parse_data: Optional[Dict[Text, Any]] = None,
    timestamp: Optional[float] = None,
    input_channel: Optional[Text] = None,
)
```

**Underlying event**: [`user`](/docs/reference/integrations/action-server/events#user)

**Parameters**:

* `text`: Text of the user message
* `parse_data`: Parsed data of user message. This is ordinarily filled by NLU.
* `input_channel`: The channel on which the message was received
* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = UserUttered(text = "Hallo bot")
```

### BotUttered

```python theme={null}
BotUttered(
    text: Optional[Text] = None,
    data: Optional[Dict[Text, Any]] = None,
    metadata: Optional[Dict[Text, Any]] = None,
    timestamp: Optional[float] = None,
)
```

**Underlying event**: [`bot`](/docs/reference/integrations/action-server/events#bot)

**Parameters**:

* `text`: The text the bot sends to the user
* `data`: Any non-text elements of the bot response. The structure of `data` matches that of `responses` given in the [API spec](/docs/reference/api/pro/action-server-api/core-request-to-execute-a-custom-action).
* `metadata`: Arbitrary key-value metadata
* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = BotUttered(text = "Hallo user")
```

### ActionExecuted

```python theme={null}
ActionExecuted(
    action_name,
    policy=None,
    confidence: Optional[float] = None,
    timestamp: Optional[float] = None,
)
```

**Underlying event**: [`action`](/docs/reference/integrations/action-server/events#action)

**Parameters**:

* `action_name`: Name of the action that was called
* `policy`: The policy used to predict the action
* `confidence`: The confidence with which the action was predicted
* `timestamp`: Optional timestamp of the event

**Example**:

```python theme={null}
evt = ActionExecuted("action_greet_user")
```


## Related topics

- [Events](/docs/reference/integrations/action-server/events.md)
- [Events in Rasa](/docs/reference/primitives/events.md)
- [Event Brokers](/docs/reference/integrations/event-brokers.md)
- [Telemetry Event Reference](/docs/reference/telemetry/events.md)
- [Append events to a tracker](/docs/reference/api/pro/http-api/tracker/append-events-to-a-tracker.md)
