// supabase/functions/my-function/index.ts
import { serve } from "https://deno.land/[email protected]/http/server.ts";
const SQUASHER_URL = `https://ingest.squasher.ai/v1/ingest/${Deno.env.get("SQUASHER_PROJECT_ID")}`;
const SQUASHER_KEY = Deno.env.get("SQUASHER_API_KEY")!;
serve(async (req) => {
try {
const result = await handleRequest(req);
return new Response(JSON.stringify(result), { status: 200 });
} catch (error) {
// Report to Squasher
await fetch(SQUASHER_URL, {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-squasher-key": SQUASHER_KEY,
},
body: JSON.stringify({
message: error instanceof Error ? error.message : String(error),
type: error instanceof Error ? error.constructor.name : "Error",
level: "error",
stack: error instanceof Error ? error.stack : undefined,
tags: { function: "my-function", url: req.url },
}),
});
return new Response("Internal Server Error", { status: 500 });
}
});