SDKs
Each SDK is a thin wrapper over two HTTP endpoints — batch the events, hash nothing client-side, and never block or crash your bot. Pick your language:
@mochi-analytics/core + @mochi-analytics/discordjs
mochi-analytics + mochi-analytics-discordpy
Another language or library?
Everything the SDKs do is a wrapper over the Ingest API. Implement those two endpoints to instrument serenity, JDA, or anything else.
Shared design guarantees
Both official SDKs share the same behavior:
- Events are batched (flushed every 5 s or 100 events) and sent in the
background —
track()never blocks or throws. - Transient failures retry with backoff; the queue is bounded (oldest dropped first), so a dead Mochi instance can never leak memory or crash the bot.
- Raw user ids are hashed server-side with a per-bot salt and never stored.
Last updated on