Struct google_youtube3::YouTube [] [src]

pub struct YouTube<C, A> { /* fields omitted */ }

Central instance to access all YouTube related resource activities


Instantiate a new hub

extern crate hyper;
extern crate hyper_rustls;
extern crate yup_oauth2 as oauth2;
extern crate google_youtube3 as youtube3;
use youtube3::{Result, Error};
use std::default::Default;
use oauth2::{Authenticator, DefaultAuthenticatorDelegate, ApplicationSecret, MemoryStorage};
use youtube3::YouTube;
// Get an ApplicationSecret instance by some means. It contains the `client_id` and 
// `client_secret`, among other things.
let secret: ApplicationSecret = Default::default();
// Instantiate the authenticator. It will choose a suitable authentication flow for you, 
// unless you replace  `None` with the desired Flow.
// Provide your own `AuthenticatorDelegate` to adjust the way it operates and get feedback about 
// what's going on. You probably want to bring in your own `TokenStorage` to persist tokens and
// retrieve them from storage.
let auth = Authenticator::new(&secret, DefaultAuthenticatorDelegate,
                              <MemoryStorage as Default>::default(), None);
let mut hub = YouTube::new(hyper::Client::with_connector(hyper::net::HttpsConnector::new(hyper_rustls::TlsClient::new())), auth);
// You can configure optional parameters by calling the respective setters at will, and
// execute the final call using `doit()`.
// Values shown here are possibly random and not representative !
let result = hub.videos().list("part")
match result {
    Err(e) => match e {
        // The Error enum provides details about what exactly happened.
        // You can also just use its `Debug`, `Display` or `Error` traits
        |Error::UploadSizeLimitExceeded(_, _)
        |Error::JsonDecodeError(_, _) => println!("{}", e),
    Ok(res) => println!("Success: {:?}", res),


impl<'a, C, A> YouTube<C, A> where
    C: BorrowMut<Client>,
    A: GetToken

Set the user-agent header field to use in all requests to the server. It defaults to google-api-rust-client/1.0.5.

Returns the previously set user-agent.

Set the base url to use in all requests to the server. It defaults to

Returns the previously set base url.

Set the root url to use in all requests to the server. It defaults to

Returns the previously set root url.

Trait Implementations

impl<'a, C, A> Hub for YouTube<C, A>