> For the complete documentation index, see [llms.txt](https://docs.dapta.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dapta.ai/ai-text-agents/campaigns/message-logic-and-limits.md).

# Message Logic & Limits

Understand Sequence schedules, waiting states, suppression, automatic retries, and provider limits.

A Text Sequence sends an approved WhatsApp template to eligible recipients. Successful import, attempted send, provider acceptance, delivery, and customer reply are different events.

Use this page for Sequence rules. The [template guide](/ai-text-agents/channels/message-templates.md) owns WhatsApp approval and customer-service-window rules.

## Schedule and lifecycle

Sending uses the sequence's configured time zone and allowed windows, not your computer's time zone. Outside a window it waits. An optional end date stops processing when reached; with no end date the sequence remains open-ended.

| Status                  | Meaning / next action                                                                                       |
| ----------------------- | ----------------------------------------------------------------------------------------------------------- |
| Queued                  | Accepted for processing; inspect the schedule if sending has not begun.                                     |
| Running                 | Processing eligible recipients; not proof that all messages were delivered.                                 |
| Waiting for schedule    | Before the start, outside allowed hours, or waiting for a scheduled retry.                                  |
| Waiting for contacts    | No eligible contacts are ready. New recipients can resume processing through supported ingestion.           |
| Waiting for daily limit | Capacity is exhausted; processing waits and rechecks it.                                                    |
| Paused                  | Sending is paused, manually or because a template restriction needs attention.                              |
| Completed               | The sequence has reached its configured end. An empty queue alone does not complete an open-ended sequence. |
| Cancelled               | Processing was cancelled; do not treat this as a temporary pause.                                           |
| Failed                  | Inspect the reported error before taking further action.                                                    |

An end date does not retract a message already accepted by the provider. Clearing an end date makes future processing open-ended; save the change and verify the displayed schedule.

## Duplicate protection and suppression

Importing the same number into the same sequence skips the duplicate; it does not reactivate the recipient. See [import outcomes](/ai-text-agents/campaigns/importing-contacts.md).

Sending also checks recent outreach for that recipient on the same channel across sequences. The 24-hour duplicate-protection check is separate from WhatsApp's customer-service window. A skipped/suppressed outcome means Dapta deliberately did not send, not that delivery is still pending.

Other suppression reasons can include opt-out, a blocked recipient, frequency protection, or a sending-line restriction. Read the reason in **Conversations**. Do not create another sequence or change senders merely to evade these protections.

## What is retried automatically?

| Outcome                                           | Behavior                                                                                                                                                              |
| ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Temporary/transient failure                       | Up to three attempts in total. Later attempts are scheduled for a subsequent permitted window; a next-day retry may wait longer when the schedule has no open window. |
| Provider rate limit                               | Processing waits before trying again; this is not the same as the transient three-attempt rule.                                                                       |
| Daily capacity reached                            | The sequence waits for capacity rather than treating every remaining recipient as failed.                                                                             |
| Template paused/disabled                          | The sequence pauses. Resolve the template issue before resuming.                                                                                                      |
| Permanent invalid-recipient/configuration failure | The send fails without the transient retry loop. Correct the cause; an import duplicate does not reset it.                                                            |
| Suppressed / ambiguous send outcome               | Inspect the reason and history. Do not assume a safe automatic resend or manually duplicate a potentially accepted send.                                              |

Delivery errors can arrive after provider acceptance. Review both the sequence recipient and conversation history before retrying.

## How Dapta protects your line while a sequence runs

Sending a lot of template messages from a WhatsApp number is the fastest way to damage it. Dapta watches the line while your sequence runs and holds sending back before a problem becomes a restriction.

| Protection                    | What it does                                                                                                     |
| ----------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Quality monitoring**        | Tracks your sender's availability, quality rating and messaging tier, and records when they change               |
| **Daily sending limits**      | Applies the most restrictive limit that applies to the line, rather than sending your whole audience at once     |
| **New-line warm-up**          | A newly connected line starts with a small daily allowance that grows as the line builds a history               |
| **Sudden-volume protection**  | Ties today's cap to your recent sending, so a quiet line cannot jump straight into a large campaign              |
| **Recipient protection**      | Respects opt-outs and blocks, and limits how often the same person receives marketing from you                   |
| **Duplicate protection**      | Prevents the same contact being sent the same thing twice, and records why a send was suppressed                 |
| **Automatic marketing pause** | Pauses marketing sends when quality drops or enough people refuse, while utility and authentication can continue |
| **Full template halt**        | Stops template sending altogether when the line's health needs attention                                         |
| **Operator recovery**         | You can see the reason for a pause, fix the cause, and resume — with a record of what happened                   |

**A pause is the product working, not a failure.** When sending stops, open the line's health view, read the reason, fix what caused it, and resume. Marketing pauses do not by themselves stop utility or authentication templates, though those still have to pass their own checks.

{% hint style="info" %}
Protection reduces avoidable risk. It does not override Meta: template approval, delivery eligibility and platform restrictions stay Meta's decision.
{% endhint %}

## Provider limits and quality

Meta/provider limits depend on the account, sending line, template category, recipient, and current quality/restrictions. Review the current values and errors in your connection details and provider account.

Do not plan throughput from a fixed tier table or assume that business verification guarantees a particular limit or upgrade time. An approved template and an open schedule do not override provider restrictions. Increasing the recipient list does not increase capacity.

If sending stalls, check in this order: sequence status → schedule/time zone → eligible contacts → line availability/assignment → template registration/status → provider error/capacity.

## Fallback calls follow separate rules

Automatic fallback calls honor their delay and the sequence's allowed window/end date. **Manual Retry is different: it can dispatch immediately, bypassing that delay, window, and end-date check.** Review [call fallback](/ai-text-agents/campaigns/call-fallback.md) before using it.

*Source review: September 17, 2026.*

{% content-ref url="/pages/uRpzLaOCmIdzifXeO9xO" %}
[Managing your sequence](/ai-text-agents/campaigns/managing-your-campaign.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.dapta.ai/ai-text-agents/campaigns/message-logic-and-limits.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
