artifacts/models/
error_schema.rs

1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
5#[cfg_attr(feature = "specta", derive(specta::Type))]
6pub struct ErrorSchema {
7    /// Error code
8    #[serde(rename = "code")]
9    pub code: i32,
10    /// Error message
11    #[serde(rename = "message")]
12    pub message: String,
13    /// Additional error data (used primarily for validation errors)
14    #[serde(rename = "data", skip_serializing_if = "Option::is_none")]
15    #[cfg_attr(feature = "specta", specta(type = Option<specta_util::Unknown>))]
16    pub data: Option<std::collections::HashMap<String, serde_json::Value>>,
17}
18
19impl ErrorSchema {
20    pub fn new(code: i32, message: String) -> ErrorSchema {
21        ErrorSchema {
22            code,
23            message,
24            data: None,
25        }
26    }
27}