MyChat | Free Global Chat API for Roblox | Create chats and connect them to any app, game, or server

Introducing MyChat! a free Global chat API for roblox.

Hello! have you ever wanted to have a simple and free Chat API?
With MyChat, you can easily do that! you can make and use very easily multiple chats, that can be used from the API, you can easily use that for integrating Roblox chat with an outside application.
and you can easily control your multiple chats from the control panel.


How to setup

    1. Download MyChat Module script from here:
      MyChat.rbxm (2.0 KB)
    1. Import it into your Roblox game, and place it in ReplicatedStorage
    1. Create a new Chat by clicking Here!, copy the access_code, and inside the module script change MyChat.CurrentAccessCode to the access code that you have copied. (The access code is your chat code. Do not share it with others that you don’t want them to be able to control anything in your chat.)

Make sure “Allow HTTP Requests” is enabled!


Here is an example of how to use it from Roblox:

local MyChat = require(game.ReplicatedStorage.MyChat)
local Players = game.Players

Players.PlayerAdded:Connect(function(plr)
	MyChat:SendMessage(plr.Name, "Hello, everyone!", plr.UserId)

	wait(1)

	local messages = MyChat:GetMessages()
	print("Messages in chat:")
	for _, msg in ipairs(messages) do
		print(msg.timestamp, "[" .. msg.sender .. "]:", msg.content)
	end
end)

Now that you have set up your first chat, let’s take a look at how to use the API.

How to use the API.

  • Clicking Here! will lead you to the MyChat Homepage, where you can access your chat from a simple UI.
  • https://mychat.run.place/generate_code creates a new chat (chat access code.)
  • https://mychat.run.place/send_message with:
{
  "access_code": "YOUR_ACCESS_CODE",
  "sender": "Name",
  "content": "Hello World!",
  "user_id": "0"
}

set user_id to the sender if outside of roblox, if inside, the actual user id.
will return: { "message": "Message sent successfully!" }

  • https://mychat.run.place/get_messages/YOUR_ACCESS_CODE will return something like this:
{"chat_name":"test", "max_users":99999, "messages":[{"content":"hello","sender":"Player1","timestamp":"2025-04-13T16:39:59"},{"content":"bye","sender":"Player2","timestamp":"2025-04-13T16:40:03"}]}
  • https://mychat.run.place/chat_settings/YOUR_ACCESS_CODE will reutrn something like this:
{"allowed_senders":[],"blocked_users":[],"blocked_words":[],"chat_name":"Main","enable_filter":false,"max_message_length":200,"max_users":99999}

You can also get data of specific players:

https://mychat.run.place/user/USER_ID/messages - will return total amount of messages.
https://mychat.run.place/user/USER_ID/chats – will return all the chats names that this user were in (only if this chat has a name. chat name can be set in the control panel.)
https://mychat.run.place/user/USER_ID/last_seen – will return when the user last sent a message.


Chat Control-Panel:

all of the chat settings, and live chat!
https://mychat.run.place/control/YOUR-ACCESS-CODE


  • Messages inside chats are automatically deleted after 1 hour.
  • Chats are deleted after 1 week of no activity.
  • Your old chats will automatically update with new updates coming to this project.

Here is a simple chat model for your game, using the module-script:

McChat.rbxm (22.8 KB)

This is a simple MyChat Chat model, you can freely use and edit as a starting point of your custom MyChat chat.

to use it, simply download it, put it in ServerScriptService, and run the game. (you should have the MyChat module script setup for it to work.)


Thanks for reading! :slight_smile:
More features, and documents will be added soon!

Was this useful for you?
  • Yes!
  • No!

0 voters

Did you like the concept?
  • Yes
  • No

0 voters

5 Likes

What use cases are you aiming to solve (in the future) by relying fully on an external API? It’s generally best practice to prefer Roblox-native solutions (MessagingService) over third-party APIs.

Interacting with a global chat is an explicit use case of the MessagingService.

2 Likes

This is specifically good for chat with Roblox game and another application, or cross-game chat however, it’s also good for normal chats.

I’m also planning to add features that the normal MessagingService don’t have such as Track of specific stuff (like total amount of messages of specific user in specific chat, or specific multiple chats, or all existed chats.) and more

Roblox already has this though, in the form of the localization api… all you need to do is pass around messages via MessagingService and send them

1 Like

We are so back guys, the resources are dropping

4 Likes

Does it already supporting all of the languages? I remember it didn’t.
okay.

1 Like

I made a little bit of improvements to the UI of the Homepage and Control-Panel:

1 Like

will be pentesting the website later :wink:

1 Like

I made now that the website and the API are much more secure, and it’s running now on https, without a port:
https://mychat.run.place
If you are using old module script and scripts, update them to fit this url, to make it work properly.

ok to start off the control panel just flat out doesn’t work, not much to look at on the website itself all the endpoints seem to be fine. Going back to the control panel you are trying to access https://mychat.run.place/get_messages?access_code=XXXXXXXXXX. I’m unsure why you pointed the control panel to this endpoint as this just flat out isn’t the correct format. The endpoint that is used in the modulescript (and the one that works) is https://mychat.run.place/get_messages/XXXXXXXXXX.

the other odd thing I noticed is you have 0 restrictions on datatype, post size, or sender. I sent roughly ~5mb of data to my key (check the data here!) within under a minute and it all went through no problem. This is a problem for a couple reasons, one you shouldn’t waste server space on useless tables (why can we even post tables? Isn’t it made for strings) and two, more importantly, I assume this would be stupidly easy to DDoS, hell you could maybe even down/significantly slow the site with a single device.

Overall this is a cool concept but I don’t see any real major application. At least fix the control panel so it’s main reason to use it over built in services is actually working.

1 Like

Thanks for your feedback.

The control panel live chat didn’t work because I just changed the endpoint of ‘get_messages’, and forgot to update it, anyways, I fixed it now.

And I also fixed other stuff.