hanzo-client 8.5.156

Generated client for the Hanzo API — every service, one crate.
Documentation
/*
 * Hanzo Cloud API
 *
 * The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SessionDetail {
    #[serde(rename = "account", skip_serializing_if = "Option::is_none")]
    pub account: Option<String>,
    #[serde(rename = "actor", skip_serializing_if = "Option::is_none")]
    pub actor: Option<String>,
    #[serde(rename = "agent", skip_serializing_if = "Option::is_none")]
    pub agent: Option<String>,
    /// Children is the session's DIRECT children, one level down, each with its own counts. The promoted `children` integer beside it is how many there are; this is who they are. For the whole subtree, read the tree.
    #[serde(rename = "childSessions", skip_serializing_if = "Option::is_none")]
    pub child_sessions: Option<Vec<models::SessionView>>,
    #[serde(rename = "children", skip_serializing_if = "Option::is_none")]
    pub children: Option<i32>,
    #[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
    pub created_at: Option<String>,
    #[serde(rename = "cwd", skip_serializing_if = "Option::is_none")]
    pub cwd: Option<String>,
    #[serde(rename = "endedAt", skip_serializing_if = "Option::is_none")]
    pub ended_at: Option<String>,
    #[serde(rename = "events", skip_serializing_if = "Option::is_none")]
    pub events: Option<i32>,
    #[serde(rename = "host", skip_serializing_if = "Option::is_none")]
    pub host: Option<String>,
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    #[serde(rename = "lastEvent", skip_serializing_if = "Option::is_none")]
    pub last_event: Option<Box<models::LastEventView>>,
    #[serde(rename = "org", skip_serializing_if = "Option::is_none")]
    pub org: Option<String>,
    #[serde(rename = "parentSessionId", skip_serializing_if = "Option::is_none")]
    pub parent_session_id: Option<String>,
    #[serde(rename = "progress", skip_serializing_if = "Option::is_none")]
    pub progress: Option<Box<models::SessionProgress>>,
    #[serde(rename = "project", skip_serializing_if = "Option::is_none")]
    pub project: Option<String>,
    #[serde(rename = "provider", skip_serializing_if = "Option::is_none")]
    pub provider: Option<String>,
    #[serde(rename = "published", skip_serializing_if = "Option::is_none")]
    pub published: Option<bool>,
    /// RecentEvents is the 50 most recent turns, OLDEST of those first — a transcript to read down, not a feed. The promoted `events` integer says how many the log holds in total; page the rest from a seq.
    #[serde(rename = "recentEvents", skip_serializing_if = "Option::is_none")]
    pub recent_events: Option<Vec<models::EventView>>,
    #[serde(rename = "repo", skip_serializing_if = "Option::is_none")]
    pub repo: Option<String>,
    #[serde(rename = "room", skip_serializing_if = "Option::is_none")]
    pub room: Option<String>,
    #[serde(rename = "rootSessionId", skip_serializing_if = "Option::is_none")]
    pub root_session_id: Option<String>,
    #[serde(rename = "startedAt", skip_serializing_if = "Option::is_none")]
    pub started_at: Option<String>,
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<String>,
    #[serde(rename = "target", skip_serializing_if = "Option::is_none")]
    pub target: Option<String>,
    #[serde(rename = "taskRunId", skip_serializing_if = "Option::is_none")]
    pub task_run_id: Option<String>,
    #[serde(rename = "taskWorkflowId", skip_serializing_if = "Option::is_none")]
    pub task_workflow_id: Option<String>,
    #[serde(rename = "terminal", skip_serializing_if = "Option::is_none")]
    pub terminal: Option<String>,
    #[serde(rename = "title", skip_serializing_if = "Option::is_none")]
    pub title: Option<String>,
    #[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
    pub updated_at: Option<String>,
}

impl SessionDetail {
    pub fn new() -> SessionDetail {
        SessionDetail {
            account: None,
            actor: None,
            agent: None,
            child_sessions: None,
            children: None,
            created_at: None,
            cwd: None,
            ended_at: None,
            events: None,
            host: None,
            id: None,
            last_event: None,
            org: None,
            parent_session_id: None,
            progress: None,
            project: None,
            provider: None,
            published: None,
            recent_events: None,
            repo: None,
            room: None,
            root_session_id: None,
            started_at: None,
            status: None,
            target: None,
            task_run_id: None,
            task_workflow_id: None,
            terminal: None,
            title: None,
            updated_at: None,
        }
    }
}