MAS Documentation

Basic Usage

Use WebhookService in your Roblox game, and manage bans, places, and users on the MAS website.

Website workflows (v3.9)
  • Bans (/bans): search/filter bans, pagination (10/25/50/100), view or revoke.
  • View Bans (/view_bans): scope by games you own or groups; shows when a banned player owns MAS places.
  • Places (/places): filter Owners banned / suspended to find games that need cleanup.
  • Live Moderation (/live_moderation): resolve, reject, or clear ModCalls when a server is offline.
  • API Keys (/api_keys): create keys for WebhookService (shown once).
  • Documentation (/documentation): this guide, API reference, and version history.
In-game: WebhookService example

Place WebhookService next to your server script, then:

local WebhookService = require(script.Parent.WebhookService)

-- Initialize the service
local ws = WebhookService.new()

-- Set API keys (MAS site + Roblox Creator Dashboard)
ws:SetAPIKey("your_mas_api_key_here") -- From /api_keys
ws:SetRobloxAPIKey("your_roblox_api_key_here") -- create.roblox.com credentials

-- Configure features
ws:SetRobloxBanAPI(true)
ws:SetAltAccountDetection(true)
ws:SetMASBanSystem(true)
ws:SetAutoUnbanSync(true)

-- Setup automatic ban checking on join
ws:SetupAutoBan()

-- Check if a player is banned (both systems + auto-unban sync)
local result = ws:CheckBan(userId, placeId)
if result and result.is_banned then
    if result.mas_banned then
        print("Banned in MAS:", result.ban_data.mas.reason)
    end
    if result.roblox_banned then
        print("Banned in Roblox:", result.ban_data.roblox.gameJoinRestriction.displayReason)
    end
end

-- Ban a player (adds to both systems)
local banResult = ws:AddBan(userId, "Breaking rules", placeId, 60, false, true)
if banResult then
    if banResult.mas and banResult.mas.success then
        print("Banned in MAS system")
    end
    if banResult.roblox and banResult.roblox.success then
        print("Banned in Roblox system")
    end
end
Tips: Keep keys in config.lua (never commit secrets). Prefer clean URLs like /api_keys over /pages/api_keys.php. After unbanning on the website, auto-unban sync can clear leftover Roblox restrictions when the player rejoins.