Publishing to My Site Failed

Go to Integrations and select Verify connection for your platform. Expired or changed credentials are the most common cause, followed by missing platform setup such as a required plugin, blog, or collection field.

Last updated 1 day ago

You selected publish and it did not work.

First: Verify the Connection

Open Sidebar β†’ Integrations, find your platform, and select Verify connection.

This is the fastest useful diagnostic. It tells you whether the problem is the connection or the article, and when it fails it names the fields to check.

If your platform uses OAuth, such as Shopify, Wix, or BigCommerce, there is no verify button. Reconnecting is the equivalent test.

Cause 1: Credentials Changed or Expired

The most common cause by a wide margin.

WordPress. Application passwords are revoked when deleted, and some security plugins expire them. Create a new one under Users β†’ Profile β†’ Application Passwords.

Ghost. Deleting the custom integration revokes the key.

Webflow, Framer, GoHighLevel, Contentful, Brilliant Directories. Tokens can be revoked or regenerated on the platform, which invalidates the one stored here.

Drupal. Changing the account password breaks the connection, since it stores account credentials.

Shopify, Wix, BigCommerce. Uninstalling the app disconnects it.

The fix in every case is generating a fresh credential and reconnecting.

Cause 2: Missing Setup on your Platform

Every credential integration has prerequisites, and they are the second most common cause.

Platform

Check

WordPress

/wp-json is reachable, and not blocked by a security plugin or Cloudflare

Shopify

At least one blog exists in Content β†’ Blog posts, and a blog is selected in NarraSEO

Joomla

Both Web Services - Content and API Authentication - Token plugins are enabled

Drupal

JSON:API and HTTP Basic Authentication enabled, with write operations allowed

Webflow

The collection has Name, Slug, and a rich text field with the slug post-body

Framer

The collection has Title and a rich text Content field, and is user-managed

Contentful

The body field is Long text, since Rich Text is not supported yet

Wix

The Wix Blog app is on the site

Cause 3: Permissions

The account or token behind the connection needs to be able to create posts.

Token scopes. Webflow needs CMS read and write. GoHighLevel needs blogs read and write. A read-only token verifies partially and fails to publish.

Account role. A WordPress Contributor cannot publish. A Drupal account needs permission to create article content.

Cause 4: The Wrong Key

Easy to do and easy to miss.

Ghost has both an Admin API key and a Content API key. You need the Admin API key, which contains a colon.

Contentful has CMA tokens and Content Delivery keys. You need a CMA token, beginning with CFPAT-.

Cause 5: Wrong Project

Integrations are per project. If you switched projects, you are looking at a different set of connections.

Check the project switcher at the top of the sidebar matches the site you are trying to publish to.

Quick Checks in Order

  1. Select Verify connection and read the message.
  2. Check the project in the switcher.
  3. Generate a fresh credential if verification fails, and reconnect.
  4. Check your platform's prerequisites in the table above.
  5. Check the token scopes cover write access.
  6. Try publishing as a draft rather than live, which isolates status handling from the connection.

If Verification Succeeds but Publishing Still Fails

Then it is the article or the destination rather than the connection.

Contentful. Check the field mapping in the Publish panel: content type, title field, slug field, and body field.

Shopify. Check a blog is selected and saved.

Brilliant Directories. Check the post type is set.

WordPress. Try without an author or category selected, in case the chosen value no longer exists.

As a workaround while you sort it out, use the Download tab and publish the article manually. Doc, PDF, HTML, and Markdown are all available, and HTML is usually the best for pasting into a CMS.

Connecting an integration covers setup. Each platform has its own guide with the exact fields.