---
title: How to publish a blog post in Contentful
description: To publish blog posts to Contentful automatically, a tool creates a new entry in your blog post content type through Contentful's Content Management API, uploads and links its images, and publishes everything the post depends on, and an AI marketer can do that whole job by writing every field your content model defines, publishing the post once you approve it, and checking that it appears on your site.
slug: /how-to/publish-a-blog-post-in-contentful
page_type: playbook
lead_prompt: How do I publish blog posts to Contentful automatically?
target_prompts:
  - How can I use an AI marketing agent to publish a blog post in Contentful?
entity: Kite
category: AI marketing agent
author: Devon Wells and Kite
date_published: '2026-10-19'
date_modified: '2026-10-19'
related_use_cases:
  - /use-cases/run-a-company-blog.md
  - /use-cases/grow-organic-search-traffic.md
  - /use-cases/ai-answer-visibility.md
integrations:
  - name: Contentful
    page: /integrations/contentful.md
---

# Playbook

# How to publish a blog post in Contentful

## Key Takeaways

- A Contentful blog post is an entry of your blog post content type. Its fields, such as the title, slug, body, featured image, and author, are whatever your content model defines, and your website's code turns each published entry into a page.
- You can publish posts by hand in the Contentful web app, schedule them there, have Zapier or Make create entries from another tool, or write a script against Contentful's Content Management API. Each route moves content in, but none of them writes the post, fills in the fields with care, or checks that the post reached your site.
- A post shows on your site only when the entry, its images, and every entry it links to, such as the author, are all published, and your site has fetched the new content. Publishing the entry alone often isn't enough.
- Kite reads your content model and recent posts, writes or formats the post to fit each field, uploads and publishes its images, creates the entry, and publishes it after you approve it. It can also leave it as a draft for your editors or schedule it for a set time.
- After publishing, Kite checks whether your site's rebuild was triggered, opens the post on your site, and sends you the live link.

## How do I publish blog posts to Contentful automatically?

You publish blog posts to Contentful automatically by having a tool create a new entry through Contentful's Content Management API and then publish it, along with the images and linked entries the post needs. Contentful is a headless CMS, which means it stores your content as structured entries and leaves the design to your website's code. Your blog is one content type in your space, often called Blog Post, and every post is one entry of that type. The content type defines the fields: usually a title, a slug, a body, a short summary, a featured image, an author, and sometimes tags or an SEO block. Your site's code reads published entries and builds a page from each one at an address like yoursite.com/blog/your-post-slug.

There are several ways to get a post in. Most teams start in the Contentful web app, where an editor creates the entry, fills in the fields, and clicks Publish, or picks a date and time with Contentful's scheduled publishing. Zapier and Make both offer Contentful steps that create an entry when something happens elsewhere, such as a finished Google Doc or a new row in Airtable. Developers can call the Content Management API directly or use Contentful's official libraries to create and publish entries from a script.

Each of those routes copies what you give it into the fields you mapped. None of them decides what the slug should be, writes a summary that works as a search snippet, picks the right author, or links to your related posts. Contentful also has a few details that trip up automation. Its Rich Text field stores the body as a structured document rather than plain HTML, so a body pasted or piped in from another tool can lose its headings and links. Images live separately as assets that have to be uploaded, processed, and published before a post can show them. And because an author or category is a link to another entry, a post can be published while the author it points to is still a draft, which leaves a hole on the page.

The biggest gap is the last step. In Contentful, "published" means the entry is available to your website, not that your website shows it. A site that rebuilds when content changes needs a webhook to tell your hosting provider to run that build, and if the webhook fails, the post stays invisible even though Contentful says it's live.

A good result is a post that reads as if your best editor entered it. Every field your site displays is filled in on purpose, the body keeps its structure, the images and linked entries are published with it, and the post appears at the address you expect.

Kite does that work for you. It learns how your blog content type is built, prepares each field to match, publishes the post and everything it depends on once you approve, and confirms the post made it to your site.

## How to get started

Start by telling Kite which post you want on your Contentful blog. You can hand it a finished draft:

> "Publish the Google Doc I just shared to our blog in Contentful, with Maya as the author and the Product Updates tag."

