Ambit Signal

api | install-astro | install-caddy | install-cloudflare | install-express | install-js-tag | install-netlify | install-nginx | install-shopify | install-squarespace | install-sveltekit | install-vercel-next | install-webflow | install-wix | install-wordpress | mcp | outcomes | privacy | quickstart | troubleshooting

Install: Astro (SSR)

Collection: server collector (sees bots and humans). Replace example.com and st_YOURSITEID with your site's values (dashboard, list_sites, or GET /v1/sites). The MCP tool get_install_snippet(platform="astro", site_id=...) returns this page pre-filled.

Steps

  1. npm install @ambit/signal
  2. Create or edit src/middleware.ts.
  3. Set AMBIT_SIGNAL_SITE and AMBIT_SIGNAL_SECRET in the deployment environment, then redeploy.

File: src/middleware.ts

import { sequence } from "astro:middleware";
import { ambitSignal } from "@ambit/signal/astro";

export const onRequest = sequence(ambitSignal());

Configuration

Name Value
AMBIT_SIGNAL_SITE example.com
AMBIT_SIGNAL_SECRET <SECRET>

<SECRET> is the site secret shown once when the site was created. Lost it? Rotate it in the dashboard (Site > Keys) or ask ambit; the old secret stops working immediately.

Verify

Load any page of example.com once, then check: MCP tool verify_install(site_id="st_YOURSITEID") or GET https://signal.ambit.agency/v1/sites/st_YOURSITEID/status with your API key. "receiving": true means events are arriving (usually within a minute).

curl -s -H "Authorization: Bearer $AMBIT_SIGNAL_API_KEY" \
  https://signal.ambit.agency/v1/sites/st_YOURSITEID/status

Expected: "receiving": true. If not, see troubleshooting.

Notes