Skip to main content

Guilds

GET /guilds​

Returns the IDs of all guilds where the bot is currently active (has not left).

Response​

200 OK​

{
"guilds": [
{ "id": "1234910949220028456" },
{ "id": "9876543210987654321" }
]
}
FieldTypeDescription
guildsobject[]List of active guild objects
guilds[].idstringDiscord guild snowflake ID

Example​

curl https://api.guacamoleninja.com/guilds \
-H "Authorization: Bearer $BOT_API_SECRET"

GET /guilds/:id​

Returns full details, configuration, and welcome config for a single guild.

Path parameters​

ParameterDescription
idDiscord guild snowflake ID

Response​

200 OK​

{
"guild": {
"id": "1234910949220028456",
"name": "My Server",
"iconHash": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
"joinedAt": "2025-01-01T00:00:00.000Z",
"leftAt": null,
"config": {
"guildId": "1234910949220028456",
"prefix": "!",
"timezone": "Europe/Lisbon",
"disabledCommands": ["weather"],
"updatedAt": "2025-06-01T12:00:00.000Z"
},
"welcomeConfig": {
"guildId": "1234910949220028456",
"enabled": true,
"channelId": "8765432109876543210",
"message": "Welcome {user} to **{server}**! You are member #{memberCount}.",
"updatedAt": "2025-06-01T12:00:00.000Z"
}
}
}
FieldTypeDescription
guild.idstringDiscord guild snowflake ID
guild.namestringGuild display name
guild.iconHashstring | nullDiscord icon hash. Construct the full URL as https://cdn.discordapp.com/icons/{id}/{hash}.png
guild.joinedAtstringISO 8601 timestamp when the bot joined
guild.leftAtnullAlways null for active guilds — guilds the bot has left return 404
guild.configobject | nullServer configuration, or null if defaults have never been saved
guild.config.prefixstringCommand prefix (default !)
guild.config.timezonestringIANA timezone name (default UTC)
guild.config.disabledCommandsstring[]Command names disabled on this server
guild.config.updatedAtstringISO 8601 timestamp of last config update
guild.welcomeConfigobject | nullWelcome message configuration, or null if never configured
guild.welcomeConfig.enabledbooleanWhether welcome messages are active
guild.welcomeConfig.channelIdstringChannel snowflake ID to post messages in
guild.welcomeConfig.messagestringMessage template (supports {user}, {username}, {server}, {memberCount})
guild.welcomeConfig.updatedAtstringISO 8601 timestamp of last welcome config update

404 Not Found​

Returned when the guild ID is unknown or the bot has already left.

{ "error": "Guild not found" }

Example​

curl https://api.guacamoleninja.com/guilds/1234910949220028456 \
-H "Authorization: Bearer $BOT_API_SECRET"