External audit webhooks
Learn which kind of data is sent to external audit webhooks.
If you have an Exoguard Pro subscription, you can leverage external auditing features through custom webhooks outside of the Discord platform. Every time a command that may affect your server's security or configuration is executed, a JSON POST request is sent to your webhook.
Audit Log Object
Here are the JSON fields you can find in an audit log event's request body:
command
string
Full command name (example: config roles add
)
guild
object
Partial guild object, with only the id
and name
fields
timestamp
float
Timestamp at which the current audit log event was fired
args?
object
Command arguments with their respective values, if any
success?
boolean
Authentication status, only for commands that require it
error?
string
Authentication failure reason, only when success
is false
details?
string
Markdown-formatted string for additional command details
Fields marked with a question mark ?
are contextual, they will not always be present.
Example Events
Login (success)
{
"command": "login",
"success": true,
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724620785.892197,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Login (failure)
{
"command": "login",
"success": false,
"error": "invalid_code",
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724620794.665614,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Login (failure, rate-limited)
{
"command": "login",
"success": false,
"error": "invalid_code",
"details": "**Warning:** user has failed authentication at least 3 times in 2 minutes.",
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724620800.03748,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Logout
{
"command": "logout",
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724620789.882272,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Config roles add
{
"command": "config roles add",
"args": {
"role": "1201298127920046181",
"user": "368771716140236802"
},
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724616060.967678,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Delete
{
"command": "delete",
"args": {
"user": "262700032262799382"
},
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724628609.820362,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Subscription redeem
{
"command": "subscription redeem",
"details": "**Voucher information:** Exoguard Pro (30 days) subscription **Subscription expiry:** <t:1729805047:D> at <t:1729805047:T>",
"author": {
"avatar": "39e2ed99424b085c44afac5f7d07f33c",
"clan": null,
"discriminator": "0",
"global_name": "Xenthys",
"id": "368771716140236802",
"public_flags": 4588160,
"username": "xenthys"
},
"timestamp": 1724629098.998002,
"guild": {
"id": 1201295802967019725,
"name": "Exoguard HQ"
}
}
Last updated