1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
#![doc(alias = "vod")] //! Helix endpoints regarding videos //! //! # Examples //! //! ```rust,no_run //! # use twitch_api2::helix::{HelixClient, videos::GetVideosRequest}; //! # #[tokio::main] //! # async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync + 'static>> { //! # let token = twitch_oauth2::AccessToken::new("validtoken".to_string()); //! # let token = twitch_oauth2::UserToken::from_existing(twitch_oauth2::dummy_http_client, token, None, None).await?; //! let client = HelixClient::new(); //! # let _: &HelixClient<twitch_api2::DummyHttpClient> = &client; //! let req = GetVideosRequest::builder() //! .id(vec!["1337".to_string()]) //! .build(); //! //! println!("{:?}", &client.req_get(req, &token).await?.data); //! # Ok(()) //! # } //! ``` use crate::{helix, types}; use serde::{Deserialize, Serialize}; pub mod delete_videos; pub mod get_videos; #[doc(inline)] pub use get_videos::{GetVideosRequest, Video}; /// Sort order of the videos #[derive(PartialEq, Deserialize, Serialize, Clone, Debug)] #[serde(rename_all = "lowercase")] pub enum Sort { /// Sort by time Time, /// Sort by trending Trending, /// Sort by views Views, } /// Period during which the video was created #[derive(PartialEq, Deserialize, Serialize, Clone, Debug)] #[serde(rename_all = "lowercase")] pub enum VideoPeriod { /// Filter by all. Effectively a no-op All, /// Filter by from this day only Day, /// Filter by this week Week, /// Filter by this month Month, } /// Type of video. #[derive(PartialEq, Deserialize, Serialize, Clone, Debug)] #[serde(rename_all = "lowercase")] pub enum VideoTypeFilter { /// All video types All, /// A uploaded video Upload, /// An archived video Archive, /// A highlight Highlight, }