You can access search results via JSON API by adding format=json
to your query:
https://codesearch.val.run/?q=api&page=67&format=json
For typeahead suggestions, use the /typeahead
endpoint:
https://codesearch.val.run/typeahead?q=api
Returns an array of strings in format "username" or "username/projectName"
Found 18866 results for "api"(2110ms)
30## What is the adapter for?
3132The MCP TypeScript SDK uses Node-specific APIs that don't play nicely with Deno
33or edge functions:
34
4const app = new Hono();
56// --- NEW VAPI WEBHOOK ENDPOINT ---
7app.post("/vapi-webhook", async (c) => {
8try {
9const webhookData = await c.req.json(); // Parse the incoming JSON payload from Vapi
1011// As per Vapi's 'end-of-call-report' format, the main payload is under 'message'
12if (webhookData && typeof webhookData.message === "object" && webhookData.message !== null) {
13console.log("--- Received Vapi End-of-Call Report Message ---");
14// Print the entire 'message' object, pretty-formatted for readability in Val Town logs
15console.log(JSON.stringify(webhookData.message, null, 2));
16console.log("--- End of Vapi Report ---");
17} else {
18console.warn(
19"Received Vapi webhook payload, but 'message' field was not an object or was missing. Full payload:",
20webhookData,
21);
22}
2324// Always return a 200 OK status to Vapi to acknowledge successful receipt of the webhook.
25// If you don't return 200, Vapi might retry sending the webhook.
26return c.json({ status: "success", message: "Webhook received and processed" }, 200);
27} catch (error) {
28// If there's any error during processing, log it and return a 500 status.
29console.error("Error processing Vapi webhook:", error);
30return c.json({ status: "error", message: "Failed to process webhook" }, 500);
31}