Connection and access
| Symptom | Cause | Fix |
|---|---|---|
list_ad_accounts shows action: reconnect | The platform was connected before agent ads, or the connection expired. | Select Reconnect for the platform in Sources. |
action: connect | The platform isn’t connected. | Connect it in Sources and select the ad account. |
That ad account isn't this workspace's selected account | The agent used another account. Agents work in the one selected account per platform. | Select the account in Sources, or ask the agent to use list_ad_accounts. |
This connection can only read ads | You are a member, or the connection holds no ads level. | Connect as an owner or admin, and keep an ads row on the consent page. |
403 with insufficient_scope | The connection or key lacks the ads level the tool needs. | Reconnect with the right level, or ask the owner for a key with it. |
Publishing switched off
| Symptom | Cause | Fix |
|---|---|---|
Agents are switched off for Meta in Settings → Ad publishing | The platform switch is off under Platforms. | An owner or admin turns it on. |
Agents were stopped for this account after 3 rejected ads in 24 hours | The rejected-ads pause stopped the account. | Read the reasons in Activity, fix the cause, and select Turn back on. |
Publishing to TikTok is switched off by DATALYR right now | DATALYR has paused that platform for everyone. | Wait, and work in Ads Manager meanwhile. |
Approvals and limits
| Symptom | Cause | Fix |
|---|---|---|
The yes returns approval_required | The level, the role, live ads or a limit doesn’t allow it directly. | Open approval_url as the right person. See Who approves. |
| An admin can’t select Approve | Turning on, raising budgets, new content for running ads and deletes are the owner’s. | Send the link to the owner. |
This request has expired | The approval link is older than 24 hours. | Ask the agent to preview again. |
too_many_pending | 50 requests are already waiting. | Approve or deny some under Settings → Ad publishing. |
Over a limit: in the preview | The new spend passes a spend limit. | The owner approves it, or raises the limit. |
limit_reached after the yes | Another turn-on used the room since the preview. | Preview again. The yes then goes to the owner. |
No exchange rate from … to … | DATALYR can’t convert the account’s currency to check the limits. | The owner approves it. |
Confirm tokens and outcomes
| Symptom | Cause | Fix |
|---|---|---|
The preview expired (30 minutes). Preview again. | The token is older than 30 minutes. | Ask the agent to preview again. |
confirm_token_invalid saying something changed | The request, a status, a budget, your access, the live switch or a limit changed. | Preview again and read the new summary. |
That confirm token was already used | Tokens work once. | Preview again. |
operation_id … was already used for other changes | The agent reused an id for a different request. | Ask it to use a new operation_id. |
Status unknown | The platform didn’t answer, so DATALYR can’t tell whether it happened. Anything created is paused. | Check Ads Manager (Meta label datalyr-agent, TikTok and Google names ending · dl-) and get_ad_status before any retry. |
in_progress | The same request is still running. | Wait, then check with get_ad_status. |
Platform messages
| Symptom | Cause | Fix |
|---|---|---|
| A Meta edit fails on a rate limit | Meta allows one edit per ad every 30 seconds. DATALYR already waited once. | Wait a minute, then preview again. |
Still uploading this video to TikTok | Large videos upload to TikTok in parts. | Preview again in a minute. The upload continues where it stopped. |
Ads shown in the EU must name who benefits and who pays | The Meta ad account has no beneficiary and payer. | Set them in Meta Ads Manager’s ad account settings, then preview again. |
can_add_ads: false on an ad set | The ad set’s type isn’t available to agents. blocked_reason says which. | Pick another ad set, or ask the agent to create one. |
An ad comes back rejected | The platform’s review refused it. The reason is in get_ad_status and Activity. | Fix the content with update_ad_content on Meta, or create a new ad. Three rejections in 24 hours stop agents on that account. |
Next
- How agents publish: statuses and results.
- Stop agent ads and alerts: the rejected-ads pause and emails.
- Access levels and approvals: who approves what.