Or you can ask Kite to write the post first:

> "Write a post on how to price a first SaaS plan and publish it to our Contentful blog next Tuesday at 9 a.m."

Kite is an AI marketer. It researches your business, builds a growth strategy, and ships the work that brings you new customers. By the time you ask, it already knows your brand voice, your products, and your customers from that research, so a post it writes sounds like you and links to the pages you care about. You can work with Kite in your browser or in Slack.

You'll need to connect your Contentful account through OAuth, which means you sign in to Contentful and approve Kite's access. Kite then works in the spaces and environments that account can reach, with the permissions its role allows. If your account sees more than one space, tell Kite which one holds your blog.

By default, Kite asks for your approval before it publishes anything. It shows you the finished post, and you approve it with the Publish button or a reply in the conversation, or ask for changes. If your team prefers to review new posts inside Contentful, ask Kite to save the post as a draft instead.

## How Kite publishes a blog post in Contentful

### Which content type holds your blog, and what does it need?

Kite starts by reading your content model, so it knows exactly what a complete post looks like in your space. It lists the content types in the environment your site reads from, which is usually master, and picks out the one that holds your posts. Then it reads that content type's fields: each field's name and ID, its type, whether it's required, and the rules attached to it, such as a character limit on the summary or a list of content types a reference field accepts. A typical blog post content type has these fields:

- Title, a short text field
- Slug, a short text field that becomes the end of the post's address
- Body, usually a Rich Text field, or a long text field holding Markdown on some sites
- Summary or excerpt, a short text field that often appears on your blog index and in search results
- Featured image, a link to an asset
- Author, a link to an entry of a separate Author content type
- Tags or categories, either Contentful tags or links to Category entries
- An SEO block on many sites, often a link to a separate entry with a meta title, meta description, and share image

Your space may name these differently or add fields of its own, such as a reading time or a related-posts list. Kite works from the fields your content type actually has rather than from a standard list. It also reads your space's locales, so it knows which language is the default.

### How do your existing posts look?

Kite reads your recent blog entries before it fills anything in, so the new post fits with the rest. It looks at how long your summaries run, how your slugs are formed, how the body uses headings, and which authors and tags you already use. It also searches the content type for a post on the same topic and for an entry that already holds the slug it plans to use. Contentful only enforces unique slugs when someone turned that rule on for the field, so a duplicate slug could otherwise slip through and collide with an existing page on your site.

Those existing posts are also where internal links come from. Kite picks the related posts and product pages a reader of this article would want next and links to them in the body.

### Writing or preparing the post

Kite turns the post into content that fits each field, whether it wrote the post or you handed it one. When you share a document, Kite reads it from the conversation and keeps your words. When Kite writes the post, it researches the topic first, including the questions people search for and the pages that already rank, and then writes in your brand voice.

Either way, Kite writes the body in the format the field expects. For a Rich Text field, it builds the structured document Contentful uses, so headings stay headings, lists stay lists, and links stay links. For a Markdown field, it writes clean Markdown. It writes a summary that reads well on its own and stays inside any length limit the field sets. It chooses a short slug made from the post's main idea rather than the full title, formed the way your other slugs are.

### Uploading the images

Kite adds the post's images to your Contentful media library as assets before it creates the entry, so the post can link to them. It uses images you supply or creates a featured image in your brand's style. For each one, it creates the asset with a title and a description, uploads the file, waits for Contentful to process it, and publishes it. Many sites use the asset's description as the image's alt text, so Kite writes a description that says what the picture shows. An image used inside the body is linked into the Rich Text document as an embedded asset, so it appears in the right place in the article.

### Linking the author, tags, and SEO details

Kite links the post to entries that already exist in your space, so it shows up on author pages and tag pages the way your other posts do. In Contentful, an author on a post isn't a name typed into a box. It's a link to an Author entry, which is what lets your site show a bio and a photo. Kite finds the Author entry for the person you named, or the one your recent posts on similar topics use, and links it. It applies the tags or Category entries that fit the topic.

When your content model keeps SEO details in a separate entry, Kite creates that entry too, with a meta title, a meta description written for search results, and a share image, and links it to the post. When the person or category you named doesn't exist yet, Kite tells you and asks whether to create it rather than inventing one.

