Trait twitch_api2::helix::Request
source · [−]pub trait Request: Serialize {
type Response: DeserializeOwned + PartialEq;
const PATH: &'static str;
const SCOPE: &'static [Scope];
const OPT_SCOPE: &'static [Scope] = &[];
fn query(&self) -> Result<String, SerializeError> { ... }
fn get_uri(&self) -> Result<Uri, InvalidUri> { ... }
fn get_bare_uri() -> Result<Uri, InvalidUri> { ... }
}
Available on crate feature
helix
only.Expand description
A request is a Twitch endpoint, see New Twitch API reference
Required Associated Types
type Response: DeserializeOwned + PartialEq
type Response: DeserializeOwned + PartialEq
Response type. twitch’s response will deserialize to this.
Required Associated Constants
The path to the endpoint relative to the helix root. eg. channels
for Get Channel Information
const SCOPE: &'static [Scope]
const SCOPE: &'static [Scope]
Available on crate feature
twitch_oauth2
only.Scopes needed by this endpoint
Provided Associated Constants
const OPT_SCOPE: &'static [Scope] = &[]
const OPT_SCOPE: &'static [Scope] = &[]
Available on crate feature
twitch_oauth2
only.Optional scopes needed by this endpoint
Provided Methods
fn query(&self) -> Result<String, SerializeError>
fn query(&self) -> Result<String, SerializeError>
Defines layout of the url parameters.
fn get_uri(&self) -> Result<Uri, InvalidUri>
fn get_uri(&self) -> Result<Uri, InvalidUri>
Returns full URI for the request, including query parameters.
fn get_bare_uri() -> Result<Uri, InvalidUri>
fn get_bare_uri() -> Result<Uri, InvalidUri>
Returns bare URI for the request, NOT including query parameters.
Implementors
sourceimpl Request for GetBitsLeaderboardRequest
impl Request for GetBitsLeaderboardRequest
type Response = BitsLeaderboard
const PATH: &'static str = "bits/leaderboard"
const SCOPE: &'static [Scope] = &[]
sourceimpl Request for GetCheermotesRequest
impl Request for GetCheermotesRequest
sourceimpl Request for GetChannelEditorsRequest
impl Request for GetChannelEditorsRequest
sourceimpl Request for ModifyChannelInformationRequest
impl Request for ModifyChannelInformationRequest
type Response = ModifyChannelInformation
const PATH: &'static str = "channels"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::UserEditBroadcast]
sourceimpl Request for StartCommercialRequest
impl Request for StartCommercialRequest
sourceimpl Request for GetChannelChatBadgesRequest
impl Request for GetChannelChatBadgesRequest
sourceimpl Request for GetChannelEmotesRequest
impl Request for GetChannelEmotesRequest
sourceimpl Request for GetEmoteSetsRequest
impl Request for GetEmoteSetsRequest
sourceimpl Request for GetGlobalChatBadgesRequest
impl Request for GetGlobalChatBadgesRequest
sourceimpl Request for GetGlobalEmotesRequest
impl Request for GetGlobalEmotesRequest
sourceimpl Request for UpdateChatSettingsRequest
impl Request for UpdateChatSettingsRequest
type Response = ChatSettings
const PATH: &'static str = "chat/settings"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ModeratorManageChatSettings]
sourceimpl Request for GetClipsRequest
impl Request for GetClipsRequest
sourceimpl Request for DeleteEventSubSubscriptionRequest
Available on crate feature eventsub
only.
impl Request for DeleteEventSubSubscriptionRequest
Available on crate feature
eventsub
only.type Response = DeleteEventSubSubscription
const PATH: &'static str = "eventsub/subscriptions"
const SCOPE: &'static [Scope] = &[]
sourceimpl Request for GetEventSubSubscriptionsRequest
Available on crate feature eventsub
only.
impl Request for GetEventSubSubscriptionsRequest
Available on crate feature
eventsub
only.type Response = EventSubSubscriptions
const PATH: &'static str = "eventsub/subscriptions"
const SCOPE: &'static [Scope] = &[]
sourceimpl Request for GetGamesRequest
impl Request for GetGamesRequest
sourceimpl Request for GetTopGamesRequest
impl Request for GetTopGamesRequest
sourceimpl Request for GetCreatorGoalsRequest
impl Request for GetCreatorGoalsRequest
sourceimpl Request for GetHypeTrainEventsRequest
impl Request for GetHypeTrainEventsRequest
sourceimpl Request for AddBlockedTermRequest
impl Request for AddBlockedTermRequest
sourceimpl Request for BanUserRequest
impl Request for BanUserRequest
sourceimpl Request for CheckAutoModStatusRequest
impl Request for CheckAutoModStatusRequest
sourceimpl Request for GetBannedUsersRequest
impl Request for GetBannedUsersRequest
sourceimpl Request for GetBlockedTerms
impl Request for GetBlockedTerms
sourceimpl Request for GetModeratorsRequest
impl Request for GetModeratorsRequest
sourceimpl Request for ManageHeldAutoModMessagesRequest
impl Request for ManageHeldAutoModMessagesRequest
type Response = ManageHeldAutoModMessages
const PATH: &'static str = "moderation/automod/message"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ModerationRead]
sourceimpl Request for RemoveBlockedTermRequest
impl Request for RemoveBlockedTermRequest
type Response = RemoveBlockedTerm
const OPT_SCOPE: &'static [Scope] = &[]
const PATH: &'static str = "moderation/blocked_terms"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ModeratorManageBlockedTerms]
sourceimpl Request for UnbanUserRequest
impl Request for UnbanUserRequest
type Response = UnbanUserResponse
const PATH: &'static str = "moderation/bans"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ModeratorManageBannedUsers]
sourceimpl Request for CreateCustomRewardRequest
impl Request for CreateCustomRewardRequest
type Response = CustomReward
const PATH: &'static str = "channel_points/custom_rewards"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageRedemptions]
sourceimpl Request for DeleteCustomRewardRequest
impl Request for DeleteCustomRewardRequest
type Response = DeleteCustomReward
const PATH: &'static str = "channel_points/custom_rewards"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageRedemptions]
sourceimpl Request for GetCustomRewardRequest
impl Request for GetCustomRewardRequest
sourceimpl Request for UpdateCustomRewardRequest
impl Request for UpdateCustomRewardRequest
type Response = UpdateCustomReward
const PATH: &'static str = "channel_points/custom_rewards"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageRedemptions]
sourceimpl Request for UpdateRedemptionStatusRequest
impl Request for UpdateRedemptionStatusRequest
type Response = UpdateRedemptionStatusInformation
const PATH: &'static str = "channel_points/custom_rewards/redemptions"
const SCOPE: &'static [Scope] = &[twitch_oauth2::scopes::Scope::ChannelManageBroadcast]
sourceimpl Request for CreatePollRequest
impl Request for CreatePollRequest
sourceimpl Request for EndPollRequest
impl Request for EndPollRequest
sourceimpl Request for GetPollsRequest
impl Request for GetPollsRequest
sourceimpl Request for CreatePredictionRequest
impl Request for CreatePredictionRequest
type Response = Prediction
const PATH: &'static str = "predictions"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManagePredictions]
sourceimpl Request for EndPredictionRequest
impl Request for EndPredictionRequest
type Response = EndPrediction
const PATH: &'static str = "predictions"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManagePredictions]
sourceimpl Request for GetPredictionsRequest
impl Request for GetPredictionsRequest
sourceimpl Request for CreateChannelStreamScheduleSegmentRequest
impl Request for CreateChannelStreamScheduleSegmentRequest
type Response = ScheduledBroadcasts
const PATH: &'static str = "schedule/segment"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageSchedule]
sourceimpl Request for GetChannelStreamScheduleRequest
impl Request for GetChannelStreamScheduleRequest
type Response = ScheduledBroadcasts
const PATH: &'static str = "schedule"
const SCOPE: &'static [Scope] = &[]
sourceimpl Request for UpdateChannelStreamScheduleRequest
impl Request for UpdateChannelStreamScheduleRequest
type Response = UpdateChannelStreamSchedule
const PATH: &'static str = "schedule/settings"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageSchedule]
sourceimpl Request for UpdateChannelStreamScheduleSegmentRequest
impl Request for UpdateChannelStreamScheduleSegmentRequest
type Response = ScheduledBroadcasts
const PATH: &'static str = "schedule/segment"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageSchedule]
sourceimpl Request for SearchCategoriesRequest
impl Request for SearchCategoriesRequest
sourceimpl Request for SearchChannelsRequest
impl Request for SearchChannelsRequest
sourceimpl Request for GetFollowedStreamsRequest
impl Request for GetFollowedStreamsRequest
sourceimpl Request for GetStreamTagsRequest
impl Request for GetStreamTagsRequest
sourceimpl Request for GetStreamsRequest
impl Request for GetStreamsRequest
sourceimpl Request for ReplaceStreamTagsRequest
impl Request for ReplaceStreamTagsRequest
type Response = ReplaceStreamTags
const PATH: &'static str = "streams/tags"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageBroadcast]
sourceimpl Request for CheckUserSubscriptionRequest
impl Request for CheckUserSubscriptionRequest
type Response = UserSubscription
const PATH: &'static str = "subscriptions/user"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::UserReadSubscriptions]
sourceimpl Request for GetAllStreamTagsRequest
impl Request for GetAllStreamTagsRequest
sourceimpl Request for GetChannelTeamsRequest
impl Request for GetChannelTeamsRequest
sourceimpl Request for GetTeamsRequest
impl Request for GetTeamsRequest
sourceimpl Request for BlockUserRequest
impl Request for BlockUserRequest
sourceimpl Request for GetUserBlockListRequest
impl Request for GetUserBlockListRequest
sourceimpl Request for GetUsersRequest
impl Request for GetUsersRequest
sourceimpl Request for GetUsersFollowsRequest
impl Request for GetUsersFollowsRequest
type Response = UsersFollows
const OPT_SCOPE: &'static [Scope] = &[]
const PATH: &'static str = "users/follows"
const SCOPE: &'static [Scope] = &[]
sourceimpl Request for UnblockUserRequest
impl Request for UnblockUserRequest
type Response = UnblockUser
const OPT_SCOPE: &'static [Scope] = &[]
const PATH: &'static str = "users/blocks"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::UserManageBlockedUsers]
sourceimpl Request for DeleteVideosRequest
impl Request for DeleteVideosRequest
type Response = DeleteVideo
const PATH: &'static str = "videos"
const SCOPE: &'static [Scope] = &[twitch_oauth2::Scope::ChannelManageVideos]
sourceimpl Request for GetVideosRequest
impl Request for GetVideosRequest
sourceimpl<E: EventSubscription> Request for CreateEventSubSubscriptionRequest<E>
Available on crate feature eventsub
only.
impl<E: EventSubscription> Request for CreateEventSubSubscriptionRequest<E>
Available on crate feature
eventsub
only.