blogsforseo

Connect: simple

The simple way: we send finished HTML for your blog, with the SEO already done. Your site puts it inside its own pages. You need two pages and one line in robots.txt.

You still own the design. Our HTML has no styles, fonts or scripts. It takes on your site's own look, inside your own header and footer. Every part has a bfs- class name (bfs-title, bfs-short-answer, bfs-faqs and so on) for anything you want to restyle. For a starting point, add our optional starter stylesheet and change what you like.

Using a coding agent? Copy the prompt from your dashboard's "Connect your website" page. It has your keys filled in.

You need your site key from the dashboard. In this guide, {API} means https://blogsforseo.com/api/v1/sites/{SITE_KEY}.

1. Blog page

Make a page for your blog, e.g. /blog. On your server, fetch:

GET {API}/html/posts?page=1

You get { body, page, totalPages, total }. Put body in your page. Pass your page's own ?page= number through, so the Newer and Older links work.

2. Post page

Make a page for posts, e.g. /blog/{slug}. On your server, fetch:

GET {API}/html/posts/{slug}

You get { head, body, meta }:

  • Put head inside your page's <head>: the title, description, canonical link and social tags. If your framework sets these from data (Next.js, Nuxt, SvelteKit), use meta instead. It holds the same values.
  • Put body in your page. It is the whole article, structured data included.
  • If we answer 404, your page must answer 404 too.

Do both pages on the server, not in the browser. AI crawlers don't run JavaScript, so a page that loads posts in the browser looks empty to them.

3. One line in robots.txt

Sitemap: {API}/sitemap.xml

This tells Google and Bing where your posts are. If your robots.txt blocks AI crawlers such as GPTBot, ClaudeBot or PerplexityBot, remove those blocks too.

4. Finish in the dashboard

  1. Set the post URL pattern to your post page's address, e.g. https://example.com/blog/{slug}.
  2. Open a live post on your site and press Run health check.

That's it. New and updated posts show up within about 5 minutes.

Optional extras

  • Instant updates: add a webhook to refresh your pages the moment you publish.
  • llms.txt: serve {API}/llms.txt at your site's /llms.txt, so AI assistants get a map of your posts.
  • Faster indexing: serve your IndexNow key (from the dashboard) as a text file at /{INDEXNOW_KEY}.txt. Bing, which ChatGPT search also uses, then hears about new posts within minutes.