Skip to content

On a schedule

Remind me about Buffer posts waiting for approval

Every weekday at 10, an email lists Buffer posts still waiting for approval, oldest first, with the channel, who is waiting and when each post is due.

Runs
On a schedule
Apps
Buffer
AI
Not needed
Access
API key

Send this to your assistant

Create a ClickRuntime automation: every weekday at 10am, email me the Buffer posts waiting for approval, oldest first, with the channel, the due time and the first line, and mark any that are due within 24 hours.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Approval steps protect a brand, but they also create a queue that can stall. A contributor drafts a post for Wednesday, the approver is busy, and the post sits in "needs approval" past its slot.

This automation emails a short list of posts waiting for approval each weekday morning, oldest first, and marks anything due in the next 24 hours.

Approvers see the backlog in one place without opening Buffer, and time-sensitive posts get attention before they miss their slot.

What you get out of it

  • Fewer missed slots

    Posts due soon are marked so they get approved in time.

  • One daily list

    The whole backlog arrives together each weekday.

  • No email when clear

    Nothing is sent if no posts are waiting.

  • Approval stays human

    It reminds; it never approves.

  • All channels

    Waiting posts from every channel are included.

How it works

What happens, step by step

  1. Every weekday at 10am, ClickRuntime asks Buffer for posts that need approval.

  2. It sorts them by due time and marks any due within the next 24 hours.

  3. Each line shows the channel, the due time and the start of the post.

  4. If nothing is waiting, no email is sent.

Before it runs live

  • Connect Buffer

What you get

RunsOn a schedule
Remind me about Buffer posts waiting for approvaltoday, 9:00Succeeded
Email · 3 Buffer posts waiting for approvalDUE SOON · LinkedIn · Wed 11 Nov 09:00 · We're proud to share that our team has... Instagram · Thu 12 Nov 18:00 · New in store this week: hand-thrown mugs from... Facebook · Mon 16 Nov 12:00 · Join us for our winter open evening on...

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Run it at a different time, more or less often, or only on weekdays
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Slack
  • Combine it with other Buffer steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
remind_me_about_buffer_posts_waiting_for_approval.pyexample
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, credentials, http, notify, report_fetched

ORG_ID = "your-organization-id"

def buffer(query, variables=None):
    resp = http.post("https://api.buffer.com", json={"query": query, "variables": variables or {}},
                     headers={"Authorization": f"Bearer {credentials.secret('BUFFER_API_KEY')}"})
    resp.raise_for_status()
    return resp.json()["data"]

@on_trigger
def run(event):
    edges = buffer("query($org: OrganizationId!) { posts(input: {organizationId: $org, "
                   "filter: {status: [needs_approval]}, sort: [{field: dueAt, direction: asc}]}, first: 100) "
                   "{ edges { node { text dueAt channel { name service } } } } }", {"org": ORG_ID})["posts"]["edges"]
    posts = [e["node"] for e in edges]
    report_fetched(len(posts))
    if not posts:
        return {"waiting": 0}
    soon = datetime.now(timezone.utc) + timedelta(hours=24)
    lines = []
    for p in posts:
        due = datetime.fromisoformat(p["dueAt"].replace("Z", "+00:00")) if p.get("dueAt") else None
        flag = "DUE SOON · " if due and due <= soon else ""
        when = f"{due:%a %d %b %H:%M}" if due else "no time set"
        lines.append(f"{flag}{p['channel']['service'].title()} · {when} · {p['text'][:100]}")
    notify.email_me(f"{len(posts)} Buffer posts waiting for approval", "\n".join(lines))
    return {"waiting": len(posts)}

FAQ

Common questions

Which Buffer plans have approvals?
Approval workflows are part of Buffer's team plans. If your plan has no approvals, nothing will ever be waiting and no email is sent.
Can it approve posts for me?
No. Approving stays a human decision in Buffer. This only reminds the approver what is waiting.
Can the reminder go to the approver instead of me?
The email goes to the ClickRuntime account owner. Ask your assistant to post it to a Slack channel the approver watches instead.
What permissions does it need?
API key. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run each time it runs (on a schedule). Checks that find nothing to do and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Remind me about Buffer posts waiting for approval” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.