---
title: "GET /guilds/{guild_id}/auto-moderation/rules"
method: GET
path: "/guilds/{guild_id}/auto-moderation/rules"
---

# GET /guilds/{guild_id}/auto-moderation/rules

`GET /guilds/{guild_id}/auto-moderation/rules`

## Response `200`

200 response for list_auto_moderation_rules

- union[], nullable
  - union
    - DefaultKeywordRuleResponse
      - `id` string, snowflake, required
      - `guild_id` string, snowflake, required
      - `creator_id` string, snowflake, required
      - `name` string, required
      - `event_type` union, required
        - 1 — A user submitted a message to a channel
        - 2 — A user is attempting to join the server or a member's properties were updated.
      - `actions` union[], required
        - union
          - BlockMessageActionResponse
            - `type` union, required
              - …
            - `metadata` BlockMessageActionMetadataResponse, required
              - …
          - FlagToChannelActionResponse
            - `type` union, required
              - …
            - `metadata` FlagToChannelActionMetadataResponse, required
              - …
          - QuarantineUserActionResponse
            - `type` union, required
              - …
            - `metadata` QuarantineUserActionMetadataResponse, required
          - UserCommunicationDisabledActionResponse
            - `type` union, required
              - …
            - `metadata` UserCommunicationDisabledActionMetadataResponse, required
              - …
      - `trigger_type` union, required
        - 1 — Check if content contains words from a list of keywords or matches regex
        - 3 — Check if content represents generic spam
        - 4 — Check if content contains words from internal pre-defined wordsets
        - 5 — Check if content contains more unique mentions than allowed
        - 6 — Check if user profile fields contains words from a list of keywords or matches regex
      - `enabled` boolean, required
      - `exempt_roles` SnowflakeType[], required
      - `exempt_channels` SnowflakeType[], required
      - `trigger_metadata` DefaultKeywordListTriggerMetadataResponse, required
        - `allow_list` string[], required
        - `presets` AutomodKeywordPresetType[], required
          - union
            - 1 — Words and phrases that may be considered profanity
            - 2 — Words and phrases that may be considered as sexual content
            - 3 — Words and phrases that may be considered slurs and hate speech
    - KeywordRuleResponse
      - `id` string, snowflake, required
      - `guild_id` string, snowflake, required
      - `creator_id` string, snowflake, required
      - `name` string, required
      - `event_type` union, required
        - 1 — A user submitted a message to a channel
        - 2 — A user is attempting to join the server or a member's properties were updated.
      - `actions` union[], required
        - union
          - BlockMessageActionResponse
            - `type` union, required
              - …
            - `metadata` BlockMessageActionMetadataResponse, required
              - …
          - FlagToChannelActionResponse
            - `type` union, required
              - …
            - `metadata` FlagToChannelActionMetadataResponse, required
              - …
          - QuarantineUserActionResponse
            - `type` union, required
              - …
            - `metadata` QuarantineUserActionMetadataResponse, required
          - UserCommunicationDisabledActionResponse
            - `type` union, required
              - …
            - `metadata` UserCommunicationDisabledActionMetadataResponse, required
              - …
      - `trigger_type` union, required
        - 1 — Check if content contains words from a list of keywords or matches regex
        - 3 — Check if content represents generic spam
        - 4 — Check if content contains words from internal pre-defined wordsets
        - 5 — Check if content contains more unique mentions than allowed
        - 6 — Check if user profile fields contains words from a list of keywords or matches regex
      - `enabled` boolean, required
      - `exempt_roles` SnowflakeType[], required
      - `exempt_channels` SnowflakeType[], required
      - `trigger_metadata` KeywordTriggerMetadataResponse, required
        - `keyword_filter` string[], required
        - `regex_patterns` string[], required
        - `allow_list` string[], required
    - MLSpamRuleResponse
      - `id` string, snowflake, required
      - `guild_id` string, snowflake, required
      - `creator_id` string, snowflake, required
      - `name` string, required
      - `event_type` union, required
        - 1 — A user submitted a message to a channel
        - 2 — A user is attempting to join the server or a member's properties were updated.
      - `actions` union[], required
        - union
          - BlockMessageActionResponse
            - `type` union, required
              - …
            - `metadata` BlockMessageActionMetadataResponse, required
              - …
          - FlagToChannelActionResponse
            - `type` union, required
              - …
            - `metadata` FlagToChannelActionMetadataResponse, required
              - …
          - QuarantineUserActionResponse
            - `type` union, required
              - …
            - `metadata` QuarantineUserActionMetadataResponse, required
          - UserCommunicationDisabledActionResponse
            - `type` union, required
              - …
            - `metadata` UserCommunicationDisabledActionMetadataResponse, required
              - …
      - `trigger_type` union, required
        - 1 — Check if content contains words from a list of keywords or matches regex
        - 3 — Check if content represents generic spam
        - 4 — Check if content contains words from internal pre-defined wordsets
        - 5 — Check if content contains more unique mentions than allowed
        - 6 — Check if user profile fields contains words from a list of keywords or matches regex
      - `enabled` boolean, required
      - `exempt_roles` SnowflakeType[], required
      - `exempt_channels` SnowflakeType[], required
      - `trigger_metadata` MLSpamTriggerMetadataResponse, required
    - MentionSpamRuleResponse
      - `id` string, snowflake, required
      - `guild_id` string, snowflake, required
      - `creator_id` string, snowflake, required
      - `name` string, required
      - `event_type` union, required
        - 1 — A user submitted a message to a channel
        - 2 — A user is attempting to join the server or a member's properties were updated.
      - `actions` union[], required
        - union
          - BlockMessageActionResponse
            - `type` union, required
              - …
            - `metadata` BlockMessageActionMetadataResponse, required
              - …
          - FlagToChannelActionResponse
            - `type` union, required
              - …
            - `metadata` FlagToChannelActionMetadataResponse, required
              - …
          - QuarantineUserActionResponse
            - `type` union, required
              - …
            - `metadata` QuarantineUserActionMetadataResponse, required
          - UserCommunicationDisabledActionResponse
            - `type` union, required
              - …
            - `metadata` UserCommunicationDisabledActionMetadataResponse, required
              - …
      - `trigger_type` union, required
        - 1 — Check if content contains words from a list of keywords or matches regex
        - 3 — Check if content represents generic spam
        - 4 — Check if content contains words from internal pre-defined wordsets
        - 5 — Check if content contains more unique mentions than allowed
        - 6 — Check if user profile fields contains words from a list of keywords or matches regex
      - `enabled` boolean, required
      - `exempt_roles` SnowflakeType[], required
      - `exempt_channels` SnowflakeType[], required
      - `trigger_metadata` MentionSpamTriggerMetadataResponse, required
        - `mention_total_limit` integer, required
        - `mention_raid_protection_enabled` boolean, required
    - UserProfileRuleResponse
      - `id` string, snowflake, required
      - `guild_id` string, snowflake, required
      - `creator_id` string, snowflake, required
      - `name` string, required
      - `event_type` union, required
        - 1 — A user submitted a message to a channel
        - 2 — A user is attempting to join the server or a member's properties were updated.
      - `actions` union[], required
        - union
          - BlockMessageActionResponse
            - `type` union, required
              - …
            - `metadata` BlockMessageActionMetadataResponse, required
              - …
          - FlagToChannelActionResponse
            - `type` union, required
              - …
            - `metadata` FlagToChannelActionMetadataResponse, required
              - …
          - QuarantineUserActionResponse
            - `type` union, required
              - …
            - `metadata` QuarantineUserActionMetadataResponse, required
          - UserCommunicationDisabledActionResponse
            - `type` union, required
              - …
            - `metadata` UserCommunicationDisabledActionMetadataResponse, required
              - …
      - `trigger_type` union, required
        - 1 — Check if content contains words from a list of keywords or matches regex
        - 3 — Check if content represents generic spam
        - 4 — Check if content contains words from internal pre-defined wordsets
        - 5 — Check if content contains more unique mentions than allowed
        - 6 — Check if user profile fields contains words from a list of keywords or matches regex
      - `enabled` boolean, required
      - `exempt_roles` SnowflakeType[], required
      - `exempt_channels` SnowflakeType[], required
      - `trigger_metadata` UserProfileMetadataResponse, required
        - `keyword_filter` string[], required
        - `regex_patterns` string[], required
        - `allow_list` string[], required

