Integration

Webhook and public API

If you run a system we have no dedicated integration for — a custom CMS, Framer, Notion, an internal app — there are two paths: we push, or you pull.

What we need from you

  • For the webhook: an HTTPS endpoint that accepts POST and, optionally, a secret for signature checks.
  • For the public API: nothing. We issue a key and you put it in a header.

What lands on the destination

  • The same text in three forms: HTML, markdown and plain text
  • Title, meta description, slug, category and keywords
  • Featured image with alt text, at an absolute URL
  • The JSON-LD block and our SEO score for the text
  • Publish time

How it works

The publishing flow, step by step

01

Webhook: we push

The moment an article goes out we post the full content to your endpoint. The request carries a signature and a site identifier, so you can verify it really came from us.

02

Public API: you pull

GET /api/v1/posts returns the list of published articles and /api/v1/posts/{slug} the full text. A key is bound to one site, so it cannot read anyone elses content.

03

Edits arrive on their own

When we correct a text, the webhook receives the same article flagged as an update and the API returns the new version. Matching happens on our identifier rather than the slug, so a changed URL breaks nothing.

Limits

What this integration does not do

It's on the page on purpose. Better seen now than after the first publish.

  • Webhooks go to publicly reachable HTTPS endpoints. Internal networks and local addresses are refused on purpose.
  • Images stay on our host for both the webhook and the API. Fetch them during processing if you want them on your side.
  • The public API is read-only. Nothing is written or changed through it.

FAQ

Common questions — Webhook and public API

How do I verify a request came from you?

We send an HMAC-SHA256 signature of the body in a header, and the same secret as a Bearer token. Verify the signature, which also covers the payload, or just the token if you want something simple.

What if my server does not respond?

We retry. Transient failures such as network errors, 5xx and rate limits go back in the queue; permanent ones such as a bad signature or a missing route are reported in the panel instead of being retried forever.

Can I use both?

Yes. Webhook for new articles and the API for history is a common pairing, because one site is allowed several destinations at once.

Next step

Ready for organic growth?

Connect any site — services, webshop or blog. The plan builds itself, articles are written and published on schedule, and the first one is free.