1use serde::{Deserialize, Serialize};
10
11#[derive(Clone, Debug, Serialize, Deserialize)]
12#[non_exhaustive]
13pub struct SquareResponse {
18 #[serde(flatten)]
19 pub response: Option<crate::objects::Response>,
20 #[serde(flatten)]
21 pub opt_response01: Option<crate::objects::Response>,
22 #[serde(flatten)]
23 pub opt_response02: Option<crate::objects::Response>,
24 #[serde(flatten)]
25 pub opt_response03: Option<crate::objects::Response>,
26 #[serde(default)]
27 pub errors: Option<Vec<ResponseError>>,
28 #[serde(default)]
29 pub cursor: Option<String>,
30 #[serde(default)]
31 pub id_mapping: Option<Vec<(String, String)>>,
32 #[serde(default)]
33 pub id: Option<String>,
34 #[serde(default)]
35 pub cancelled_order_id: Option<String>,
36 #[serde(default)]
37 pub deleted_object_ids: Option<Vec<String>>,
38 #[serde(default)]
39 pub deleted_at: Option<String>,
40 #[serde(default)]
41 pub latest_time: Option<String>,
42}
43
44
45#[derive(Clone, Debug, Serialize, Deserialize)]
49pub struct ResponseError {
50 pub category: String,
51 pub code: String,
52 #[serde(default)]
53 pub detail: Option<String>,
54 #[serde(default)]
55 pub field: Option<String>,
56}