fastcomments_sdk/client/src/models/
api_error.rs1use crate::client::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ApiError {
16 #[serde(rename = "status")]
17 pub status: models::ApiStatus,
18 #[serde(rename = "reason")]
19 pub reason: String,
20 #[serde(rename = "code")]
21 pub code: String,
22 #[serde(rename = "secondaryCode", skip_serializing_if = "Option::is_none")]
23 pub secondary_code: Option<String>,
24 #[serde(rename = "bannedUntil", skip_serializing_if = "Option::is_none")]
25 pub banned_until: Option<i64>,
26 #[serde(rename = "maxCharacterLength", skip_serializing_if = "Option::is_none")]
27 pub max_character_length: Option<i32>,
28 #[serde(rename = "translatedError", skip_serializing_if = "Option::is_none")]
29 pub translated_error: Option<String>,
30 #[serde(rename = "customConfig", skip_serializing_if = "Option::is_none")]
31 pub custom_config: Option<Box<models::CustomConfigParameters>>,
32}
33
34impl ApiError {
35 pub fn new(status: models::ApiStatus, reason: String, code: String) -> ApiError {
36 ApiError {
37 status,
38 reason,
39 code,
40 secondary_code: None,
41 banned_until: None,
42 max_character_length: None,
43 translated_error: None,
44 custom_config: None,
45 }
46 }
47}
48