BLOG AUTOPILOT

Automated blog content generation you still publish.

Blog autopilot researches, drafts and files SEO articles for your site on a schedule. Each one starts from a live search pass over your niche, is written as full markdown in your brand voice, and is saved as a draft — nothing reaches your website until a person publishes it.

Runs on a five-minute cron tick · One article a day · Human publish gate

  • One core article per day
  • Drafts wait for a human
  • Sources stored per article
  • Published posts read over HTTP

WHAT IT DOES

A content program, not a prompt box.

Most “AI blog” tools hand you a text field and a word count. This one runs the loop a content team runs: find the query, research it, write the piece, keep a person in front of the publish button, and give your website a clean way to fetch what survived.

Ideas researched, not invented

Each article starts from a live search pass over your niche rather than from a blank prompt, so the topics are ones people are actually typing.

How · Gemini google_search grounding returns titles, target keywords and source URLs; the source list is stored on the row and the draft may only link to those or to your own site.

Drafted in your brand voice

A full markdown article — not an outline — written to the format the day calls for: a guide, a how-to, a listicle or a comparison, with tables where the data is structured.

How · Your company description is fenced as untrusted data, never as instructions, and links the model introduces that don’t trace back to a researched source are stripped from the body.

Nothing publishes itself

Generated articles are saved as drafts. A person reads them, edits them, and marks them published — the same human gate the reply queue uses.

How · Every article is written with status: 'generated'; only a deliberate “Mark published” moves it to published, which is the only status the public API will serve.

HOW IT WORKS

One article, four moves

The interesting part is the first step. The scheduler doesn’t trust a clock — it asks the database whether today’s article exists yet, which is what keeps a single failed provider call from quietly costing a day of publishing.

  1. STEP 1

    The tick asks what’s due

    A cron trigger fires every five minutes and the planner reads the database, not a clock: a duty stays due until today’s article actually exists. A failed 03:00 attempt simply retries at 03:05 instead of losing the day.

  2. STEP 2

    Research the day’s topic

    A grounded search pass proposes article ideas for your niche, each with a target keyword and its sources. You can bias it toward specific queries — including the tracked keywords you are currently losing on.

  3. STEP 3

    Draft, illustrate, save

    The idea becomes a full markdown article in your brand voice, optionally with a generated 16:9 header image, and is saved as a draft with its slug, keywords, meta description and source list attached.

  4. STEP 4

    You publish; the API serves

    You review and publish. From that moment the article is available over the public read API, and — when your site config carries a blog base URL and an IndexNow key — the new URL is pinged for indexing.

THE SCHEDULE

One a day, deliberately.

Velocity is capped at a single core article per day and the format rotates through the week, so a blog doesn’t arrive as one indistinguishable burst. Two heavier duties sit on fixed days. All times are UTC.

The weekly blog autopilot rotation: the core article format for each day and the extra duties that run on Monday and Thursday.
DayCore articleAlso runs
MondayGuideConquest batch — 2 articles, published unlisted
TuesdayHow-to
WednesdayListicle
ThursdayComparisonRefresh pass — the 2 stalest posts redrafted
FridayGuide
SaturdayHow-to
SundayListicle

Every run also seeds whatever keywords the day’s content targets into the rank tracker, so the SEO engine starts watching the queries the blog just went after.

THE READ API

Your published posts, over HTTP

FounderReply stores your articles; your website renders them. One unauthenticated GET returns every published post for a workspace — bodies omitted, so it’s cheap enough to call from a build step. Fetch a full article from the same route plus its slug.

RequestGET /api/public/blog
# every published post, newest first
curl "https://founderreply.com/api/public/blog?workspace_id=<uuid>"

# optional params
#   visibility=listed | unlisted | all   (default: listed)
#   limit=1..200                          (default: 50)
#   offset=0..                            (default: 0)
Response200 application/json
{
  "ok": true,
  "total": 24, "limit": 50, "offset": 0,
  "posts": [
    {
      "id": "…", "slug": "…", "title": "…",
      "type": "guide",
      "keywords": ["…"],
      "meta_description": "…",
      "cover_image_url": null,
      "created_at": "…", "published_at": "…",
      "updated_at": null,
      "intent": "core", "visibility": "listed"
    }
  ]
}

No API key: published articles are public by definition, and the workspace id is the unguessable key that says whose. Responses are CORS-open and edge-cached for five minutes. Drafts and archived posts are never returned.

The full integration guide — detail endpoint, refresh strategies, rendering the JSON-LD

FAQ

Before you let it write for you.

What actually runs, what it costs, and what it will never do without you.

Does it publish to my website on its own?

No. Generated articles are saved with the status “generated” and stay there until a person marks one published in the dashboard. Only published posts are ever exposed by the public read API, so an unreviewed draft cannot reach your site even by accident.

Where does the research come from?

From a grounded web-search pass, not from the model’s memory. Each idea returns a target keyword and the source URLs behind it, those sources are stored on the article row, and any link the draft introduces that doesn’t trace back to them is stripped before saving.

How often does the schedule run?

A cron trigger fires every five minutes, and the planner decides from the database what is still outstanding: one core article per day in the 03:00–09:59 UTC window, a conquest batch on Mondays, and a refresh pass on Thursdays. Failed attempts retry on the next tick.

What does an article cost?

One credit per saved article, debited as it is written; a generated cover image costs five more and is a Pro-plan feature. The run only drafts what your balance can pay for, so a workspace out of credits quietly generates nothing rather than failing loudly.

Can it target the keywords I am losing on?

Yes. The SEO engine can hand the writer your under-ranking tracked keywords together with the competitors currently outranking you, and the research pass prioritises ideas that could win those queries instead of proposing topics at random. The brief is built from live ranking data rather than a guess.

Does it rewrite old posts, or only add new ones?

Both. A weekly refresh pass finds articles that have gone stale — no content change in roughly four months, or ranking outside the top ten — and redrafts them in place at the same URL, so the update date moves only when the content genuinely did.

Let it draft. You publish.

Start on the free plan, point it at what your company does, and read the first drafts before anything goes near your website.