Developer Portal
Experimental The bot & app platform is in active development. Self-hosted servers run bots, slash commands and message components with a few differences from cloud. See what's supported.
← Docs

Feature Matrix

A “does it work?” view of every Discord bot feature on GameVox. Use this to scope a migration before you flip the gateway URL. The Self-hosted column shows whether a feature works when your bot is installed on a customer's self-hosted GameVox server. See the self-hosted docs for the forwarding architecture.

Area Feature Cloud Self-hosted Notes
Gateway JSON encoding Yes Yes Default; what every library uses
zlib-stream compression Yes Yes Covered by every major library
ETF encoding No No Libraries fall back to JSON when encoding=etf is missing
Zstandard compression No No zlib-stream is the universal alternative
Resume / op:6 Yes Yes Resume buffer mirrored to Redis, so op:6 survives api task restarts
Sharding Yes Yes Standard (guild_id >> 22) % num_shards hash
REST Messages CRUD Yes Yes Send, edit, delete, bulk-delete, get, pin, typing, reactions, file attachments, polls
Channels CRUD Yes Yes Cloud: reorder, and role overwrite writes (PUT and DELETE); channel objects do not list overwrites yet. Self-hosted: reorder yes, role overwrites yes (no member overwrites), listed on channel objects
Per-channel permission overwrites Partial Partial Role (group) overwrites only, no member overwrites. Writing them (PUT, DELETE) works on cloud and self-hosted. Reading them (permission_overwrites on channel objects and CHANNEL_UPDATE) is self-hosted only for now; cloud channel objects do not include the field. On self-hosted an allow never grants beyond what the group itself is allowed
Members / roles / bans Yes Yes Full CRUD; communication_disabled_until (timeout) not supported
Webhooks (channel & app) Yes Yes Full CRUD + execute (embeds, attachments, multipart). On self-hosted servers the rows stay in cloud storage and executed messages are written into the self-hosted channel
App-owned emojis Portal-only Portal-only Managed in the developer portal; GET on bot-API works. See Emojis
Audit log Partial Partial Bot-relevant entries; per-channel-overwrite history not indexed
Rate-limit headers Yes Yes X-RateLimit-* on every response, bucket-aware
Interactions Application commands (slash, user, message) Yes Yes Bulk PUT + individual CRUD. Commands are registered in the cloud for both kinds of server; invocations on self-hosted servers are routed through the cloud
Buttons, string selects, modals (Components v1) Yes Yes Ephemeral replies too. Server channels only, not DMs. See Message components
User, role, mentionable and channel selects Partial Partial Accepted and stored; clients show them disabled, so they never produce an interaction
Components v2 No No Not supported; v2 layout components are not rendered
HTTP-mode interactions (outgoing endpoint) Partial Partial POSTed to your interactions_endpoint_url with an Ed25519 signature, with gateway fallback if the endpoint fails. Needs a connected gateway session, and the response body is ignored: answer through the callback endpoint. See OAuth2
Voice UDP voice gateway Yes Yes Per-region. See Voice docs
AEAD AES-256-GCM Yes Yes Preferred
AEAD XChaCha20-Poly1305 Yes Yes Fallback
Bot-driven voice-state modify Yes Partial Both: PATCH .../voice-states/{user_id} for mute / move / disconnect. Self-hosted also takes deaf, in any combination with a move; a move fires two events instead of one
Other Server emojis (read) Yes Yes List + get; create/patch/delete via portal only
Soundboard (read) Yes Yes List + get; bot-driven playback not supported
Vanity URL Partial No Cloud: read + patch (Gold+ servers). Self-hosted: PATCH returns 501
Threads / forum posts Partial Partial Forum posts: start one (POST /channels/{forum}/threads), read it and reply in it. Other thread endpoints (archiving, thread members, active threads) are not supported
Scheduled events Yes Partial CRUD and RSVP, mapped to GameVox server events. No GUILD_SCHEDULED_EVENT_* gateway events. Self-hosted: recurring events are stored, but later occurrences are not generated
Stage channels, AutoMod No No Intents accepted, no events
Premium Apps / Entitlements No No No monetization layer in v1
Portal Teams (multi-developer ownership) Yes Discord parity. See Teams
Application transfer to team Yes One-way (matches Discord)
App Testers (private-app install allowlist) Yes 100/app. See Teams → Testers
OAuth2 install URLs (user + server contexts) Yes None / GameVox-provided / Custom URL. See OAuth2
Client secret rotation Yes Bcrypt-hashed; shown once on create / rotate
Bot directory listing Yes Admin-approved listings at gamevox.com/bots

Legend

  • Yes: works as on Discord, no code changes.
  • Partial: wire-compatible but missing some semantics. Safe to call, may not produce events.
  • No: accepted on the wire (won't 4014), but does nothing. Plan for it not being there.

← Back to docs