package events import "time" type AutomodMessage struct { // The contents of the message caught by automod. Text string `json:"text"` // Metadata surrounding the potential inappropriate fragments of the message. Fragments []struct { // Message text in a fragment. Text string `json:"text"` // Optional. Metadata pertaining to the emote. Emote struct { // An ID that uniquely identifies this emote. ID string `json:"id"` // An ID that identifies the emote set that the emote belongs to. EmoteSetID string `json:"emote_set_id"` } `json:"emote"` // Optional. Metadata pertaining to the cheermote. Cheermote struct { // The name portion of the Cheermote string that you use in chat to cheer Bits. The full Cheermote string is the concatenation of {prefix} + {number of Bits}. Prefix string `json:"prefix"` // The amount of bits cheered. Bits int `json:"bits"` // The tier level of the cheermote. Tier int `json:"tier"` } `json:"cheermote"` } `json:"fragments"` } type AutomodMessageHoldEvent struct { // The ID of the broadcaster specified in the request. BroadcasterUserID string `json:"broadcaster_user_id"` // The login of the broadcaster specified in the request. BroadcasterUserLogin string `json:"broadcaster_user_login"` // The user name of the broadcaster specified in the request. BroadcasterUserName string `json:"broadcaster_user_name"` // The message sender’s user ID. UserID string `json:"user_id"` // The message sender’s login name. UserLogin string `json:"user_login"` // The message sender’s display name. UserName string `json:"user_name"` // The ID of the message that was flagged by automod. MessageID string `json:"message_id"` // The body of the message. Message []AutomodMessage `json:"message"` // The category of the message. Category string `json:"category"` // The level of severity. Measured between 1 to 4. Level int `json:"level"` // The timestamp of when automod saved the message. HeldAt time.Time `json:"held_at"` } type AutomodSettingsUpdateEvent struct { // The ID of the broadcaster specified in the request. BroadcasterUserID string `json:"broadcaster_user_id"` // The login of the broadcaster specified in the request. BroadcasterUserLogin string `json:"broadcaster_user_login"` // The user name of the broadcaster specified in the request. BroadcasterUserName string `json:"broadcaster_user_name"` // The ID of the moderator who changed the channel settings. ModeratorUserID string `json:"moderator_user_id"` // The moderator’s login. ModeratorUserLogin string `json:"moderator_user_login"` // The moderator’s user name. ModeratorUserName string `json:"moderator_user_name"` // The automod level for hostility involving name calling or insults. Bullying int `json:"bullying"` // The default AutoMod level for the broadcaster. // This field is null if the broadcaster has set one or more of the individual settings. OverallLevel *int `json:"overall_level"` // The Automod level for discrimination against disability. Disability int `json:"disability"` // The Automod level for racial discrimination. RaceEthnicityOrReligion int `json:"race_ethnicity_or_religion"` // The Automod level for discrimination against women. Misogyny int `json:"misogyny"` // The Automod level for discrimination based on sexuality, sex, or gender. SexualitySexOrGender int `json:"sexuality_sex_or_gender"` // The Automod level for hostility involving aggression. Aggression int `json:"aggression"` // The Automod level for sexual content. SexBasedTerms int `json:"sex_based_terms"` // The Automod level for profanity. Swearing int `json:"swearing"` } type AutomodTermsUpdateEvent struct { // The ID of the broadcaster specified in the request. BroadcasterUserID string `json:"broadcaster_user_id"` // The login of the broadcaster specified in the request. BroadcasterUserLogin string `json:"broadcaster_user_login"` // The user name of the broadcaster specified in the request. BroadcasterUserName string `json:"broadcaster_user_name"` // The ID of the moderator who changed the channel settings. ModeratorUserID string `json:"moderator_user_id"` // The moderator’s login. ModeratorUserLogin string `json:"moderator_user_login"` // The moderator’s user name. ModeratorUserName string `json:"moderator_user_name"` // The status change applied to the terms. Possible options are: // add_permitted, remove_permitted, add_blocked, or remove_blocked Action string `json:"action"` // Indicates whether this term was added due to an Automod message approve/deny action. FromAutomod bool `json:"from_automod"` // The list of terms that had a status change. Terms []string `json:"terms"` }