> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/relay/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server.

# Enum Event

> Tagged union covering the two ATOF event kinds emitted by the runtime.

Generated from `cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker`.

```rust
pub enum Event {
    Scope(ScopeEvent),
    Mark(MarkEvent),
}
```

Tagged union covering the two ATOF event kinds emitted by the runtime.

## Variants

### `Scope(ScopeEvent)`

<pre />

Scope lifecycle event.

### `Mark(MarkEvent)`

<pre />

Point-in-time checkpoint event.

## Implementations

### `impl Event`

<pre />

#### `kind`

<pre />

Return the ATOF event kind.

##### Returns

`"scope"` for [`Event::Scope`](/reference/api/rust-library-reference/nemo-relay-plugin/enum-event) and `"mark"` for [`Event::Mark`](/reference/api/rust-library-reference/nemo-relay-plugin/enum-event).

#### `try_to_json_value`

<pre />

Try to return this event as the canonical JSON object delivered by language bindings to subscriber callbacks and ATOF exporters.

#### `to_json_value`

<pre />

Return this event as the canonical JSON object delivered by language bindings to subscriber callbacks.

#### `to_json_string`

<pre />

Return this event as canonical JSON.

#### `scope_category`

<pre />

Return the lifecycle phase for scope events.

##### Returns

`Some` lifecycle phase for scope events, otherwise `None`.

#### `category`

<pre />

Return the semantic category if present.

##### Returns

`Some` category for scope events and categorized mark events, otherwise `None`.

#### `category_profile`

<pre />

Return the category-specific profile if present.

##### Returns

`Some` profile when category-specific fields are present.

#### `category_profile_mut`

<pre />

Return the mutable category-specific profile if present.

##### Returns

`Some` mutable profile when category-specific fields are present.

#### `parent_uuid`

<pre />

Return the parent scope UUID, if the event is nested under a scope.

##### Returns

`Some` parent UUID when the event has a parent scope, otherwise `None`.

#### `uuid`

<pre />

Return the unique event or span UUID.

##### Returns

The event UUID.

#### `timestamp`

<pre />

Return the event timestamp.

##### Returns

The UTC event timestamp.

#### `name`

<pre />

Return the human-readable event name.

##### Returns

The event name.

#### `data`

<pre />

Return the optional application payload attached to the event.

##### Returns

`Some` payload when event data is present, otherwise `None`.

#### `data_schema`

<pre />

Return the optional data schema.

##### Returns

`Some` schema when the event payload declares one, otherwise `None`.

#### `metadata`

<pre />

Return the optional metadata attached to the event.

##### Returns

`Some` metadata when present, otherwise `None`.

#### `attributes`

<pre />

Return attributes for scope events.

##### Returns

`Some` attributes for scope events, otherwise `None`.

#### `scope_type`

<pre />

Return the semantic scope category for scope events.

##### Returns

`Some` legacy [`ScopeType`](/reference/api/rust-library-reference/nemo-relay-plugin/enum-scopetype) when the event has a category.

#### `input`

<pre />

Return the semantic input payload for start events.

##### Returns

`Some` payload for scope-start events with data, otherwise `None`.

#### `output`

<pre />

Return the semantic output payload for end events.

##### Returns

`Some` payload for scope-end events with data, otherwise `None`.

#### `model_name`

<pre />

Return the normalized model name for LLM events.

##### Returns

`Some` model name when the event profile includes one.

#### `tool_call_id`

<pre />

Return the provider-specific tool-call correlation identifier.

##### Returns

`Some` tool call identifier when the event profile includes one.

#### `annotated_request`

<pre />

Return the runtime-only annotated LLM request.

##### Returns

`Some` annotated request when the event profile includes one.

#### `annotated_response`

<pre />

Return the runtime-only annotated LLM response.

##### Returns

`Some` annotated response when the event profile includes one.

#### `is_scope_start`

<pre />

Return true for scope-start events.

##### Returns

`true` when the event is a scope-start event.

#### `is_scope_end`

<pre />

Return true for scope-end events.

##### Returns

`true` when the event is a scope-end event.

## Trait Implementations

### `impl Clone for Event`

<pre />

#### `clone`

<pre />

#### `clone_from`

<pre />

### `impl Debug for Event`

<pre />

#### `fmt`

<pre />

### `impl<'de> Deserialize<'de> for Event`

<pre />

#### `deserialize`

<pre />

### `impl PartialEq for Event`

<pre />

#### `eq`

<pre />

#### `ne`

<pre />

### `impl Serialize for Event`

<pre />

#### `serialize`

<pre />

### `impl StructuralPartialEq for Event`

<pre />