## Other responses

- `429` — Client ratelimited response
- `4XX` — Client error response

## Changes

- **2026-06-05** `693bf1f99bba` — 5 breaking, 5 info
  - added `#/components/schemas/UserProfileRuleResponse` to the `items/` response property `oneOf` list for the response status `200`
  - added `subschema #5: USER_PROFILE` to the `items/oneOf[#/components/schemas/DefaultKeywordRuleResponse]/trigger_type/allOf[#/components/schemas/AutomodTriggerType]/` response property `oneOf` list for the response status `200`
  - added `subschema #5: USER_PROFILE` to the `items/oneOf[#/components/schemas/KeywordRuleResponse]/trigger_type/allOf[#/components/schemas/AutomodTriggerType]/` response property `oneOf` list for the response status `200`
  - added `subschema #5: USER_PROFILE` to the `items/oneOf[#/components/schemas/MLSpamRuleResponse]/trigger_type/allOf[#/components/schemas/AutomodTriggerType]/` response property `oneOf` list for the response status `200`
  - …6 more

[Change history](https://skmtc.dev/discord/apis/discord-http-api-preview/changes/guilds/:guild_id/auto-moderation/rules/get.md)

---

[API](https://skmtc.dev/discord/apis/discord-http-api-preview.md) · [All operations](https://skmtc.dev/discord/apis/discord-http-api-preview/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/discord/discord-http-api-preview/revisions/49efa428e0dd/schema)
