If a publish fails, PilotScribe shows the error code returned by your CMS. Match it against the table below to find the fix. Most failures come down to a mistyped credential, a missing scope, or a wrong endpoint/ID.

Common failures

Symptom Likely cause Fix
401 Unauthorized Bad or expired token / wrong credential Re-copy the token or key (no extra spaces or line breaks) and re-paste it in the Publishing tab. For WordPress, confirm you used the Application Password, not the login password. For Ghost, include the full id:secret.
403 Forbidden Missing scope / insufficient permissions Grant the required scope and re-install/regenerate. Shopify needs write_content + read_content; Webflow needs CMS Read & Write; WordPress needs a role that can publish posts.
404 Not Found Wrong endpoint, URL, or collection/blog ID Recheck the destination. WordPress endpoint must end in /wp-json (site root, not the homepage). Verify the Webflow Collection ID, the Shopify Blog ID (or leave it blank), and the Ghost Site URL.
Duplicate post appears A retry succeeded after a timeout on the first attempt Safe to delete the extra copy in your CMS. This happens when the first request timed out but actually went through, and the automatic retry created a second post. No data is lost.
Connection refused / can't reach site Non-HTTPS, blocked API, or wrong domain Ensure the site is served over HTTPS (required for WordPress 5.6+ Application Passwords). For Shopify, use the *.myshopify.com domain, not a custom storefront domain.
Custom domain stuck on pending DNS not resolving yet, or SSL still provisioning Recheck the CNAME and ownership verification records match what PilotScribe returned. SSL provisioning takes ~15–30 min; status flips to active on its own.

Before you retry

  • Re-copy credentials cleanly — a trailing space breaks most tokens.
  • Confirm scopes are minimal but sufficient (see each connect guide).
  • Use the right base value: /wp-json endpoint, *.myshopify.com domain, Ghost Site URL, Webflow Collection ID.
  • Run Test connection after saving — it verifies the credentials and surfaces auth errors before you publish.