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.

Agentic Task
bundle.socialSlackOperationsMarketingNotifications & Alerts
PromptCreate

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.

What does this prompt do?

  • 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 do I need to use this?

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

How can I customize it?

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

FAQs

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.

Related templates

Auto-fix your calendar when a flight slips, and flag what's at risk

When your flight moves, your calendar times get corrected automatically and you get a Slack note naming the meetings you're about to miss.

Google Calendar
AviationStack
Slack
Agentic Task
Trace phishing emails to the sending IP and report abuse

Every 15 minutes, forwarded phishing reports get traced back to the server that really sent them, with a verdict in Slack and the worst senders reported.

AbuseIPDB
Gmail
Slack
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Turn each week's football fixtures into a venue staffing plan

Every Monday, rank the week's matches by expected demand, put the big ones on your venue calendar, and post a rota-ready summary to Slack.

API-Sports
Google Calendar
Slack
Agentic Task
Turn 5 star Yotpo reviews into a weekly marketing content queue

Every Tuesday we pull your best new reviews, draft social captions, email testimonials and product page quotes, then stage them in Notion for approval.

Yotpo
Notion
Slack
Agentic Task
Catch bad shipping addresses before you buy the label

Every weekday morning, unfulfilled orders get an address check: harmless typos fixed automatically, risky addresses held with a note to the customer.

Shippo
Shopify
Gmail
+1
Agentic Task

Stop finding out about failed posts a week later.

Set this up once and every silent publishing failure becomes a clear, actionable alert in your marketing channel.