Skip to content

On a schedule

Post one researched LinkedIn post a day from your topic list

Keep a list of topics and each weekday the next one is researched and published as a LinkedIn post, working down the list in order.

Runs
On a schedule
Apps
LinkedIn, SerpApi
AI
Yes, uses the built-in AI allowance
Access
SerpApi key; LinkedIn w_member_social

Send this to your assistant

Create a ClickRuntime automation: every weekday at 8am, take the next topic from my list, research it with SerpApi and post a LinkedIn post about it, then mark it done.

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

A founder of a bookkeeping startup has a long list of customer pain points they want to write about: late invoices, messy receipts, year-end panic. Each one would make a good LinkedIn post, but the list just sits in a notes app because writing a researched post every day is more than they can manage alongside running the company.

This automation works through the list for them. Each weekday it takes the next topic, searches Google through SerpApi for current facts, and AI writes a post that ties the pain point to something specific. It goes out on LinkedIn and the topic is marked done, so the queue always moves forward.

What you get out of it

  • Plan once, post for weeks

    An hour spent writing a list of topics turns into a month of daily posts. Planning and posting are separated, so neither gets in the way of the other.

  • Your topics, your priorities

    The posts follow the order of your list. You decide what to talk about and when, and the automation handles the rest.

  • Backed by current facts

    Each topic is researched on the day it is posted. Posts can mention a recent figure or story instead of a general point.

  • Always know what is next

    Topics move from the queue to done as they are posted. You can see at a glance what is coming up and add more when the list runs low.

How it works

What happens, step by step

  1. Every weekday morning, ClickRuntime takes the next topic from your list.

  2. It searches Google for that topic through SerpApi to find current facts and examples.

  3. AI writes a LinkedIn post about the topic using those facts.

  4. The post is published on your LinkedIn profile and the topic is marked done, so tomorrow's run takes the next one.

Before it runs live

  • Connect LinkedIn
  • Connect SerpApi

What you get

RunsOn a schedule
Post one researched LinkedIn post a day from your topic listtoday, 9:00Succeeded
LinkedIn · Your profileMost small firms we speak to have at least one invoice more than 60 days overdue. Here's the simple follow-up routine that fixes it...

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
  • 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 LinkedIn and SerpApi 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.
scheduled_linkedin_posts_from_a_topic_queue.pyexample
from clickruntime import on_trigger, credentials, http, state, ai, notify

TOPICS = ["Chasing late invoices", "Lost receipts at year end", "Mixing personal and business spending"]

def post_to_linkedin(text):
    token = credentials.connection("linkedin", "work")
    me = http.get("https://api.linkedin.com/v2/userinfo", headers={"Authorization": f"Bearer {token}"}).json()["sub"]
    r = http.post("https://api.linkedin.com/rest/posts", headers={"Authorization": f"Bearer {token}", "LinkedIn-Version": "202409", "X-Restli-Protocol-Version": "2.0.0"},
                  json={"author": f"urn:li:person:{me}", "commentary": text, "visibility": "PUBLIC", "lifecycleState": "PUBLISHED",
                        "distribution": {"feedDistribution": "MAIN_FEED", "targetEntities": [], "thirdPartyDistributionChannels": []}})
    r.raise_for_status()
    return r.headers.get("x-restli-id", "")

@on_trigger
def run(event):
    done = state.get("done") or 0
    if done >= len(TOPICS):
        notify.email_me("LinkedIn topic queue is empty", "Add more topics to keep posting.")
        return {"posted": False}
    topic = TOPICS[done]
    results = http.get("https://serpapi.com/search", params={"engine": "google", "q": topic + " small business", "api_key": credentials.secret("SERPAPI_API_KEY")}).json()
    facts = "\n".join(f"- {r['title']}: {r.get('snippet', '')}" for r in results.get("organic_results", [])[:6])
    text = ai.generate(f"Topic: {topic}\nFacts:\n{facts}\nWrite a LinkedIn post under 180 words for small business owners.", max_output_tokens=350).text.strip()
    post_to_linkedin(text)
    state.set("done", done + 1)
    return {"posted": topic, "left": len(TOPICS) - done - 1}

FAQ

Common questions

Where do I keep the topic list?
In the automation itself. Ask your AI assistant to add topics or reorder them, or edit the list in your ClickRuntime dashboard.
What happens when the list runs out?
It stops posting and emails you to say the queue is empty, so you know to add more topics.
Can I skip a day?
Yes. Pause the automation for any day you do not want to post and it picks up the same topic when you turn it back on.
What permissions does it need?
SerpApi key; LinkedIn w_member_social. 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 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 “Post one researched LinkedIn post a day from your topic list” from your assistant

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