[][src]Enum twilight_http::routing::Route

#[non_exhaustive]pub enum Route {
    AddGuildMember {
        guild_id: u64,
        user_id: u64,
    },
    AddMemberRole {
        guild_id: u64,
        role_id: u64,
        user_id: u64,
    },
    CreateBan {
        delete_message_days: Option<u64>,
        guild_id: u64,
        reason: Option<String>,
        user_id: u64,
    },
    CreateChannel {
        guild_id: u64,
    },
    CreateEmoji {
        guild_id: u64,
    },
    CreateGuild,
    CreateGuildIntegration {
        guild_id: u64,
    },
    CreateGuildPrune {
        compute_prune_count: Option<bool>,
        days: Option<u64>,
        guild_id: u64,
        include_roles: Vec<u64>,
    },
    CreateInvite {
        channel_id: u64,
    },
    CreateMessage {
        channel_id: u64,
    },
    CreatePrivateChannel,
    CreateReaction {
        channel_id: u64,
        emoji: String,
        message_id: u64,
    },
    CreateRole {
        guild_id: u64,
    },
    CreateTypingTrigger {
        channel_id: u64,
    },
    CreateWebhook {
        channel_id: u64,
    },
    CrosspostMessage {
        channel_id: u64,
        message_id: u64,
    },
    DeleteBan {
        guild_id: u64,
        user_id: u64,
    },
    DeleteChannel {
        channel_id: u64,
    },
    DeleteEmoji {
        emoji_id: u64,
        guild_id: u64,
    },
    DeleteGuild {
        guild_id: u64,
    },
    DeleteGuildIntegration {
        guild_id: u64,
        integration_id: u64,
    },
    DeleteInvite {
        code: String,
    },
    DeleteMessage {
        channel_id: u64,
        message_id: u64,
    },
    DeleteMessages {
        channel_id: u64,
    },
    DeleteMessageReactions {
        channel_id: u64,
        message_id: u64,
    },
    DeleteMessageSpecficReaction {
        channel_id: u64,
        emoji: String,
        message_id: u64,
    },
    DeletePermissionOverwrite {
        channel_id: u64,
        target_id: u64,
    },
    DeleteReaction {
        channel_id: u64,
        emoji: String,
        message_id: u64,
        user: String,
    },
    DeleteRole {
        guild_id: u64,
        role_id: u64,
    },
    DeleteWebhookMessage {
        message_id: u64,
        token: String,
        webhook_id: u64,
    },
    DeleteWebhook {
        token: Option<String>,
        webhook_id: u64,
    },
    ExecuteWebhook {
        token: String,
        wait: Option<bool>,
        webhook_id: u64,
    },
    FollowNewsChannel {
        channel_id: u64,
    },
    GetAuditLogs {
        action_type: Option<u64>,
        before: Option<u64>,
        guild_id: u64,
        limit: Option<u64>,
        user_id: Option<u64>,
    },
    GetBan {
        guild_id: u64,
        user_id: u64,
    },
    GetBans {
        guild_id: u64,
    },
    GetChannel {
        channel_id: u64,
    },
    GetChannelInvites {
        channel_id: u64,
    },
    GetChannelWebhooks {
        channel_id: u64,
    },
    GetChannels {
        guild_id: u64,
    },
    GetCurrentUserApplicationInfo,
    GetEmoji {
        emoji_id: u64,
        guild_id: u64,
    },
    GetEmojis {
        guild_id: u64,
    },
    GetGateway,
    GetGatewayBot,
    GetGuild {
        guild_id: u64,
        with_counts: bool,
    },
    GetGuildWidget {
        guild_id: u64,
    },
    GetGuildIntegrations {
        guild_id: u64,
    },
    GetGuildInvites {
        guild_id: u64,
    },
    GetGuildMembers {
        after: Option<u64>,
        guild_id: u64,
        limit: Option<u64>,
        presences: Option<bool>,
    },
    GetGuildPreview {
        guild_id: u64,
    },
    GetGuildPruneCount {
        days: Option<u64>,
        guild_id: u64,
        include_roles: Vec<u64>,
    },
    GetGuildRoles {
        guild_id: u64,
    },
    GetGuildVanityUrl {
        guild_id: u64,
    },
    GetGuildVoiceRegions {
        guild_id: u64,
    },
    GetGuildWebhooks {
        guild_id: u64,
    },
    GetGuilds {
        after: Option<u64>,
        before: Option<u64>,
        limit: Option<u64>,
    },
    GetInvite {
        code: String,
        with_counts: bool,
    },
    GetMember {
        guild_id: u64,
        user_id: u64,
    },
    GetMessage {
        channel_id: u64,
        message_id: u64,
    },
    GetMessages {
        after: Option<u64>,
        around: Option<u64>,
        before: Option<u64>,
        channel_id: u64,
        limit: Option<u64>,
    },
    GetPins {
        channel_id: u64,
    },
    GetReactionUsers {
        after: Option<u64>,
        before: Option<u64>,
        channel_id: u64,
        emoji: String,
        limit: Option<u64>,
        message_id: u64,
    },
    GetUser {
        target_user: String,
    },
    GetUserConnections,
    GetUserPrivateChannels,
    GetVoiceRegions,
    GetWebhook {
        token: Option<String>,
        webhook_id: u64,
    },
    LeaveGuild {
        guild_id: u64,
    },
    PinMessage {
        channel_id: u64,
        message_id: u64,
    },
    RemoveMember {
        guild_id: u64,
        user_id: u64,
    },
    RemoveMemberRole {
        guild_id: u64,
        role_id: u64,
        user_id: u64,
    },
    SyncGuildIntegration {
        guild_id: u64,
        integration_id: u64,
    },
    UnpinMessage {
        channel_id: u64,
        message_id: u64,
    },
    UpdateChannel {
        channel_id: u64,
    },
    UpdateCurrentUser,
    UpdateEmoji {
        emoji_id: u64,
        guild_id: u64,
    },
    UpdateGuild {
        guild_id: u64,
    },
    UpdateGuildChannels {
        guild_id: u64,
    },
    UpdateGuildWidget {
        guild_id: u64,
    },
    UpdateGuildIntegration {
        guild_id: u64,
        integration_id: u64,
    },
    UpdateMember {
        guild_id: u64,
        user_id: u64,
    },
    UpdateMessage {
        channel_id: u64,
        message_id: u64,
    },
    UpdateNickname {
        guild_id: u64,
    },
    UpdatePermissionOverwrite {
        channel_id: u64,
        target_id: u64,
    },
    UpdateRole {
        guild_id: u64,
        role_id: u64,
    },
    UpdateRolePositions {
        guild_id: u64,
    },
    UpdateWebhookMessage {
        message_id: u64,
        token: String,
        webhook_id: u64,
    },
    UpdateWebhook {
        token: Option<String>,
        webhook_id: u64,
    },
}

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
AddGuildMember

