DocsPublishingOverview

Connect your CMS once and CiteFlow publishes articles directly into WordPress, Ghost, Shopify, Webflow or a custom webhook.

Publishing

CiteFlow turns approved articles into drafts in your content stack so your team can review and publish. There are two routes: the universal webhook (recommended for most customers) and platform adapters for a handful of popular CMSs.

The custom webhook is the universal integration. It works with any platform, any custom workflow.

Choose the webhook if you are on Sanity, Contentful, Strapi, Hugo, Jekyll, Astro, Next.js, Eleventy, a headless CMS, a static site generator, or you want full control over how content is processed before it reaches your live site.

Why most customers should start here:

  • Works with everything. If your stack speaks HTTP, it works.
  • Forward-compatible. New CiteFlow features ship through the same payload, so you do not wait for a new adapter.
  • Fan-out friendly. One webhook can drive multiple downstream systems (CMS, newsletter, analytics) from a single delivery.
  • No vendor lock-in. You own the receiver and the transform logic.

The webhook contract is the authoritative specification.

Platform adapters: convenience for these platforms

If you are on one of these specific platforms and want plug-and-play setup with no receiver to build, use the matching adapter.

AdapterBest forCredentialsCreates as
WordPressSelf-hosted or WordPress.com Business+Username + Application PasswordDraft post
GhostGhost 5.x sitesAdmin API keyDraft post
ShopifyShopify storesCustom app Admin API tokenUnpublished blog article
WebflowWebflow CMS sitesData API v2 tokenDraft collection item

All adapters share the same delivery pipeline:

  • Three attempts with linear backoff (1 second, 5 seconds, 15 seconds).
  • Credentials encrypted at rest with pgcrypto.
  • Each article-and-endpoint pair runs as its own job, so a failure in one destination never blocks another.
  • Every remote post is created as a draft. CiteFlow does not publish live without an editorial review step in your CMS.

How do you add a publishing endpoint?

  1. From your dashboard open Settings → Publishing destinations.
  2. Click Add endpoint and pick the kind.
  3. Fill in the credentials. Each adapter doc has step-by-step instructions.
  4. Click Test connection. CiteFlow makes a read-only check call against the remote API and reports the result. Do not skip this step.
  5. Save.

How does publishing dispatch?

When you click Publish on an approved article, CiteFlow enqueues a job per selected endpoint. Each job:

  1. Loads the article and the endpoint's encrypted credentials.
  2. Maps article fields to the destination's API schema.
  3. Sends the request.
  4. Records success or the last error, with HTTP status and a redacted response excerpt.

You can see job state on the article detail page in your dashboard.

What gets sent in a publish?

Each adapter has its own field mapping (documented per adapter), but broadly:

  • Title, slug, and body HTML.
  • Meta description and excerpt.
  • Hero image URL and alt text.
  • Target keywords as tags (where the destination supports tags).
  • JSON-LD schema appended into the body for adapters whose CMS does not expose a structured-data field (currently Shopify and Webflow).

What are the tier limitations?

TierPublishing endpoints
Trial1 endpoint
Standard3 endpoints
Enhanced10 endpoints
MarketplaceUnlimited (soft cap 50)

Endpoints can be any mix of webhook or platform adapters.

References

Related

  • Custom webhookReceive every published article as a signed HTTP POST. HMAC-SHA256, 5 minute replay window, 3 retries.
  • WordPressApplication Password + REST API. Creates posts as drafts in your editor's queue.
  • GhostAdmin API key with HS256 JWT signing. Drafts land in the Posts list.
  • ShopifyCustom app with write_content scope. Publishes to a specific blog as unpublished articles.
  • WebflowData API v2 token plus a collection with the required field slugs. Items created as drafts.