When Karmy finds a Reddit thread worth commenting on, it POSTs it to a URL you own, with the ready-to-post draft. Route it to Slack, WhatsApp, your CRM, or your own script. You already get it in Telegram; the webhook lets it land wherever else you live.
A scan can find several openings at once, so each POST is a JSON array of opportunities (always an array, even for one). Each item is flat: its event (comment or post), which mission, where on Reddit, and the draft we’d write.
[ { "event": "comment", "mission": "karmyapp", "id": "2lo3xmtuhqfw", "subreddit": "SaaS", "title": "best demo tool?", "directpath": "https://reddit.com/r/SaaS/…", "suggestion": "the comment draft…" }, { "event": "post", "mission": "karmyapp", "id": "9k2p7bxwq10a", "subreddit": "SideProject", "title": "How we cut demo no-shows in half", "directpath": "https://reddit.com/r/SideProject/submit", "suggestion": "the post draft…" } ]
A webhook is the universal language of the internet. Send it straight to Slack or Discord for free, or catch it in Zapier, Make or n8n and fan it out to WhatsApp, a Notion database, a Google Sheet, your CRM, a mobile push. Build the “anywhere” once; Karmy never has to change.
Every request is signed with your secret via an X-Karmy-Signature header (HMAC-SHA256 of the raw body), so you can verify it really came from Karmy. If your endpoint is down we retry with backoff, and every opportunity has a stable id so you can dedupe.
Verifying takes three lines: recompute the HMAC of the raw bytes with your secret and compare, constant-time. Your secret lives in the Mini App, under Settings → Send anywhere.
// Node, using your webhook secret const sig = req.headers["x-karmy-signature"] const mine = "sha256=" + hmacSHA256(rawBody, YOUR_SECRET) if (!timingSafeEqual(sig, mine)) return res.sendStatus(401)
A JSON array of the opportunities it just found (always an array, even for one). Each item is flat: whether it’s a comment or a post, which mission, the subreddit, a direct link (the thread to comment on or the sub to post in), and the ready-to-post draft. Each request is signed so you can verify it came from Karmy.
No. Point the webhook at a no-code bridge like Zapier, Make or n8n and route the opportunities to Slack, WhatsApp, Notion, your CRM or a spreadsheet without writing anything. Developers can also POST straight to their own endpoint.
No. The webhook sends you the opportunity and a suggested draft. You (or your own pipeline) review and publish. Karmy never posts to Reddit through the webhook. That’s how you keep it human and safe.
Webhooks are part of the Growth plan. One endpoint covers all your missions; the mission field tells you which one each opportunity belongs to.
The webhook ships with the Growth plan. Set one URL and your Reddit opportunities land wherever your team already works, with the draft, ready to go.