Skip to content
White / wsuites

Field note

Discord API & RPC Notes

Authorized integration experiments

Summary

A technical note on small experiments across official Discord bot APIs and local Rich Presence integration surfaces. The work explores authorized interaction, Gateway, and local IPC behavior in Rust and Node.

Role and scope

I built and maintained small bot/API and Rich Presence experiments. This note focuses on the boundary between an authorized application and official bot/API or local RPC behavior; it does not represent a client delivery or a production service.

Surfaces and libraries

Three surfaces, and the libraries that sit in front of each one. The Rust side is Twilight, which is a set of independent crates rather than one framework, so you pick the pieces the bot actually needs:

SurfaceRustNode / TypeScript
Gatewaytwilight-gateway, twilight-cache-inmemory, twilight-standbydiscord.js, @discordjs/ws
HTTP APItwilight-http, twilight-model, twilight-validatediscord.js, @discordjs/rest
Local IPCdiscord-rich-presence, discord-presencediscord-rpc, @xhayper/discord-rpc

The client-side work is separate from all three: Vencord plugins, written in TypeScript, which run inside a modified desktop client rather than against an official API. It is listed here because it is part of the same body of work, not because it belongs to the same integration boundary.

Diagram Conceptual note. It excludes user accounts, credentials, metrics, server details, and private automation.

Outcome

Built experiments across official bot APIs and Rich Presence.

What I would improve

I would consolidate the experiments into one focused integration with documentation, tests, and clear operational ownership.


Need an official API integration with a focused technical owner? Discuss your project.