scouter_types/
http.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Serialize, Deserialize)]
4pub struct JwtToken {
5    pub token: String,
6}
7
8#[derive(Debug, Clone)]
9pub enum RequestType {
10    Get,
11    Post,
12    Put,
13    Delete,
14}
15
16#[derive(Debug, Clone)]
17pub enum Routes {
18    AuthLogin,
19    AuthRefresh,
20    Drift,
21    SpcDrift,
22    PsiDrift,
23    CustomDrift,
24    GenAITaskDrift,
25    GenAIWorkflowDrift,
26    Profile,
27    ProfileStatus,
28    Alerts,
29    DownloadProfile,
30    Healthcheck,
31    Message,
32    PaginatedTraces,
33    TraceBaggage,
34    TraceSpans,
35    RefreshTraceSummary,
36    TraceMetrics,
37    Tags,
38}
39
40impl Routes {
41    pub fn as_str(&self) -> &str {
42        match self {
43            Routes::AuthLogin => "auth/login",
44            Routes::AuthRefresh => "auth/refresh",
45            Routes::Profile => "profile",
46            Routes::Drift => "drift",
47            Routes::SpcDrift => "drift/spc",
48            Routes::PsiDrift => "drift/psi",
49            Routes::CustomDrift => "drift/custom",
50            Routes::GenAITaskDrift => "drift/genai/task",
51            Routes::GenAIWorkflowDrift => "drift/genai/workflow",
52            Routes::ProfileStatus => "profile/status",
53            Routes::DownloadProfile => "profile/download",
54            Routes::Alerts => "alerts",
55            Routes::Healthcheck => "healthcheck",
56            Routes::Message => "message",
57            Routes::PaginatedTraces => "trace/paginated",
58            Routes::TraceBaggage => "trace/baggage",
59            Routes::TraceSpans => "trace/spans",
60            Routes::RefreshTraceSummary => "trace/refresh-summary",
61            Routes::TraceMetrics => "trace/metrics",
62            Routes::Tags => "tags",
63        }
64    }
65}