Skip to content

Events


Channel


channel_events

ChannelCreateEvent dataclass

Bases: Event, ChannelModel


              flowchart TD
              scurrypy.events.channel_events.ChannelCreateEvent[ChannelCreateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.api.channels.channel.ChannelModel[ChannelModel]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelCreateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.channel_events.ChannelCreateEvent
                                scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
                



              click scurrypy.events.channel_events.ChannelCreateEvent href "" "scurrypy.events.channel_events.ChannelCreateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a guild channel has been created.

dispatch_name = EventType.CHANNEL_CREATE class-attribute instance-attribute

ChannelUpdateEvent dataclass

Bases: Event, ChannelModel


              flowchart TD
              scurrypy.events.channel_events.ChannelUpdateEvent[ChannelUpdateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.api.channels.channel.ChannelModel[ChannelModel]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.channel_events.ChannelUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
                



              click scurrypy.events.channel_events.ChannelUpdateEvent href "" "scurrypy.events.channel_events.ChannelUpdateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a guild channel has been updated.

Note

Not send when last_message_id is changed.

dispatch_name = EventType.CHANNEL_UPDATE class-attribute instance-attribute

ChannelDeleteEvent dataclass

Bases: Event, ChannelModel


              flowchart TD
              scurrypy.events.channel_events.ChannelDeleteEvent[ChannelDeleteEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.api.channels.channel.ChannelModel[ChannelModel]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelDeleteEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.channel_events.ChannelDeleteEvent
                                scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
                



              click scurrypy.events.channel_events.ChannelDeleteEvent href "" "scurrypy.events.channel_events.ChannelDeleteEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a guild channel has been deleted.

dispatch_name = EventType.CHANNEL_DELETE class-attribute instance-attribute

ChannelPinsUpdateEvent dataclass

Bases: Event, DataModel


              flowchart TD
              scurrypy.events.channel_events.ChannelPinsUpdateEvent[ChannelPinsUpdateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelPinsUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.core.model.DataModel --> scurrypy.events.channel_events.ChannelPinsUpdateEvent
                


              click scurrypy.events.channel_events.ChannelPinsUpdateEvent href "" "scurrypy.events.channel_events.ChannelPinsUpdateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Pin update event.

dispatch_name = EventType.CHANNEL_PINS_UPDATE class-attribute instance-attribute

channel_id: Snowflake instance-attribute

ID of channel where the pins were updated.

guild_id: Snowflake | None instance-attribute

ID of the guild where the pins were updated.

last_pin_timestamp: str | None instance-attribute

ISO8601 formatted timestamp of the last pinned message in the channel.

WebhooksUpdateEvent dataclass

Bases: Event, DataModel


              flowchart TD
              scurrypy.events.channel_events.WebhooksUpdateEvent[WebhooksUpdateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.channel_events.WebhooksUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.core.model.DataModel --> scurrypy.events.channel_events.WebhooksUpdateEvent
                


              click scurrypy.events.channel_events.WebhooksUpdateEvent href "" "scurrypy.events.channel_events.WebhooksUpdateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a guild's channel webhook is created, updated, or deleted.

dispatch_name = EventType.WEBHOOKS_UPDATE class-attribute instance-attribute

guild_id: Snowflake instance-attribute

ID of the guild.

channel_id: Snowflake instance-attribute

ID of the channel.

Threads


thread_events

ThreadCreateEvent dataclass

Bases: Event, ChannelModel


              flowchart TD
              scurrypy.events.thread_events.ThreadCreateEvent[ThreadCreateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.api.channels.channel.ChannelModel[ChannelModel]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadCreateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.thread_events.ThreadCreateEvent
                                scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
                



              click scurrypy.events.thread_events.ThreadCreateEvent href "" "scurrypy.events.thread_events.ThreadCreateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a thread is created.

dispatch_name = EventType.THREAD_CREATE class-attribute instance-attribute

newly_created: bool instance-attribute

Whether the thread has just been created.

ThreadUpdateEvent dataclass

Bases: Event, ChannelModel


              flowchart TD
              scurrypy.events.thread_events.ThreadUpdateEvent[ThreadUpdateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.api.channels.channel.ChannelModel[ChannelModel]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.thread_events.ThreadUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
                



              click scurrypy.events.thread_events.ThreadUpdateEvent href "" "scurrypy.events.thread_events.ThreadUpdateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a thread is updated.

Note

Not send when last_message_id is changed.

dispatch_name = EventType.THREAD_UPDATE class-attribute instance-attribute

ThreadDeleteEvent dataclass

Bases: Event, DataModel


              flowchart TD
              scurrypy.events.thread_events.ThreadDeleteEvent[ThreadDeleteEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadDeleteEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.core.model.DataModel --> scurrypy.events.thread_events.ThreadDeleteEvent
                


              click scurrypy.events.thread_events.ThreadDeleteEvent href "" "scurrypy.events.thread_events.ThreadDeleteEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a thread is deleted.

dispatch_name = EventType.THREAD_DELETE class-attribute instance-attribute

id: Snowflake instance-attribute

ID of the thread.

guild_id: Snowflake | None instance-attribute

Guild ID of the thread.

parent_id: Snowflake instance-attribute

ID of the parent channel.

type: ChannelType instance-attribute

Type of thread.

ThreadMemberUpdateEvent dataclass

Bases: Event, ThreadMemberModel


              flowchart TD
              scurrypy.events.thread_events.ThreadMemberUpdateEvent[ThreadMemberUpdateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.api.channels.threads.ThreadMemberModel[ThreadMemberModel]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadMemberUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.api.channels.threads.ThreadMemberModel --> scurrypy.events.thread_events.ThreadMemberUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.api.channels.threads.ThreadMemberModel
                



              click scurrypy.events.thread_events.ThreadMemberUpdateEvent href "" "scurrypy.events.thread_events.ThreadMemberUpdateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.api.channels.threads.ThreadMemberModel href "" "scurrypy.api.channels.threads.ThreadMemberModel"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when a thread member for the bot is updated.

dispatch_name = EventType.THREAD_MEMBER_UPDATE class-attribute instance-attribute

guild_id: Snowflake instance-attribute

ID of the guild.

ThreadMembersUpdateEvent dataclass

Bases: Event, DataModel


              flowchart TD
              scurrypy.events.thread_events.ThreadMembersUpdateEvent[ThreadMembersUpdateEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadMembersUpdateEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.core.model.DataModel --> scurrypy.events.thread_events.ThreadMembersUpdateEvent
                


              click scurrypy.events.thread_events.ThreadMembersUpdateEvent href "" "scurrypy.events.thread_events.ThreadMembersUpdateEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when someone is added or removed from a thread.

Important

Without the GUILD_MEMBERS privileged intent, this event only fires if the bot was added or removed from a thread.

dispatch_name = EventType.THREAD_MEMBERS_UPDATE class-attribute instance-attribute

id: Snowflake instance-attribute

ID of the thread.

guild_id: Snowflake instance-attribute

ID of the guild.

member_count: int instance-attribute

Approximate number of members in the thread (max 50).

added_members: list[ThreadMemberModel] | None instance-attribute

Users who were added to the thread

removed_member_ids: list[Snowflake] | None instance-attribute

ID of the users who were removed from the thread.

ThreadListSyncEvent dataclass

Bases: Event, DataModel


              flowchart TD
              scurrypy.events.thread_events.ThreadListSyncEvent[ThreadListSyncEvent]
              scurrypy.events.base_event.Event[Event]
              scurrypy.core.model.DataModel[DataModel]

                              scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadListSyncEvent
                                scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
                

                scurrypy.core.model.DataModel --> scurrypy.events.thread_events.ThreadListSyncEvent
                


              click scurrypy.events.thread_events.ThreadListSyncEvent href "" "scurrypy.events.thread_events.ThreadListSyncEvent"
              click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
              click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
            

Received when the bot gains access to a channel.

dispatch_name = EventType.THREAD_LIST_SYNC class-attribute instance-attribute

guild_id: Snowflake instance-attribute

ID of the guild.

channel_ids: list[Snowflake] | None instance-attribute

Parent channel IDs of the threads being synced.

threads: list[ChannelModel] instance-attribute

Active threads in the given channel that the bot can access.

members: list[ThreadMemberModel] instance-attribute

Thread members from the synced threads that the bot an access.