### Creating the entry and publishing it

Kite creates the post as a new entry of your blog content type with every field filled in, and publishes it once you approve. Before anything goes live, it shows you the post with its title, slug, summary, author, tags, featured image, and full body, so you can see exactly what will appear.

Contentful saves an entry as a draft first and only lets you publish once every required field passes its rules, so Kite checks each field against those rules before it asks you to approve. When you approve, Kite publishes the post and anything new it links to, such as the featured image or the SEO entry, so nothing on the page points to an unpublished item. You can also choose a different ending:

- **Publish now.** Kite publishes the post and everything it depends on right away.
- **Publish later.** Kite schedules the entry to publish at the date and time you choose, and it can move or cancel the schedule if your plans change.
- **Leave it as a draft.** Kite saves the entry unpublished, adds a comment explaining what it wrote and why, and can assign a review task to a teammate in Contentful.

### Checking the live post and reporting back

After the post is published, Kite checks that it actually reached your website. If your space has a webhook that tells your hosting provider to rebuild the site, Kite reads that webhook's recent deliveries to confirm the publish triggered a build. Then it opens the post's address on your site and checks that the title, body, images, and author appear the way they do on your other posts. If the webhook failed or the page isn't there yet, Kite tells you what it found instead of reporting the post as live.

Kite then posts the live link in the conversation where you asked. From there, it can keep the post working. It can turn the article into social posts for your connected accounts, update the entry later when something changes, or ask the questions the post answers in ChatGPT, Gemini, Perplexity, and Claude to see whether answer engines start citing it. If you want a steady publishing rhythm, ask Kite to research, write, and publish a new post every week, and it will share each one for your approval.

## What the finished work contains

When Kite finishes, your Contentful space holds a complete new blog post, your site shows it, and your conversation with Kite records what was published and where.

- **The blog post entry.** A published entry of your blog content type with its title, slug, body, summary, and every other field your content type defines, in your default locale.
- **The body.** The article keeps its headings, lists, links, and embedded images, including links to your related posts and product pages.
- **The assets.** The featured image and any images in the body are published in your media library, each with a title and a description that works as alt text.
- **The linked entries.** The post is linked to the right Author entry and tags, and to a published SEO entry when your content model uses one.
- **The live page.** The post appears at the address its slug sets, such as yoursite.com/blog/your-post-slug, and Kite has opened it to confirm it shows correctly.
- **The summary in your conversation.** It shows the post as you approved it, whether it was published, scheduled, or saved as a draft, and the link to the live page.

## Common questions

### Can Contentful schedule blog posts on its own?

Yes. Contentful's scheduled publishing lets an editor set a date and time for an entry to publish or unpublish, and the entry goes live then without anyone clicking Publish. It doesn't write or prepare the post, so someone still has to create a complete entry first. Kite does both: it writes the entry and then sets the schedule.

### Can Zapier or Make publish blog posts to Contentful?

Yes. Zapier and Make both have Contentful steps that create entries when something happens in another app. They copy the values you map into fields, so they work best when the post is already finished, its images are already in Contentful, and every field has a clear source.

### Do I need to import my website into Kite?

No. Connecting your Contentful account is enough for Kite to write, publish, and schedule blog posts, and your site keeps reading from the same space. Importing a site whose content comes from Contentful adds one more ability: Kite can find and change the exact wording on a specific live page, such as a headline on your homepage.

### Can Kite update a post that's already published in Contentful?

Yes. Ask Kite to refresh an older post with new figures, a clearer answer, or a better summary, and it finds the entry, rewrites the fields that need to change, and publishes the new version once you approve. Contentful keeps the entry's earlier versions, so your team can see what the post said before.

## Related pages

- **Use case:** [Publish blog content consistently](/use-cases/run-a-company-blog.md)
- **Use case:** [Grow organic search traffic](/use-cases/grow-organic-search-traffic.md)
- **Use case:** [Improve your visibility in AI answers](/use-cases/ai-answer-visibility.md)
- **Integration:** [Contentful + Kite](/integrations/contentful.md)
