openai-client-base 0.16.0

Auto-generated Rust client for the OpenAI API
/*
 * OpenAI API
 *
 * The OpenAI REST API. Please see https://platform.openai.com/docs/api-reference for more details.
 *
 * The version of the OpenAPI document: 2.3.0
 *
 * Generated by: https://openapi-generator.tech
 */

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

/// SessionTurnErrorCodeResource : Stable public categories for session request failures.
/// Stable public categories for session request failures.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SessionTurnErrorCodeResource {
    #[serde(rename = "context_length_exceeded")]
    ContextLengthExceeded,
    #[serde(rename = "session_budget_exceeded")]
    SessionBudgetExceeded,
    #[serde(rename = "usage_limit_exceeded")]
    UsageLimitExceeded,
    #[serde(rename = "project_spend_limit_exceeded")]
    ProjectSpendLimitExceeded,
    #[serde(rename = "organization_spend_limit_exceeded")]
    OrganizationSpendLimitExceeded,
    #[serde(rename = "organization_usage_limit_exceeded")]
    OrganizationUsageLimitExceeded,
    #[serde(rename = "billing_not_active")]
    BillingNotActive,
    #[serde(rename = "credit_balance_exhausted")]
    CreditBalanceExhausted,
    #[serde(rename = "rate_limit_exceeded")]
    RateLimitExceeded,
    #[serde(rename = "flex_unavailable")]
    FlexUnavailable,
    #[serde(rename = "server_overloaded")]
    ServerOverloaded,
    #[serde(rename = "cyber_policy")]
    CyberPolicy,
    #[serde(rename = "misalignment_policy_violation")]
    MisalignmentPolicyViolation,
    #[serde(rename = "connection_failed")]
    ConnectionFailed,
    #[serde(rename = "server_error")]
    ServerError,
    #[serde(rename = "authentication_error")]
    AuthenticationError,
    #[serde(rename = "invalid_request")]
    InvalidRequest,
    #[serde(rename = "resource_not_found")]
    ResourceNotFound,
    #[serde(rename = "sandbox_error")]
    SandboxError,
    #[serde(rename = "executor_version_incompatible")]
    ExecutorVersionIncompatible,
    #[serde(rename = "active_turn_not_steerable")]
    ActiveTurnNotSteerable,
    #[serde(rename = "request_timeout")]
    RequestTimeout,
    #[serde(rename = "internal_error")]
    InternalError,
}

impl std::fmt::Display for SessionTurnErrorCodeResource {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::ContextLengthExceeded => write!(f, "context_length_exceeded"),
            Self::SessionBudgetExceeded => write!(f, "session_budget_exceeded"),
            Self::UsageLimitExceeded => write!(f, "usage_limit_exceeded"),
            Self::ProjectSpendLimitExceeded => write!(f, "project_spend_limit_exceeded"),
            Self::OrganizationSpendLimitExceeded => write!(f, "organization_spend_limit_exceeded"),
            Self::OrganizationUsageLimitExceeded => write!(f, "organization_usage_limit_exceeded"),
            Self::BillingNotActive => write!(f, "billing_not_active"),
            Self::CreditBalanceExhausted => write!(f, "credit_balance_exhausted"),
            Self::RateLimitExceeded => write!(f, "rate_limit_exceeded"),
            Self::FlexUnavailable => write!(f, "flex_unavailable"),
            Self::ServerOverloaded => write!(f, "server_overloaded"),
            Self::CyberPolicy => write!(f, "cyber_policy"),
            Self::MisalignmentPolicyViolation => write!(f, "misalignment_policy_violation"),
            Self::ConnectionFailed => write!(f, "connection_failed"),
            Self::ServerError => write!(f, "server_error"),
            Self::AuthenticationError => write!(f, "authentication_error"),
            Self::InvalidRequest => write!(f, "invalid_request"),
            Self::ResourceNotFound => write!(f, "resource_not_found"),
            Self::SandboxError => write!(f, "sandbox_error"),
            Self::ExecutorVersionIncompatible => write!(f, "executor_version_incompatible"),
            Self::ActiveTurnNotSteerable => write!(f, "active_turn_not_steerable"),
            Self::RequestTimeout => write!(f, "request_timeout"),
            Self::InternalError => write!(f, "internal_error"),
        }
    }
}

impl Default for SessionTurnErrorCodeResource {
    fn default() -> SessionTurnErrorCodeResource {
        Self::ContextLengthExceeded
    }
}