1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct PersonEndpointResponse {
13 #[serde(
15 rename = "public_identifier",
16 default,
17 with = "::serde_with::rust::double_option",
18 skip_serializing_if = "Option::is_none"
19 )]
20 pub public_identifier: Option<Option<String>>,
21 #[serde(
23 rename = "profile_pic_url",
24 default,
25 with = "::serde_with::rust::double_option",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub profile_pic_url: Option<Option<String>>,
29 #[serde(
31 rename = "background_cover_image_url",
32 default,
33 with = "::serde_with::rust::double_option",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub background_cover_image_url: Option<Option<String>>,
37 #[serde(
39 rename = "first_name",
40 default,
41 with = "::serde_with::rust::double_option",
42 skip_serializing_if = "Option::is_none"
43 )]
44 pub first_name: Option<Option<String>>,
45 #[serde(
47 rename = "last_name",
48 default,
49 with = "::serde_with::rust::double_option",
50 skip_serializing_if = "Option::is_none"
51 )]
52 pub last_name: Option<Option<String>>,
53 #[serde(
55 rename = "full_name",
56 default,
57 with = "::serde_with::rust::double_option",
58 skip_serializing_if = "Option::is_none"
59 )]
60 pub full_name: Option<Option<String>>,
61 #[serde(rename = "follower_count", skip_serializing_if = "Option::is_none")]
63 pub follower_count: Option<i32>,
64 #[serde(
66 rename = "occupation",
67 default,
68 with = "::serde_with::rust::double_option",
69 skip_serializing_if = "Option::is_none"
70 )]
71 pub occupation: Option<Option<String>>,
72 #[serde(
74 rename = "headline",
75 default,
76 with = "::serde_with::rust::double_option",
77 skip_serializing_if = "Option::is_none"
78 )]
79 pub headline: Option<Option<String>>,
80 #[serde(
82 rename = "summary",
83 default,
84 with = "::serde_with::rust::double_option",
85 skip_serializing_if = "Option::is_none"
86 )]
87 pub summary: Option<Option<String>>,
88 #[serde(
90 rename = "country",
91 default,
92 with = "::serde_with::rust::double_option",
93 skip_serializing_if = "Option::is_none"
94 )]
95 pub country: Option<Option<String>>,
96 #[serde(
98 rename = "country_full_name",
99 default,
100 with = "::serde_with::rust::double_option",
101 skip_serializing_if = "Option::is_none"
102 )]
103 pub country_full_name: Option<Option<String>>,
104 #[serde(
106 rename = "city",
107 default,
108 with = "::serde_with::rust::double_option",
109 skip_serializing_if = "Option::is_none"
110 )]
111 pub city: Option<Option<String>>,
112 #[serde(
114 rename = "state",
115 default,
116 with = "::serde_with::rust::double_option",
117 skip_serializing_if = "Option::is_none"
118 )]
119 pub state: Option<Option<String>>,
120 #[serde(rename = "experiences", skip_serializing_if = "Option::is_none")]
122 pub experiences: Option<Vec<crate::models::Experience>>,
123 #[serde(rename = "education", skip_serializing_if = "Option::is_none")]
125 pub education: Option<Vec<crate::models::Education>>,
126 #[serde(rename = "languages", skip_serializing_if = "Option::is_none")]
128 pub languages: Option<Vec<String>>,
129 #[serde(
131 rename = "accomplishment_organisations",
132 skip_serializing_if = "Option::is_none"
133 )]
134 pub accomplishment_organisations: Option<Vec<crate::models::AccomplishmentOrg>>,
135 #[serde(
137 rename = "accomplishment_publications",
138 skip_serializing_if = "Option::is_none"
139 )]
140 pub accomplishment_publications: Option<Vec<crate::models::Publication>>,
141 #[serde(
143 rename = "accomplishment_honors_awards",
144 skip_serializing_if = "Option::is_none"
145 )]
146 pub accomplishment_honors_awards: Option<Vec<crate::models::HonourAward>>,
147 #[serde(
149 rename = "accomplishment_patents",
150 skip_serializing_if = "Option::is_none"
151 )]
152 pub accomplishment_patents: Option<Vec<crate::models::Patent>>,
153 #[serde(
155 rename = "accomplishment_courses",
156 skip_serializing_if = "Option::is_none"
157 )]
158 pub accomplishment_courses: Option<Vec<crate::models::Course>>,
159 #[serde(
161 rename = "accomplishment_projects",
162 skip_serializing_if = "Option::is_none"
163 )]
164 pub accomplishment_projects: Option<Vec<crate::models::Project>>,
165 #[serde(
167 rename = "accomplishment_test_scores",
168 skip_serializing_if = "Option::is_none"
169 )]
170 pub accomplishment_test_scores: Option<Vec<crate::models::TestScore>>,
171 #[serde(rename = "volunteer_work", skip_serializing_if = "Option::is_none")]
173 pub volunteer_work: Option<Vec<crate::models::VolunteeringExperience>>,
174 #[serde(rename = "certifications", skip_serializing_if = "Option::is_none")]
176 pub certifications: Option<Vec<crate::models::Certification>>,
177 #[serde(
179 rename = "connections",
180 default,
181 with = "::serde_with::rust::double_option",
182 skip_serializing_if = "Option::is_none"
183 )]
184 pub connections: Option<Option<i32>>,
185 #[serde(rename = "people_also_viewed", skip_serializing_if = "Option::is_none")]
187 pub people_also_viewed: Option<Vec<crate::models::PeopleAlsoViewed>>,
188 #[serde(rename = "recommendations", skip_serializing_if = "Option::is_none")]
190 pub recommendations: Option<Vec<String>>,
191 #[serde(rename = "activities", skip_serializing_if = "Option::is_none")]
193 pub activities: Option<Vec<crate::models::Activity>>,
194 #[serde(
196 rename = "similarly_named_profiles",
197 skip_serializing_if = "Option::is_none"
198 )]
199 pub similarly_named_profiles: Option<Vec<crate::models::SimilarProfile>>,
200 #[serde(rename = "articles", skip_serializing_if = "Option::is_none")]
202 pub articles: Option<Vec<crate::models::Article>>,
203 #[serde(rename = "groups", skip_serializing_if = "Option::is_none")]
205 pub groups: Option<Vec<crate::models::PersonGroup>>,
206 #[serde(rename = "phone_numbers", skip_serializing_if = "Option::is_none")]
207 pub phone_numbers: Option<Vec<String>>,
208 #[serde(
209 rename = "social_networking_services",
210 skip_serializing_if = "Option::is_none"
211 )]
212 pub social_networking_services: Option<Vec<crate::models::PersonSocialNetworkingService>>,
213 #[serde(rename = "skills", skip_serializing_if = "Option::is_none")]
215 pub skills: Option<Vec<String>>,
216 #[serde(rename = "inferred_salary", skip_serializing_if = "Option::is_none")]
217 pub inferred_salary: Option<Box<crate::models::InferredSalary>>,
218 #[serde(
220 rename = "gender",
221 default,
222 with = "::serde_with::rust::double_option",
223 skip_serializing_if = "Option::is_none"
224 )]
225 pub gender: Option<Option<String>>,
226 #[serde(rename = "birth_date", skip_serializing_if = "Option::is_none")]
227 pub birth_date: Option<Box<crate::models::Date>>,
228 #[serde(
230 rename = "industry",
231 default,
232 with = "::serde_with::rust::double_option",
233 skip_serializing_if = "Option::is_none"
234 )]
235 pub industry: Option<Option<String>>,
236 #[serde(rename = "extra", skip_serializing_if = "Option::is_none")]
237 pub extra: Option<Box<crate::models::PersonExtra>>,
238 #[serde(rename = "interests", skip_serializing_if = "Option::is_none")]
240 pub interests: Option<Vec<String>>,
241 #[serde(rename = "personal_emails", skip_serializing_if = "Option::is_none")]
243 pub personal_emails: Option<Vec<String>>,
244 #[serde(rename = "personal_numbers", skip_serializing_if = "Option::is_none")]
246 pub personal_numbers: Option<Vec<String>>,
247}
248
249impl PersonEndpointResponse {
250 pub fn new() -> PersonEndpointResponse {
251 PersonEndpointResponse {
252 public_identifier: None,
253 profile_pic_url: None,
254 background_cover_image_url: None,
255 first_name: None,
256 last_name: None,
257 full_name: None,
258 follower_count: None,
259 occupation: None,
260 headline: None,
261 summary: None,
262 country: None,
263 country_full_name: None,
264 city: None,
265 state: None,
266 experiences: None,
267 education: None,
268 languages: None,
269 accomplishment_organisations: None,
270 accomplishment_publications: None,
271 accomplishment_honors_awards: None,
272 accomplishment_patents: None,
273 accomplishment_courses: None,
274 accomplishment_projects: None,
275 accomplishment_test_scores: None,
276 volunteer_work: None,
277 certifications: None,
278 connections: None,
279 people_also_viewed: None,
280 recommendations: None,
281 activities: None,
282 similarly_named_profiles: None,
283 articles: None,
284 groups: None,
285 phone_numbers: None,
286 social_networking_services: None,
287 skills: None,
288 inferred_salary: None,
289 gender: None,
290 birth_date: None,
291 industry: None,
292 extra: None,
293 interests: None,
294 personal_emails: None,
295 personal_numbers: None,
296 }
297 }
298}