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

# Stop agent ads and alerts

> Pause everything agents turned on with one button or one tool call, the rejected-ads pause, every email DATALYR sends about agent ads, and the activity log.

You can stop all agent spend at once, from DATALYR or from chat. DATALYR also stops
agents on its own after repeated rejected ads, and emails you when something needs a
person.

## Stop agent ads

<Steps>
  <Step title="Open the setting">
    Open **Settings → Ad publishing**. Find **Stop agent ads** under **Live ads**.
  </Step>

  <Step title="Select Stop">
    Select **Stop**.
  </Step>

  <Step title="Confirm">
    Select **Pause everything agents turned on**.
  </Step>
</Steps>

An owner or admin can press **Stop**. From chat, ask the agent to stop: it calls
`stop_agent_ads` right away, with no preview. Any connection at Create paused or Publish
live can call it, for everything or for one platform or ad account (for example, "stop
the Meta ads").

| Stop does this, in order | Detail |
| - | - |
| Switches live ads off | For every ad account it covers. Agents can't turn anything on there until the owner switches live ads back on. |
| Cancels waiting turn-ons | Requests waiting for approval that would start spend (turn on, raise a budget, new content for a running ad) close as cancelled, and their approval links stop working. |
| Halts running turn-ons | A batch that is turning things on stops before its next call, and pauses again anything that just went on. |
| Pauses what agents turned on | Every campaign, ad set and ad an agent turned on and hasn't paused since. Campaigns first, so spend stops soonest. |

Stop leaves alone anything a person turned on, and any object an agent paused that a
person later turned back on.

The result says how many objects it paused. If some couldn't be paused, it names them.
Pause those in Ads Manager: on Meta, filter by the label `datalyr-agent`. On TikTok and
Google Ads, search for names ending in ` · dl-`.

To start again, the owner switches live ads back on per ad account under **Live ads**.

## The rejected-ads pause

If a platform rejects 3 ads that agents created in one ad account within 24 hours, agents
stop there. Nothing already created changes.

| What you see | Where |
| - | - |
| `Stopped after rejected ads` and **Turn back on** | **Settings → Ad publishing → Platforms**, on the platform's row |
| The email **Agents stopped on Meta after rejected ads**, with each rejected ad and the platform's reason | Owners' and admins' inboxes, when **Alarm emails** is on |
| `can_publish: false` with the reason | The agent's `list_ad_accounts` answer |

Read the rejection reasons, fix the cause, then select **Turn back on**. An owner or admin
can do this. Turn the pause off with **Stop agents after 3 rejected ads in 24 hours**
under **Safety**. It is on by default.

DATALYR re-reads the review status of agent-made ads every 15 minutes for 7 days after
they are created.

## Emails

Every email goes to the workspace's owners and admins.

| Email | When | Turn off |
| - | - | - |
| **An agent turned ads on in …** | An agent turned something on or raised a budget | Always sent |
| **Pause an agent ad on … now** | An ad came back active after a create, and pausing it failed | Always sent |
| **Agents stopped on … after rejected ads** | The rejected-ads pause stopped an ad account | **Alarm emails** |
| **Check … for agent ads** | The platform stopped answering during a create, so some ads are unconfirmed | **Alarm emails** |
| **Agent ads, (day): …** | Once a day, when agents did anything with ads: ads created, rejected, and waiting for approval | **Daily digest** |

**Alarm emails** and **Daily digest** are under **Settings → Ad publishing → Notifications**.
Both are on by default.

## The activity log

Open **Settings → Ad publishing** and select the **Activity** tab. Agents read the same log
with `list_ad_activity`.

| Entry | Example |
| - | - |
| Ads created, with each ad's review status and rejection reason | `Created 3 paused ads` |
| Campaigns, ad sets and changes | `Turned on 2 objects`, `Changed 1 budget` |
| Approvals requested and decided | `Approval requested for 2 ads`, `Not approved: turning on 1 object` |
| Unconfirmed or failed work | `Not confirmed: …`, `Couldn't create 1 ad` |
| Files uploaded | `Uploaded 2 images` |
| Live ads, platforms and the rejected-ads pause | `Live ads switched off`, `Turned on Meta`, `Agents stopped after 3 rejected ads` |
| Settings changes | `Daily digest turned off`, `Added shop.example.com to my domains` |

Each entry names who did it: the person, the MCP connection, or the API key.

## Verify

1. Select **Stop**.
2. Select **Pause everything agents turned on**.
3. Confirm the message `Stopped. Paused N.` or `Stopped. Live ads are off.`
4. Confirm every **Live ads** switch is off.
5. In Ads Manager, confirm the agent-made objects show as paused.

## Next

* [Turn ads on within spend limits](/agent-ads/live-ads-and-spend-limits): switch live ads back on.
* [Troubleshoot agent ads](/agent-ads/troubleshooting): unknown outcomes and rejected ads.
* [Change ads after launch](/agent-ads/change-ads): pause one object instead of all.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.