Route information to add a user to a guild.

Fields of AddGuildMember

guild_id: u64user_id: u64
AddMemberRole

Route information to add a role to guild member.

Fields of AddMemberRole

guild_id: u64

The ID of the guild.

role_id: u64

The ID of the role.

user_id: u64

The ID of the user.

CreateBan

Route information to create a ban on a user in a guild.

Fields of CreateBan

delete_message_days: Option<u64>

The number of days' worth of the user's messages to delete in the guild's channels.

guild_id: u64

The ID of the guild.

reason: Option<String>

The reason for the ban.

user_id: u64

The ID of the user.

CreateChannel

Route information to create a channel in a guild.

Fields of CreateChannel

guild_id: u64

The ID of the guild.

CreateEmoji

Route information to create an emoji in a guild.

Fields of CreateEmoji

guild_id: u64

The ID of the guild.

CreateGuild

Route information to create a guild.

CreateGuildIntegration

Route information to create a guild's integration.

Fields of CreateGuildIntegration

guild_id: u64

The ID of the guild.

CreateGuildPrune

Route information to create a prune in a guild.

Fields of CreateGuildPrune

compute_prune_count: Option<bool>

Whether to compute the number of pruned users.

days: Option<u64>

The number of days that a user must be offline before being able to be pruned.

guild_id: u64

The ID of the guild.

include_roles: Vec<u64>

The roles to filter the prune by.

A user must have at least one of these roles to be able to be pruned.

CreateInvite

Route information to create an invite to a channel.

Fields of CreateInvite

channel_id: u64

The ID of the channel.

CreateMessage

Route information to create a message in a channel.

Fields of CreateMessage

channel_id: u64

