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:

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