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

# Message Undelivered Input • AI Agent SDK

> MessageUndeliveredInput: Input for MESSAGE_UNDELIVERED hooks (a reply could not be delivered).

# MessageUndeliveredInput

> Defined in the [**events**](../modules/events) module.

<Badge color="blue">AI Agent</Badge>

Input for MESSAGE\_UNDELIVERED hooks (a reply could not be delivered).

Fired by the gateway when an outbound reply fails *permanently* (the target
was confirmed dead, or delivery exhausted its retries) so operators can
route the failure — mirror it to a home channel, alert, or re-queue —
without patching adapters. It is a notification only: the reply has already
been parked in the DLQ (when configured) and, best-effort, a short plain-text
notice may have been attempted on the same channel.

## Properties

<ResponseField name="platform" type="str">
  No description available.
</ResponseField>

<ResponseField name="content" type="str">
  No description available.
</ResponseField>

<ResponseField name="channel_id" type="str">
  No description available.
</ResponseField>

<ResponseField name="error" type="str">
  No description available.
</ResponseField>

<ResponseField name="notice_delivered" type="bool">
  No description available.
</ResponseField>

<Accordion title="Internal & Generic Methods">
  * **to\_dict**: Generic utility method.
</Accordion>

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/hooks/events.py#L363">
  `praisonaiagents/hooks/events.py` at line 363
</Card>