The ID of the channel.

CreatePrivateChannel

Route information to create a private channel.

CreateReaction

Route information to create a reaction on a message.

Fields of CreateReaction

channel_id: u64

The ID of the channel.

emoji: String

The URI encoded custom or unicode emoji.

message_id: u64

The ID of the message.

CreateRole

Route information to create a role in a guild.

Fields of CreateRole

guild_id: u64

The ID of the guild.

CreateTypingTrigger

Route information to create a typing trigger in a channel.

Fields of CreateTypingTrigger

channel_id: u64

The ID of the channel.

CreateWebhook

Route information to create a webhook in a channel.

Fields of CreateWebhook

channel_id: u64

The ID of the channel.

CrosspostMessage

Route information to crosspost a message to following guilds.

Fields of CrosspostMessage

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

DeleteBan

Route information to delete a ban on a user in a guild.

Fields of DeleteBan

guild_id: u64

The ID of the guild.

user_id: u64

The ID of the user.

DeleteChannel

Route information to delete a channel.

Fields of DeleteChannel

channel_id: u64

The ID of the channel.

DeleteEmoji

Route information to delete a guild's custom emoji.

Fields of DeleteEmoji

emoji_id: u64

The ID of the emoji.

guild_id: u64

The ID of the guild.

DeleteGuild

Route information to delete a guild.

Fields of DeleteGuild

guild_id: u64

The ID of the guild.

DeleteGuildIntegration

Route information to delete a guild integration.

Fields of DeleteGuildIntegration

guild_id: u64

The ID of the guild.

integration_id: u64

The ID of the integration.

DeleteInvite

Route information to delete an invite.

Fields of DeleteInvite

code: String

The unique invite code.

DeleteMessage

Route information to delete a channel's message.

Fields of DeleteMessage

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

DeleteMessages

Route information to bulk delete messages in a channel.

Fields of DeleteMessages

channel_id: u64

The ID of the channel.

DeleteMessageReactions

Route information to delete all of the reactions on a message.

Fields of DeleteMessageReactions

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

DeleteMessageSpecficReaction

Route information to delete all of the reactions on a message with a specific emoji.

Fields of DeleteMessageSpecficReaction

channel_id: u64

The ID of the channel.

emoji: String

The URI encoded custom or unicode emoji.

message_id: u64

The ID of the message.

DeletePermissionOverwrite

Route information to delete a permission overwrite for a role or user in a channel.

Fields of DeletePermissionOverwrite

channel_id: u64

The ID of the channel.

target_id: u64

The ID of the target role or user.

DeleteReaction

Route information to delete a user's reaction on a message.

Fields of DeleteReaction

channel_id: u64

The ID of the channel.

emoji: String

The URI encoded custom or unicode emoji.

message_id: u64

The ID of the message.

user: String

The ID of the user. This can be @me to specify the current user.

DeleteRole

Route information to delete a guild's role.

Fields of DeleteRole

guild_id: u64

The ID of the guild.

role_id: u64

The ID of the role.

DeleteWebhookMessage

Route information to delete a message created by a webhook.

Fields of DeleteWebhookMessage

message_id: u64token: Stringwebhook_id: u64
DeleteWebhook

Route information to delete a webhook.

Fields of DeleteWebhook

token: Option<String>

The token of the webhook.

webhook_id: u64

The ID of the webhook.

ExecuteWebhook

Route information to execute a webhook by ID and token.

Fields of ExecuteWebhook

token: String

The token of the webhook.

wait: Option<bool>

Whether to wait for a message response.

webhook_id: u64

The ID of the webhook.

FollowNewsChannel

Route information to follow a news channel.

Fields of FollowNewsChannel

channel_id: u64

The ID of the channel to follow.

GetAuditLogs

Route information to get a paginated list of audit logs in a guild.

Fields of GetAuditLogs

action_type: Option<u64>

The type of action to get audit logs for.

before: Option<u64>

The maximum ID of audit logs to get.

guild_id: u64

The ID of the guild.

limit: Option<u64>

The maximum number of audit logs to get.

user_id: Option<u64>

The ID of the user, if specified.

GetBan

Route information to get information about a single ban in a guild.

Fields of GetBan

guild_id: u64

The ID of the guild.

user_id: u64

The ID of the user.

GetBans

Route information to get a guild's bans.

