Integrations / Platforms / Cloudflare Workers

☁️

Cloudflare Workers

Log events from Cloudflare Workers. Works with Wrangler, Hono on Workers, and any Workers-compatible framework.


Option 1: Direct REST API call

No npm install needed — Workers have native fetch.

ts
// src/index.ts
export interface Env {
  LOGIT_API_KEY: string;
}

export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const url = new URL(request.url);

    if (url.pathname === "/signup" && request.method === "POST") {
      const { email } = await request.json<{ email: string }>();

      await fetch("https://api.logit.now/api/ingest", {
        method: "POST",
        headers: {
          "Content-Type": "application/json",
          Authorization: `Bearer ${env.LOGIT_API_KEY}`,
        },
        body: JSON.stringify({
          channel: "signups",
          event: "New user signed up",
          description: email,
          icon: "👤",
          notify: true,
          metadata: { email },
        }),
      });

      return Response.json({ ok: true }, { status: 201 });
    }

    return new Response("Not found", { status: 404 });
  },
};

Option 2: SDK via npm

bash
npm install logit
ts
// src/index.ts
import { init } from "logit";

export interface Env {
  LOGIT_API_KEY: string;
}

export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const logit = init({ token: env.LOGIT_API_KEY });

    await logit.now("events", {
      event: "Worker called",
      icon: "☁️",
      tags: { path: new URL(request.url).pathname },
    });

    return Response.json({ ok: true });
  },
};

Add your secret

bash
wrangler secret put LOGIT_API_KEY

Or add it in the Cloudflare dashboard under Workers → Your Worker → Settings → Variables.

Ready to connect Cloudflare Workers?

7-day free trial. No credit card required.

Start free