Skip to main content

hanzo_client/models/
screen_result.rs

1/*
2 * Hanzo Cloud API
3 *
4 * 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/.
5 *
6 * The version of the OpenAPI document: v1
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ScreenResult {
16    /// DraftReply is a suggested email reply for staff to edit and send.
17    #[serde(rename = "draftReply", skip_serializing_if = "Option::is_none")]
18    pub draft_reply: Option<String>,
19    /// Error says why a failed screen failed — no AI gateway configured, a gateway error, or a reply that carried no parseable JSON. Absent on success.
20    #[serde(rename = "error", skip_serializing_if = "Option::is_none")]
21    pub error: Option<String>,
22    /// Model is the LLM the screen ran on.
23    #[serde(rename = "model", skip_serializing_if = "Option::is_none")]
24    pub model: Option<String>,
25    /// Score is the model's 0..100 fit score, clamped to that range.
26    #[serde(rename = "score", skip_serializing_if = "Option::is_none")]
27    pub score: Option<i32>,
28    /// ScreenedAt is the unix second the screen finished (0 while pending).
29    #[serde(rename = "screenedAt", skip_serializing_if = "Option::is_none")]
30    pub screened_at: Option<i32>,
31    /// Status is the screen's state: pending | done | failed.
32    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
33    pub status: Option<String>,
34    /// SuggestedCredits is the recommended credit grant in USD, snapped to the nearest allowed rung: 0 | 5000 | 25000 | 50000 | 150000.
35    #[serde(rename = "suggestedCredits", skip_serializing_if = "Option::is_none")]
36    pub suggested_credits: Option<i32>,
37    /// Summary is the model's short assessment of the application.
38    #[serde(rename = "summary", skip_serializing_if = "Option::is_none")]
39    pub summary: Option<String>,
40    /// Tier1Backed is the model's read on tier-1 backing, normalized to \"yes\", \"no\" or \"unclear\" (anything it cannot resolve reads \"unclear\").
41    #[serde(rename = "tier1Backed", skip_serializing_if = "Option::is_none")]
42    pub tier1_backed: Option<String>,
43}
44
45impl ScreenResult {
46    pub fn new() -> ScreenResult {
47        ScreenResult {
48            draft_reply: None,
49            error: None,
50            model: None,
51            score: None,
52            screened_at: None,
53            status: None,
54            suggested_credits: None,
55            summary: None,
56            tier1_backed: None,
57        }
58    }
59}
60