Fields of GetBans

guild_id: u64

The ID of the guild.

GetChannel

Route information to get a channel.

Fields of GetChannel

channel_id: u64

The ID of the channel.

GetChannelInvites

Route information to get a channel's invites.

Fields of GetChannelInvites

channel_id: u64

The ID of the channel.

GetChannelWebhooks

Route information to get a channel's webhooks.

Fields of GetChannelWebhooks

channel_id: u64

The ID of the channel.

GetChannels

Route information to get a guild's channels.

Fields of GetChannels

guild_id: u64

The ID of the guild.

GetCurrentUserApplicationInfo

Route information to get info about application the current bot user belongs to

GetEmoji

Route information to get an emoji by ID within a guild.

Fields of GetEmoji

emoji_id: u64

The ID of the emoji.

guild_id: u64

The ID of the guild.

GetEmojis

Route information to get a guild's emojis.

Fields of GetEmojis

guild_id: u64

The ID of the guild.

GetGateway

Route information to get basic gateway information.

GetGatewayBot

Route information to get gateway information tailored to the current user.

GetGuild

Route information to get a guild.

Fields of GetGuild

guild_id: u64

The ID of the guild.

with_counts: bool

Whether to include approximate member and presence counts for the guild.

GetGuildWidget

Route information to get a guild's widget.

Fields of GetGuildWidget

guild_id: u64

The ID of the guild.

GetGuildIntegrations

Route information to get a guild's integrations.

Fields of GetGuildIntegrations

guild_id: u64

The ID of the guild.

GetGuildInvites

Route information to get a guild's invites.

Fields of GetGuildInvites

guild_id: u64

The ID of the guild.

GetGuildMembers

Route information to get a guild's members.

Fields of GetGuildMembers

after: Option<u64>

The minimum ID of members to get.

guild_id: u64

The ID of the guild.

limit: Option<u64>

The maximum number of members to get.

presences: Option<bool>

Whether to get the members' presences.

GetGuildPreview

Route information to get a guild's preview.

Fields of GetGuildPreview

guild_id: u64

The ID of the guild.

GetGuildPruneCount

Route information to get the number of members that would be pruned, filtering by inactivity and users with one of the provided roles.

Fields of GetGuildPruneCount

days: Option<u64>

The number of days that a user must be offline before being able to be pruned.

guild_id: u64

The ID of the guild.

include_roles: Vec<u64>

The roles to filter the prune by.

A user must have at least one of these roles to be able to be pruned.

GetGuildRoles

Route information to get a guild's roles.

Fields of GetGuildRoles

guild_id: u64

The ID of the guild.

GetGuildVanityUrl

Route information to get a guild's vanity URL.

Fields of GetGuildVanityUrl

guild_id: u64

The ID of the guild.

GetGuildVoiceRegions

Route information to get a guild's available voice regions.

Fields of GetGuildVoiceRegions

guild_id: u64

The ID of the guild.

GetGuildWebhooks

Route information to get a guild's webhooks.

Fields of GetGuildWebhooks

guild_id: u64

The ID of the guild.

GetGuilds

Route information to get a paginated list of guilds.

Fields of GetGuilds

after: Option<u64>

The minimum ID of guilds to get.

before: Option<u64>

The maximum ID of guilds to get.

limit: Option<u64>

The maximum number of guilds to get.

GetInvite

Route information to get an invite.

Fields of GetInvite

code: String

The unique invite code.

with_counts: bool

Whether to retrieve statistics about the invite.

GetMember

Route information to get a member.

Fields of GetMember

guild_id: u64

The ID of the guild.

user_id: u64

The ID of the user.

GetMessage

Route information to get a single message in a channel.

Fields of GetMessage

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

GetMessages

Route information to get a paginated list of messages in a channel.

Fields of GetMessages

after: Option<u64>

The minimum ID of messages to get.

around: Option<u64>

The message ID to get the messages around.

before: Option<u64>

The maximum ID of messages to get.

channel_id: u64

The ID of the channel.

limit: Option<u64>

The maximum number of messages to get.

GetPins

Route information to get a channel's pins.

Fields of GetPins

channel_id: u64

The ID of the channel.

GetReactionUsers

Route information to get the users who reacted to a message with a specified emoji.

Fields of GetReactionUsers

after: Option<u64>

The minimum ID of users to get.

