# Catch failed social posts and alert your marketing team

> When a scheduled social post fails to go out, retry it if it was a blip and ping your marketing channel when an account needs reconnecting.

- Workflow type: agent
- Services: bundle.social, Slack
- Categories: Operations, Marketing
- Published: 2026-08-07

## What it does

- Watches for social posts that fail to publish, the moment bundle.social reports the failure rather than days later when someone notices the post is missing.
- Retries automatically when the failure looks temporary, then stops after two attempts so nothing sits in a retry loop.
- Posts a plain English alert to your marketing Slack channel when an account has genuinely lost access and needs reconnecting.
- Names the exact account and platform that broke, and includes the scheduled time plus a preview of the post that never went out.

## What you'll need

- A bundle.social account with at least one social account connected, such as Instagram, Facebook, LinkedIn or TikTok.
- A Slack workspace and the channel your marketing team actually watches.
- Permission to turn on failure notifications in your bundle.social organization settings.

## Prompt

When bundle.social sends a webhook telling me one of my posts has moved to ERROR status, triage the failure straight away instead of letting it fail silently. Publishing in bundle.social is asynchronous, so a post can be accepted, then quietly fail minutes later with nobody noticing until the content is missing from the feed.

Start by calling Get post in bundle.social with the post ID from the webhook, and read the errorsVerbose block on the post record. It is keyed by platform, and each entry carries a code, a userFacingMessage, an errorMessage and an isTransient flag. Treat errorsVerbose as the source of truth and handle each failing platform separately: one post can publish fine on LinkedIn and fail on Instagram, and the two need different responses.

If isTransient is true for a failing platform, call Retry post. Leave a few minutes between attempts, and give up after two retries so we never sit in a retry loop. Keep that cap explicit and do not exceed it. Failed posts still count against the organization's monthly quota, and the API enforces hard rate limits of 100 requests per second, 500 per 10 seconds and 2,000 per minute, so an uncapped retry against a failure that will never succeed burns both quota and rate limit. If the post is still in ERROR after the second retry, stop retrying and send the Slack alert described below, noting that automatic retries were exhausted.

If isTransient is false, for example an expired token or a revoked permission, do not retry at all. Retrying cannot fix an authorization problem. Go straight to alerting.

To alert, send a Slack message to my marketing channel. Name the exact social account and platform that broke. The errorsVerbose key gives the platform directly, and the error code prefix confirms the origin: META for Instagram, Facebook and Threads, TT for TikTok, LI for LinkedIn, YT for YouTube, TW for X, PIN for Pinterest, RD for Reddit, BSKY for Bluesky, MST for Mastodon, HTTP for generic API errors and NET for DNS or connection failures. If the post payload does not already identify the account clearly, call Get social account by team and type to resolve its handle or channel name so the alert names a real account rather than an ID.

Quote the userFacingMessage in plain English rather than the raw errorMessage string, and say clearly that the account needs reconnecting in bundle.social. Include the post's scheduled time and a preview of its content, roughly the first couple of hundred characters, so whoever picks it up immediately knows what did not go out and how time sensitive it is.

Optionally call Create portal link in bundle.social and include the resulting hosted URL in the Slack message as a one click reconnect link, so the person fixing it can reauthorize the account without navigating the dashboard themselves.

Do not alert for transient failures that recovered on retry. Those are noise. Only send a Slack message when a failure is non transient, or when the two retry attempts have been used up and the post is still in ERROR.

## How to customize

- Change which Slack channel gets the alert, or send it as a direct message to whoever owns social publishing.
- Adjust how many times a temporary failure is retried and how long to wait between attempts.
- Include a one click reconnect link in the alert so whoever picks it up can fix the account without hunting for it.

## FAQ

### What counts as a temporary failure?

Things like a brief platform outage or a network hiccup. bundle.social marks each failure as temporary or not, and this workflow only retries the ones marked temporary. Everything else goes straight to a Slack alert, because retrying cannot fix it.

### Will it keep retrying forever?

No. It stops after two retries. Failed posts still count against your monthly plan allowance, so an endless retry loop would quietly burn through capacity you paid for.

### What happens when an account has lost access?

It does not retry at all. It posts an alert naming the account and the platform, explains the problem in plain English, and says clearly that the connection needs restoring in bundle.social.

### Does this work if the same post goes to several platforms at once?

Yes. A post can publish fine on LinkedIn and fail on Instagram. Each failing platform is assessed on its own, and the alert names exactly which one broke rather than saying the whole post failed.

### Can I send the alerts somewhere other than Slack?

Yes, the alert step is straightforward to swap for email or another chat tool. Slack is the default because most marketing teams already work there all day.

Use this prompt in General Input: https://www.generalinput.com/prompts/catch-failed-social-posts-and-alert-your-marketing-team