> ## 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.

# Delivery Validation • AI Agent SDK

> DeliveryValidation: Result of a creation-time delivery-target pre-flight (Issue #3800).

# DeliveryValidation

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

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

Result of a creation-time delivery-target pre-flight (Issue #3800).

A scheduled job or agent-initiated proactive message carries a
`DeliveryTarget` whose reachability is otherwise only discovered when the
job *fires* — potentially hours later, where an unroutable target is
silently dropped or dead-target self-healed. This closed shape lets a
resolver answer "will this route?" the moment the send is created, so the
creator gets an immediate, actionable error instead of a late invisible
drop.

Attributes:
ok: Whether the target resolves to a reachable channel/route.
reason: On failure, a human-readable explanation of why it is
unroutable (empty when `ok`).
hint: On failure, an actionable next step (e.g. the configured
channels, or a command to list them); empty when `ok`.
preview: A dry-run preview of the destination (e.g.
`"telegram:@alice (session main)"`) suitable for surfacing to the
creator before commit.

## Properties

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

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

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

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

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/gateway/protocols.py#L2317">
  `praisonaiagents/gateway/protocols.py` at line 2317
</Card>