before: Option<u64>

The maximum ID of users to get.

channel_id: u64

The ID of the channel.

emoji: String

The URI encoded custom or unicode emoji.

limit: Option<u64>

The maximum number of users to retrieve.

message_id: u64

The ID of the message.

GetUser

Route information to get the current user.

Fields of GetUser

target_user: String

The ID of the target user. This can be @me to specify the current user.

GetUserConnections

Route information to get the current user's connections.

GetUserPrivateChannels

Route information to get the current user's private channels and groups.

GetVoiceRegions

Route information to get a list of the voice regions.

GetWebhook

Route information to get a webhook by ID, optionally with a token if the current user doesn't have access to it.

Fields of GetWebhook

token: Option<String>

The token of the webhook.

webhook_id: u64

The ID of the webhook.

LeaveGuild

Route information to leave the guild.

Fields of LeaveGuild

guild_id: u64

The ID of the guild.

PinMessage

Route information to pin a message to a channel.

Fields of PinMessage

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

RemoveMember

Route information to remove a member from a guild.

Fields of RemoveMember

guild_id: u64

The ID of the guild.

user_id: u64

The ID of the user.

RemoveMemberRole

Route information to remove a role from a member.

Fields of RemoveMemberRole

guild_id: u64

The ID of the guild.

role_id: u64

The ID of the role.

user_id: u64

The ID of the user.

SyncGuildIntegration

Route information to sync a guild's integration.

Fields of SyncGuildIntegration

guild_id: u64

The ID of the guild.

integration_id: u64

The ID of the integration.

UnpinMessage

Route information to unpin a message from a channel.

Fields of UnpinMessage

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

UpdateChannel

Route information to update a channel, such as a guild channel or group.

Fields of UpdateChannel

channel_id: u64

The ID of the channel.

UpdateCurrentUser

Route information to update the current user.

UpdateEmoji

Route information to update an emoji.

Fields of UpdateEmoji

emoji_id: u64

The ID of the emoji.

guild_id: u64

The ID of the guild.

UpdateGuild

Route information to update a guild.

Fields of UpdateGuild

guild_id: u64

The ID of the guild.

UpdateGuildChannels

Route information to update a guild channel.

Fields of UpdateGuildChannels

guild_id: u64

The ID of the guild.

UpdateGuildWidget

Route information to update a guild's widget.

Fields of UpdateGuildWidget

guild_id: u64

The ID of the guild.

UpdateGuildIntegration

Route information to update a guild's integration.

Fields of UpdateGuildIntegration

guild_id: u64

The ID of the guild.

integration_id: u64

The ID of the integration.

UpdateMember

Route information to update a member.

Fields of UpdateMember

guild_id: u64

The ID of the guild.

user_id: u64

The ID of the user.

UpdateMessage

Route information to update a message.

Fields of UpdateMessage

channel_id: u64

The ID of the channel.

message_id: u64

The ID of the message.

UpdateNickname

Route information to update the current member's nickname.

Fields of UpdateNickname

guild_id: u64

The ID of the guild.

UpdatePermissionOverwrite

Route information to update the permission overwrite of a role or user in a channel.

Fields of UpdatePermissionOverwrite

channel_id: u64

The ID of the channel.

target_id: u64

The ID of the role or user.

UpdateRole

Route information to update a role.

Fields of UpdateRole

guild_id: u64

The ID of the guild.

role_id: u64

The ID of the role.

UpdateRolePositions

Route information to update the positions of roles.

Fields of UpdateRolePositions

guild_id: u64

The ID of the guild.

UpdateWebhookMessage

Route information to update a message created by a webhook.

Fields of UpdateWebhookMessage

message_id: u64token: Stringwebhook_id: u64
UpdateWebhook

Route information to update a webhook.

Fields of UpdateWebhook

token: Option<String>

The token of the webhook.

webhook_id: u64

The ID of the webhook.

Implementations

impl Route[src]

pub fn into_parts(self) -> (Method, Path, Cow<'static, str>)[src]

Separate a route into its parts: the HTTP method, the path enum to use for ratelimit buckets, and the URI path.

The method and URI path are useful for actually performing requests, while the returned path enum is useful for ratelimiting.

Trait Implementations

impl Clone for Route[src]

impl Debug for Route[src]

impl From<Route> for Request[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.