Dashboard · Webhooks

Presets

Quick trigger bundles for common integrations — apply in the create/edit modal, then tweak.

Presets only select available event types. After applying a chip you can still add or remove individual triggers before saving.

NameTypeDescription
rebuildStatic rebuildcontent.published — cache invalidation and static site rebuilds.
contentAll contentcontent.published plus draft created/archived/restored — full draft & publish activity.
domainsDomain monitoringdomain.added, domain.active, domain.removed, domain.primary_changed.
assetsAsset libraryasset.uploaded, asset.deleted.
teamTeam activityinvite, accept, remove, role_changed (not declined — add manually if needed).
allAll availableEvery event currently marked available in the catalog.

Static rebuild (most common)

Subscribe only to content.published. On delivery, invalidate cache or kick a static rebuild for the paths in message.paths / message.encodedSlugs.

revalidate-handler.js
// Express-style sketch — verify signature first (see Signing guide)
export async function handleMacroWebhook(req, res) {
  const trigger = req.get('X-Macro-Trigger')
  if (trigger !== 'content.published') {
    res.status(204).end()
    return
  }
  const paths = req.body?.message?.paths ?? []
  await Promise.all(paths.map((path) => revalidate(path)))
  res.status(200).json({ ok: true, paths })
}

All available

The All available preset expands to every event Macro currently marks available (content, domains, assets, team, settings). Use it for auditing mirrors — prefer a narrower preset for production rebuild hooks.

OR semantics
Selected triggers are OR’d. If you need different URLs or payload templates per concern, create multiple endpoints (for example one rebuild + one Slack team alerts).

Also see