Skip to main content

systemprompt_api/routes/oauth/endpoints/authorize/
mod.rs

1mod handler;
2mod response_builder;
3mod validation;
4
5pub use handler::{handle_authorize_get, handle_authorize_post};
6
7use serde::{Deserialize, Serialize};
8use systemprompt_identifiers::ClientId;
9
10#[derive(Debug, Deserialize)]
11pub struct AuthorizeQuery {
12    pub response_type: String,
13    pub client_id: ClientId,
14    pub redirect_uri: Option<String>,
15    pub scope: Option<String>,
16    pub state: Option<String>,
17    pub code_challenge: Option<String>,
18    pub code_challenge_method: Option<String>,
19    pub response_mode: Option<String>,
20    pub display: Option<String>,
21    pub prompt: Option<String>,
22    pub max_age: Option<i64>,
23    pub ui_locales: Option<String>,
24    pub resource: Option<String>,
25}
26
27#[derive(Debug, Serialize)]
28pub struct AuthorizeResponse {
29    pub code: Option<String>,
30    pub state: Option<String>,
31    pub error: Option<String>,
32    pub error_description: Option<String>,
33}
34
35#[derive(Debug, Deserialize)]
36pub struct AuthorizeRequest {
37    pub response_type: String,
38    pub client_id: ClientId,
39    pub redirect_uri: Option<String>,
40    pub scope: Option<String>,
41    pub state: Option<String>,
42    pub code_challenge: Option<String>,
43    pub code_challenge_method: Option<String>,
44    pub user_consent: Option<String>,
45    pub username: Option<String>,
46    pub password: Option<String>,
47    pub resource: Option<String>,
48}