Help / Connect your site

Connect a webhook

Send each article to your own endpoint, to publish on any site or app.

A webhook sends each article to an endpoint you control, so you can publish to any site or app, such as a Hugo, Jekyll or Astro site. Your developer writes the endpoint.

What you need

  • An endpoint that accepts a POST with a JSON body and answers with a 2xx status. Its address must start with https:// and be reachable from the internet.
  • An access token of your choice, which is optional but recommended.

In Gofylo

  1. Open Integrations and click Connect on the Custom Webhook card. During setup, the API Webhook card on the Integration step opens the same window.
  2. Fill in Webhook URL with your endpoint's address.
  3. Fill in Access Token. Every request carries it in the Authorization header, as Bearer followed by the token, so your endpoint can refuse anything else.
  4. Click Send test ping to save your details and send a sample event. The window shows whether your endpoint accepted it.
  5. Click Save webhook.

The window's Payload schema & example endpoints section shows the headers, a sample payload and endpoint code for Node.js, Python, PHP and Go.

What gets sent

Each request names its event:

  • article.published when an article is published.
  • article.updated when a published article changes, for example with Republish.
  • article.unpublished when you delete a published article in Gofylo. It carries the external_id instead of the article.

The article includes its title, slug, body, meta description, cover image address and schema markup.

Answer with JSON that includes an id and the article's live url. Gofylo uses the url as the article's live address, and sends the id back as external_id with updates and deletions. Without an id, Republish fails and a deletion sends nothing.

If it doesn't work

Open the article and expand Advanced > Publish history to see the error.

  • Saving fails with a message about https:// or a public address: use an https:// address that is reachable from the internet.
  • "Webhook receiver rejected request": your endpoint refused the token. Check that it expects the same token. A redirect to another domain drops the token, so enter the final address.
  • "Webhook timed out": your endpoint must answer within 15 seconds. Reply first, then do slow work such as a site rebuild.
  • "Webhook returned" with a code such as 400: your endpoint refused the article. The message shows the start of its reply.

After fixing an error, click Approve & Publish on the article again.

Last checked against Gofylo on 12 October 2026.

Still stuck? Write to support@gofylo.io.