diff options
Diffstat (limited to 'src/api/oauth.rs')
| -rw-r--r-- | src/api/oauth.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/api/oauth.rs b/src/api/oauth.rs new file mode 100644 index 0000000..9e0e5c6 --- /dev/null +++ b/src/api/oauth.rs @@ -0,0 +1,24 @@ +use std::collections::HashMap; + +use actix_web::{web, HttpResponse}; +use serde::Deserialize; +use url::Url; +use uuid::Uuid; + +#[derive(Debug, Clone, Copy, PartialEq, Eq, Deserialize)] +#[serde(rename_all = "snake_case")] +enum ResponseType { + Code, + Token, +} + +#[derive(Debug, Clone, Deserialize)] +struct AuthorizationParameters { + response_type: ResponseType, + client_id: Uuid, + redirect_uri: Url, + state: Box<str>, + + #[serde(flatten)] + additional_parameters: HashMap<Box<str>, Box<str>>, +} |
