# `Jido.Chat.IngressResult`
[🔗](https://github.com/agentjido/jido_chat/blob/v1.0.0/lib/jido/chat/ingress_result.ex#L1)

Transport-agnostic typed inbound routing result.

Supports both request-based inputs (for example webhook HTTP requests)
and event-based inputs (for example polling or gateway listeners).

# `mode`

```elixir
@type mode() :: :request | :event
```

# `t`

```elixir
@type t() :: %Jido.Chat.IngressResult{
  adapter_name: nil | nil | atom(),
  chat: any(),
  event: nil | nil | any(),
  metadata: map(),
  mode: :request | :event,
  request: nil | nil | any(),
  response: nil | nil | any()
}
```

# `from_map`

```elixir
@spec from_map(map()) :: t()
```

Builds ingress result from serialized data.

# `new`

```elixir
@spec new(map()) :: t()
```

Creates a typed ingress result.

# `schema`

Returns the Zoi schema for IngressResult.

# `to_map`

```elixir
@spec to_map(t()) :: map()
```

Serializes ingress result into a plain map with type marker.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
