status: forwarding normally

One endpoint.
Every Discord webhook relayed.

Rocommand sits in front of your Discord webhooks so your Roblox game — or anything else — can fire requests without tripping rate limits or leaking the real URL.

rocommand.elementfx.com/.com/wh/…

Built for scripts that fire webhooks a lot, not just once.

Hides the real URL

Your Discord webhook link is encrypted into the proxy URL — not stored anywhere, and not recoverable without your server's secret key.

Absorbs rate limits

Bursts of requests are queued per-webhook and retried on Discord's own Retry-After, so a busy game server doesn't get throttled or banned.

No database

The proxy URL itself is the encrypted webhook. Nothing to look up, nothing to lose if a server restarts.

Swap the URL, keep the same request.

Rocommand speaks the exact same request format Discord expects. Point your existing webhook call at your Rocommand URL instead of Discord's, and everything downstream keeps working.

  • Drop-in replacement — same JSON body, same headers.
  • Works from Roblox — HttpService requests pass straight through.
  • Automatic retries — 429s are retried before they reach you.
post_message.lua
-- before: direct to Discord
local url = "https://discord.com/api/webhooks/…"

-- after: through Rocommand
local url = "https://rocommand.elementfx.com/wh/8f3a2c…"

HttpService:PostAsync(url, HttpService:JSONEncode({
  content = "Server started"
}))