Webhook

Get notified the moment an article is ready and route it to any system or custom destination you control.

How to connect

  1. 1Settings → Integrations → Connect on Webhook.
  2. 2Paste a public URL that accepts POST requests with JSON.
  3. 3Set a secret token — Zivooo sends it as an Authorization Bearer header.
  4. 4Save. Your endpoint must return HTTP 200 to acknowledge receipt.

Request

Method: POST

Authorization: Bearer <your-secret>
Content-Type: application/json

Payload

{
  "id": "651f...",
  "title": "How to do X",
  "slug": "how-to-do-x",
  "metaDescription": "...",
  "content_html": "<h1>How to do X</h1>...",
  "heroImageUrl": "https://.../hero.jpg",
  "jsonLd": { "@context": "https://schema.org", "@type": "Article" },
  "faqJsonLd": { "@context": "https://schema.org", "@type": "FAQPage" },
  "schemaJsonLd": [ ... ],
  "languageCode": "en",
  "createdAt": "2026-05-20T10:00:00.000Z"
}

content_html includes embedded JSON-LD <script> tags. You also receive jsonLd and faqJsonLd as structured fields for easier mapping.

Use id as the durable post identity — it stays stable for the lifetime of the article (across all refreshes). Store it alongside your post and look it up on refresh to update in place.

Refresh payload

Periodic refreshes POST to the same URL with action: "refresh" plus the same id so you can update in place. externalId is also sent and equals id for convenience.

{
  "action": "refresh",
  "id": "651f...",
  "externalId": "651f...",
  "title": "How to do X — updated",
  "content_html": "<h1>...</h1>",
  ...
  "refreshedAt": "2026-06-01T10:00:00.000Z"
}