Skip to content

On a schedule

Approve articles from your feeds before they go to Facebook and X

New articles from feeds you follow become draft posts, emailed to you with an approve link; approved ones go to Facebook and X.

Runs
On a schedule
Apps
Facebook Pages, X
AI
Yes, uses the built-in AI allowance
Access
pages_manage_posts; tweet.write

Send this to your assistant

Create a ClickRuntime automation: every hour, check my news feeds for new articles. Write a draft post for each, email me approve links, and when I approve, publish it to my Facebook Page and X.

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

An industry association wants to share useful news with members, but can't risk posting something off-message. Reading feeds, drafting posts and getting sign-off takes a staff member half a day each week.

New articles from trusted feeds now arrive in the inbox as ready-written drafts, each with an approve link. One click publishes it on Facebook and X; anything not approved is simply never posted.

What you get out of it

  • Curated news without the reading time

    Drafts arrive ready to judge, so you only decide yes or no.

  • Nothing posts without approval

    Your brand stays safe from off-message shares.

  • One click to publish both

    Approving posts to Facebook and X together.

  • Feeds you trust

    Only sources you choose are used.

How it works

What happens, step by step

  1. Every hour, ClickRuntime checks your chosen feeds for new articles.

  2. AI writes a draft post for each one, and the drafts are stored.

  3. You get an email with each draft and an approve link.

  4. When you click approve, that post is published to your Facebook Page and X, once.

Before it runs live

  • Connect Facebook Pages
  • Connect X

What you get

RunsOn a schedule
Approve articles from your feeds before they go to Facebook and Xtoday, 9:00Succeeded
Email · 3 drafts to approveNew EU packaging rules take effect next year. Here's what members need to know. Approve: …

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

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Slack
  • Combine it with other Facebook Pages and X 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.
rss_articles_cross_posted_after_approval.pyexample
import feedparser
from clickruntime import on_trigger, on_event, credentials, http, ai, state, notify, report_fetched

PAGE_ID, LINK = "1234567890", "https://run.clickruntime.example/t/abc123"

@on_trigger
def run(event):
    seen, lines = state.get("seen") or [], []
    new = [e for e in feedparser.parse("https://news.example.org/industry.rss").entries if e.link not in seen]
    report_fetched(len(new))
    if not new:
        return {"summary": "No new articles"}
    for n, e in enumerate(new):
        draft, key = ai.generate(f"Short social post sharing: {e.title}", max_output_tokens=80).text.strip(), f"{len(seen) + n}"
        state.set(f"draft:{key}", {"text": draft, "link": e.link})
        lines.append(f"{draft}\n{e.link}\nApprove: {LINK}?approve={key}")
    notify.email_me(f"{len(new)} drafts to approve", "\n\n".join(lines))
    state.set("seen", (seen + [e.link for e in new])[-500:])
    return {"drafts": len(new)}

@on_event
def approve(event):
    key = (event.json or {}).get("approve")
    if not (d := state.get(f"draft:{key}")):
        return {"skipped": True}
    http.post(f"https://graph.facebook.com/v21.0/{PAGE_ID}/feed",
              data={"message": d["text"], "link": d["link"], "access_token": credentials.connection("facebook", "work")})
    http.post("https://api.twitter.com/2/tweets", json={"text": f"{d['text'][:250]} {d['link']}"},
              headers={"Authorization": f"Bearer {credentials.connection('x', 'work')}"})
    return state.delete(f"draft:{key}") or {"posted": key}

FAQ

Common questions

How do I approve a draft?
Each email has an approve link for each draft. Clicking it publishes that post.
What happens to drafts I ignore?
They expire after a few days and are never posted.
Can I edit a draft?
Reply with edits, or ask your AI assistant to change the wording before approving.
What permissions does it need?
pages_manage_posts; tweet.write. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new 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 “Approve articles from your feeds before they go to Facebook and X” from your assistant

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