Webhook proxies

Stable ingress URLs that forward, transform, and log traffic before it reaches Discord or your backend.

What is a proxy?

A webhook proxy sits between your callers (Roblox, store backend, payment provider) and your target URL. Callers use the NEX URL; NEX applies filters, auto-delivery, and optional embed templates, then forwards the request.

Create a proxy

  1. Dashboard → Webhooks → Create Webhook
  2. Set name, optional project label, and target URL
  3. Copy the public proxy URL shown after creation
POST https://nexrbx.com/api/webhooks/p/YOUR_PUBLIC_ID

Content-Type: application/json



{ "event": "player_joined", "userId": "123456789" }

Forwarding behaviour

Analytics & replay

Each request is logged with status, timing metadata, and up to 8 KB of the incoming body. From Webhooks → Statistics → Recent events, use Replay to resend a stored payload — useful when debugging filters or delivery rules.

Roblox examples

Four common patterns from live Roblox experiences — each posts JSON to your NEX proxy URL. Use Test Me to receive a sample Discord DM (requires a connected Discord account).

Mirror important print / warn output from dedicated server scripts to Discord for live ops monitoring.

Project files

  • ServerScriptService/
    • ConsoleForwarder.server.lua
  • ReplicatedStorage/
    • LogBridge.module.lua
ConsoleForwarder.server.lua
local HttpService = game:GetService("HttpService")

local PROXY = "https://nexrbx.com/api/webhooks/p/YOUR_PUBLIC_ID"



local function forwardLog(level, message)

  pcall(function()

    HttpService:PostAsync(PROXY, HttpService:JSONEncode({

      source = "roblox",

      event = "console_log",

      level = level,

      message = tostring(message),

      placeId = tostring(game.PlaceId),

      jobId = game.JobId,

    }), Enum.HttpContentType.ApplicationJson)

  end)

end



game:GetService("LogService").MessageOut:Connect(function(message, messageType)

  if messageType == Enum.MessageType.MessageWarning

    or messageType == Enum.MessageType.MessageError then

    forwardLog(string.lower(tostring(messageType)), message)

  end

end)

Webhook settings

Open Webhooks → Settings on any proxy to configure: