Integrations
Integrations
Connect Draftful to how you already work: an agent over MCP, a webhook endpoint for your own pipeline, or the analytics you already use to measure the site.
Draftful MCP
Connect ChatGPT, Claude or any MCP-compatible agent with one URL and OAuth.
Webhooks
Get a signed HTTP callback the moment an article starts, finishes, publishes or fails.
Search Console & GA4
Connect your Google accounts so Draftful can read real traffic and rankings.
Webhooks
Set an endpoint URL and pick which article events it should receive, from Settings → Integrations. Draftful already sends these in production.
Events
article.generation.startedarticle.generation.completedarticle.generation.failedarticle.publishedarticle.publish_failedarticle.updatedarticle.scheduledarticle.unpublished
Every delivery is signed: the X-Draftful-Signature header carries a timestamp and an HMAC-SHA256 of the timestamp and body, so you can verify it came from Draftful and reject stale replays.
Each delivery also carries X-Draftful-Event and X-Draftful-Delivery; the delivery id stays the same across retries, so use it to ignore duplicates.
Delivery retries automatically on a 5xx response or a timeout, with backoff; a 4xx response is treated as your endpoint rejecting the event on purpose and is not retried.
Draftful learns the live URL from your endpoint's response or a signed callback URL in the payload — see "Reporting the live URL" in the full spec.
Settings → Integrations lets you send a test delivery to a new endpoint and rotate its signing secret at any time.
Autopilot at the Publish level uses an active webhook as its publish destination, the same as a manual publish.
Example payload — article.published
{
"event": "article.published",
"delivery_id": "b3f1c8b0-...-9e2a",
"occurred_at": "2026-09-22T14:03:00Z",
"data": {
"id": 4821,
"title": "...",
"slug": "...",
"status": "published",
"word_count": 1420,
"published_at": "2026-09-22T14:03:00Z",
"workspace_slug": "acme",
"schema_version": 2,
"structured_data": { "...": "..." },
"refresh_of_url": null,
"content_markdown": "# ...",
"content_html": "<h1>...</h1>",
"meta_title": "...",
"meta_description": "...",
"excerpt": "...",
"canonical_url": null,
"language": "en",
"featured_image": { "url": "...", "avif_url": "...", "alt": "...", "width": 1600, "height": 900 },
"images": [],
"categories": ["..."],
"tags": ["...", "..."],
"author": { "type": "organization", "name": "Acme", "url": "https://acme.com" },
"published_url": null,
"og_image_url": "https://.../cover-og.jpg",
"faqs": [{ "question": "...", "answer": "..." }],
"content_markdown_without_faq": "# ...",
"content_html_without_faq": "<h1>...</h1>",
"reading_minutes": 8,
"published_url_callback": "https://draftful.app/api/v1/publish-callbacks/articles/4821?..."
}
}Let your AI build the receiver
Copy a prompt with the full webhook spec and paste it into ChatGPT, Claude, Cursor or whichever assistant writes your code. It already asks for signature checks, idempotency and tests.
Search Console and GA4
Google Search Console
Connect via OAuth so Draftful can read your real search impressions, clicks and rankings.
Google Analytics 4
Connect via OAuth so Draftful can read sessions and traffic, including sessions referred by AI engines.
Native WordPress, Shopify, Webflow, Wix and Ghost publishing is on the roadmap. Until then, a webhook publishes to any of them today: copy the AI prompt above and your assistant writes the receiver.