it works fine in studio but fails in the real game…
Please spend some time to read the previous responses in the thread before replying… your problem was already described above and why it happens.
rip discord-roblox
HTTPService sends the request through your own network while running Discord webhook code in studio. Discord blocked the Roblox server user agent. Studio doesn’t use that user agent, so your code will work fine until you publish online.
How to bypass:
Disclamer: I do not know what I am talking about
- Get a website
- Make the website able to receive/resend data to discord
- Send webhook data to website
- Website sends it to discord
- Bypassed
Long story short: Don’t.
That’s exactly what a proxy/VPN is. A web server to route requests from clients.
Correct post up until your proposed solution. Jake specifically said “through your own server”, and no I’m not arguing semantics. By having people proxy into the same server the same problem arises. Host your own server, don’t use somebody else’s.
I disagree, the issue Discord has is with the amount of data going through each webhook, not from an individual server or service.
My server obeys the rate limits given by Discord.
If your server obeys the rate limits given by Discord then it seems fine, although I’d still recommend everyone host their own server just because of security (not saying you’re untrustworthy, but as a general precaution).
I completely agree! There’s a copy on Github and a Docker container for anyone that wants to do this.
Their grievance isn’t obeying or even approaching the rate limit. Their issue is that Roblox HttpService doesn’t return headers, which contain error data, should the POST fail. As Roblox scripts cannot receive Discord API errors correctly, we cannot react to specific errors other than the fact that the POST failed. They said 88% of API calls were invalid, so it’s as if they’re being DDoSed with data they’ll have to reject, explain why they rejected, all for nothing since we don’t receive that data in the first place. Discord may lift this ban if Roblox allows headers to transit.
How would I go about using embeds?
You can see the structure of how embeds are supposed to look at Discord Developer Portal
And how webhook payloads are supposed to look at Discord Developer Portal
You can visualize webhooks in your browser on sites like Embed Visualizer (small note that you use "embeds": [{...}]
and not "embed": {}
for webhook payloads)
That’s sending, not receiving.
this should probably be locked, webhooks being used this way is banned on discord, no exceptions, pass through an api or something, you’re still violating discord’s tos
Not entirely inherently. If there was a proxy designed to return the headers in JSON along with the discord API response, that would be in compliance with the Discord ToS.
If you’d refer to the post by @Osyris, he links this tweet from the lead backend developer at Discord:
https://devforum.roblox.com/t/discord-integration-a-guide-on-using-discord-through-roblox-updated/47090/66
I’m so glad somebody made this, I used Discord webhooks all the time before roblox was blacklisted and really missed the functionality - that is until you created this proxy server. I wish I could’ve thanked your earlier! (just got in devforum)
also can i say how smart it is to have the server send a message through your webhook when it gets blacklisted
very intuitive design my dude