oauth2_linode/
lib.rs

1use oauth2_client::re_exports::{Deserialize_enum_str, Scope, Serialize_enum_str};
2
3pub const TOKEN_URL: &str = "https://login.linode.com/oauth/token";
4pub const AUTHORIZATION_URL: &str = "https://login.linode.com/oauth/authorize";
5
6pub mod authorization_code_grant;
7
8pub use authorization_code_grant::LinodeProviderWithWebApplication;
9
10pub mod extensions;
11pub use extensions::LinodeExtensionsBuilder;
12
13// Ref https://www.linode.com/docs/api/#oauth-reference
14#[derive(Deserialize_enum_str, Serialize_enum_str, Debug, Clone, PartialEq, Eq)]
15pub enum LinodeScope {
16    //
17    #[serde(rename = "account:read_only")]
18    AccountReadOnly,
19    #[serde(rename = "account:read_write")]
20    AccountReadWrite,
21    #[serde(rename = "linodes:read_only")]
22    LinodesReadOnly,
23    #[serde(rename = "linodes:read_write")]
24    LinodesReadWrite,
25    //
26    //
27    //
28    #[serde(other)]
29    Other(String),
30}
31impl Scope for LinodeScope {}