Webflow Setup

Primary path: install the Webflow app connection for this site. Manual webhook fallback remains documented here for exceptional cases only.

Back to Site Settings Open Webflow Webhooks Docs

Primary Path: OAuth Install

  1. Open Site Settings → Snapshots for this site.
  2. Click Connect Webflow and approve installation.
  3. Return to Site Settings and confirm connected status. If Webflow later reports an auth/error problem, use Reconnect Webflow.

This keeps Webflow authorization scoped to the selected Crawlbaby site.

Fallback Path: Manual Webhook Config

Showing example values. Sign in and choose a site to auto-fill this section.

This is not part of the normal settings flow. Use it only when OAuth install is unavailable and the site already has a webhook key.

https://app.crawlbaby.com/api/integrations/webflow/webhook?siteId=<your-site-id>&key=<webhook-key>
/api/integrations/webflow/webhook?siteId=<your-site-id>&key=<webhook-key>
<existing-site-webhook-key>
https://example.com

Manual Webhook Steps

  1. Confirm the site already has a webhook key available for this exception path.
  2. In Webflow Webhooks, paste the Native Endpoint URL from this page.
  3. Select trigger page_metadata_updated first. This is the Webflow equivalent of “page updated”.
  4. Optional: also add page_created and site_publish.
  5. Save and publish in Webflow. New events should start appearing in Crawlbaby.

If you only set one trigger, use page_metadata_updated. If the site does not already have a webhook key, use the normal Connect Webflow path instead.

Trigger Cheat Sheet

  • page_metadata_updated: best default for ongoing page updates.
  • page_created: captures new pages.
  • site_publish: optional backup; if no page URL is sent, Crawlbaby falls back to homepage capture.

Native Webflow Payload Example

Crawlbaby will try to map URL from keys like url, path, or slug.

{
  "triggerType": "page_metadata_updated",
  "payload": {
    "path": "/updated-page",
    "id": "wf_evt_123"
  }
}

Validation-Only Test Example

Use this during setup to verify auth + URL normalization without triggering snapshots:

{
  "url": "https://example.com/updated-page",
  "eventType": "updated",
  "source": "webflow",
  "sourceEventId": "wf-test-1710153600",
  "test": true
}

Test payload validates config only and does not create a snapshot.

Advanced: Middleware Fallback

If a Webflow event does not include a URL/path, use middleware to map event data into Crawlbaby’s generic page-change payload. This remains an exceptional fallback path.

Manual endpoint path:

/api/sites/<your-site-id>/events/page-changed

Headers:

  • X-Crawlbaby-Event-Token: <webhook-key>
  • Content-Type: application/json

Mapped payload:

{
  "url": "https://example.com/updated-page",
  "eventType": "updated",
  "source": "webflow",
  "sourceEventId": "wf-site-publish-1710153600"
}