Docs
Publishing integrations
Connect Spook to your site so articles publish automatically when you hit Publish in the editor. Set up once per site under Site settings → Publishing.
Draft vs live
Every site chooses how Spook pushes content. This mirrors Outrank: drafts land in your CMS for review, live posts go public immediately.
Save as draft
Article is sent to your CMS as a draft. Spook marks the article as review. You publish from WordPress, Ghost, or your webhook handler when ready.
Publish live immediately
Article goes live on your site right away. Spook marks it published and can re-submit your sitemap to Google Search Console.
Webhook
The most flexible option. Spook POSTs JSON to any HTTPS endpoint: your API route, Zapier, Make, n8n, or a small serverless function that writes to your database or CMS.
- Works with any stack or automation tool
- Real-time push on publish and update
- Bearer token + optional HMAC signature
- HTML and Markdown in the same payload
Setup
- Open Site settings → Publishing → Integration: Webhook (recommended).
- Paste your HTTPS endpoint URL.
- Optional: add a bearer token. Spook sends Authorization: Bearer … and signs the body in X-Spook-Signature.
- Choose draft or live publish mode.
- Save the site, then click Send test payload to verify your endpoint.
- Publish an article from the editor. Your webhook receives publish_article or update_article.
Webhook payload example
{
"event": "publish_article",
"site": {
"domain": "yoursite.com",
"name": "Your Site"
},
"article": {
"id": "abc123",
"title": "How to pack for a ski trip",
"slug": "how-to-pack-ski-trip",
"content_html": "<p>Article body as HTML…</p>",
"content_markdown": "## How to pack\n\nArticle body as Markdown…",
"meta_title": "How to pack for a ski trip | Your Site",
"meta_description": "A practical packing guide for your next ski holiday.",
"teaser": "Short intro shown above the article.",
"featured_snippet": "One-paragraph answer optimized for Google.",
"status": "published",
"language": "da",
"url": "https://yoursite.com/how-to-pack-ski-trip",
"faqs": [
{
"question": "What boots do I need?",
"answer": "…"
}
],
"external_id": null
},
"sent_at": "2026-06-25T12:00:00.000Z"
}Optional response
// Your endpoint can return an optional JSON body:
{ "id": "cms-post-id" }
// or
{ "external_id": "cms-post-id" }
// Spook stores this for future update_article events.WordPress
Publish to any self-hosted WordPress site via the REST API and an application password.
- Creates or updates posts by slug
- Draft or publish status
- Title, HTML content, excerpt, Yoast meta fields
Setup
- In WordPress: Users → Profile → Application Passwords → create a new password.
- In Spook site settings: Integration → WordPress.
- Enter site URL (https://yoursite.com), username, and application password.
- Pick draft or live mode, save, then publish from an article.
Ghost
Push articles to a Ghost publication using the Admin API. Ideal for professional blogs on Ghost Pro.
- Native Ghost Admin API
- HTML body + meta title/description
- Draft or published status
Setup
- In Ghost: Settings → Integrations → Add custom integration → copy Admin API URL and key (id:secret).
- In Spook: Integration → Ghost, paste API URL and Admin API key.
- Requires a Ghost plan with Admin API access.
Shopify
Publish to a Shopify store blog, great for e-commerce content marketing.
- Shopify Admin API blog articles
- Draft (unpublished) or live
- HTML body and SEO meta fields
Setup
- Create a custom app in Shopify Admin with write access to Online Store / blog articles.
- Copy the Admin API access token and your store URL (yourstore.myshopify.com).
- Find the blog ID in Shopify (or from the blogs API) and enter it in Spook.
- Integration → Shopify, fill store URL, token, and blog ID.
REST API (Payload & headless CMS)
Generic REST connector for Payload, Strapi, Directus, or any JSON API that accepts POST/PATCH.
- Configurable base URL, collection, and auth header
- Payload CMS: uses Lexical rich text automatically
- Other CMSs: sends HTML with standard fields
Setup
- Integration → REST API (Payload, etc.).
- API base URL, e.g. https://www.yoursite.com
- API key and auth prefix. Payload uses users API-Key
- Collection path, e.g. blogs or posts
- Optional author and category IDs for Payload-shaped APIs.
Google Search Console
Separate from publishing: connect Search Console to pull real clicks, impressions, and position. On live publish, Spook can re-submit your sitemap.
- OAuth connect per site (Research → Performance)
- Sync last 28 days of query data
- Auto sitemap submit after live publish
Setup
- Research → Performance → Connect Google Search Console.
- In site settings, set your Sitemap URL (https://yoursite.com/sitemap.xml).
- Enable Auto-submit sitemap after live publish.
- When you publish live, Spook nudges Google to recrawl via sitemap resubmission.
Ready to connect?
Sign in, open a site's settings, and choose your integration under Publishing. Webhook is the fastest way to connect any custom stack.
Get started