1#![allow(
14 missing_docs,
15 clippy::doc_lazy_continuation,
16 clippy::doc_overindented_list_items
17)]
18
19use serde::{Deserialize, Serialize};
20
21#[derive(Debug, Clone, Default, Serialize, Deserialize)]
23pub struct AddContactToCampaignDto {
24 #[serde(flatten)]
26 pub extra: serde_json::Map<String, serde_json::Value>,
27}
28
29#[derive(Debug, Clone, Default, Serialize, Deserialize)]
31pub struct AttributionSource {
32 #[serde(default, skip_serializing_if = "Option::is_none")]
36 pub url: Option<String>,
37 #[serde(default, skip_serializing_if = "Option::is_none")]
39 pub campaign: Option<String>,
40 #[serde(rename = "utmSource", default, skip_serializing_if = "Option::is_none")]
42 pub utm_source: Option<String>,
43 #[serde(rename = "utmMedium", default, skip_serializing_if = "Option::is_none")]
45 pub utm_medium: Option<String>,
46 #[serde(
48 rename = "utmContent",
49 default,
50 skip_serializing_if = "Option::is_none"
51 )]
52 pub utm_content: Option<String>,
53 #[serde(default, skip_serializing_if = "Option::is_none")]
55 pub referrer: Option<String>,
56 #[serde(
58 rename = "campaignId",
59 default,
60 skip_serializing_if = "Option::is_none"
61 )]
62 pub campaign_id: Option<String>,
63 #[serde(default, skip_serializing_if = "Option::is_none")]
65 pub fbclid: Option<String>,
66 #[serde(default, skip_serializing_if = "Option::is_none")]
68 pub gclid: Option<String>,
69 #[serde(default, skip_serializing_if = "Option::is_none")]
71 pub msclikid: Option<String>,
72 #[serde(default, skip_serializing_if = "Option::is_none")]
74 pub dclid: Option<String>,
75 #[serde(default, skip_serializing_if = "Option::is_none")]
77 pub fbc: Option<String>,
78 #[serde(default, skip_serializing_if = "Option::is_none")]
80 pub fbp: Option<String>,
81 #[serde(rename = "fbEventId", default, skip_serializing_if = "Option::is_none")]
83 pub fb_event_id: Option<String>,
84 #[serde(rename = "userAgent", default, skip_serializing_if = "Option::is_none")]
86 pub user_agent: Option<String>,
87 #[serde(default, skip_serializing_if = "Option::is_none")]
89 pub ip: Option<String>,
90 #[serde(default, skip_serializing_if = "Option::is_none")]
92 pub medium: Option<String>,
93 #[serde(rename = "mediumId", default, skip_serializing_if = "Option::is_none")]
95 pub medium_id: Option<String>,
96}
97
98#[derive(Debug, Clone, Default, Serialize, Deserialize)]
100pub struct CheckboxField {
101 pub id: String,
104 #[serde(default, skip_serializing_if = "Option::is_none")]
106 pub key: Option<String>,
107 #[serde(rename = "fieldValue", default, skip_serializing_if = "Vec::is_empty")]
109 pub field_value: Vec<String>,
110 #[serde(rename = "field_value", default, skip_serializing_if = "Vec::is_empty")]
112 pub field_value_alt: Vec<String>,
113}
114
115#[derive(Debug, Clone, Default, Serialize, Deserialize)]
117pub struct ContactsBulkUpateResponse {
118 #[serde(default, skip_serializing_if = "Option::is_none")]
122 pub success: Option<bool>,
123 #[serde(default, skip_serializing_if = "Vec::is_empty")]
127 pub ids: Vec<String>,
128}
129
130#[derive(Debug, Clone, Default, Serialize, Deserialize)]
132pub struct ContactsBusinessUpdate {
133 #[serde(rename = "locationId")]
136 pub location_id: String,
137 #[serde(default, skip_serializing_if = "Vec::is_empty")]
140 pub ids: Vec<String>,
141 #[serde(rename = "businessId")]
144 pub business_id: String,
145}
146
147#[derive(Debug, Clone, Default, Serialize, Deserialize)]
149pub struct ContactsByIdSuccessfulResponseDtoV3 {
150 #[serde(default, skip_serializing_if = "Option::is_none")]
152 pub contact: Option<GetContactByIdSchemaV3>,
153}
154
155#[derive(Debug, Clone, Default, Serialize, Deserialize)]
157pub struct ContactsMetaSchema {
158 #[serde(default, skip_serializing_if = "Option::is_none")]
159 pub total: Option<f64>,
160 #[serde(
161 rename = "nextPageUrl",
162 default,
163 skip_serializing_if = "Option::is_none"
164 )]
165 pub next_page_url: Option<String>,
166 #[serde(
167 rename = "startAfterId",
168 default,
169 skip_serializing_if = "Option::is_none"
170 )]
171 pub start_after_id: Option<String>,
172 #[serde(
173 rename = "startAfter",
174 default,
175 skip_serializing_if = "Option::is_none"
176 )]
177 pub start_after: Option<f64>,
178 #[serde(
179 rename = "currentPage",
180 default,
181 skip_serializing_if = "Option::is_none"
182 )]
183 pub current_page: Option<f64>,
184 #[serde(rename = "nextPage", default, skip_serializing_if = "Option::is_none")]
185 pub next_page: Option<f64>,
186 #[serde(rename = "prevPage", default, skip_serializing_if = "Option::is_none")]
187 pub prev_page: Option<f64>,
188}
189
190#[derive(Debug, Clone, Default, Serialize, Deserialize)]
192pub struct ContactsSearchSchema {
193 #[serde(default, skip_serializing_if = "Option::is_none")]
195 pub id: Option<String>,
196 #[serde(
198 rename = "locationId",
199 default,
200 skip_serializing_if = "Option::is_none"
201 )]
202 pub location_id: Option<String>,
203 #[serde(default, skip_serializing_if = "Option::is_none")]
205 pub email: Option<String>,
206 #[serde(default, skip_serializing_if = "Option::is_none")]
208 pub timezone: Option<String>,
209 #[serde(default, skip_serializing_if = "Option::is_none")]
211 pub country: Option<String>,
212 #[serde(default, skip_serializing_if = "Option::is_none")]
214 pub source: Option<String>,
215 #[serde(rename = "dateAdded", default, skip_serializing_if = "Option::is_none")]
217 pub date_added: Option<String>,
218 #[serde(
220 rename = "customFields",
221 default,
222 skip_serializing_if = "Vec::is_empty"
223 )]
224 pub custom_fields: Vec<CustomFieldSchema>,
225 #[serde(default, skip_serializing_if = "Vec::is_empty")]
227 pub tags: Vec<String>,
228 #[serde(
230 rename = "businessId",
231 default,
232 skip_serializing_if = "Option::is_none"
233 )]
234 pub business_id: Option<String>,
235 #[serde(default, skip_serializing_if = "Vec::is_empty")]
237 pub attributions: Vec<AttributionSource>,
238 #[serde(default, skip_serializing_if = "Vec::is_empty")]
240 pub followers: Vec<String>,
241}
242
243#[derive(Debug, Clone, Default, Serialize, Deserialize)]
245pub struct ContactsSearchSuccessfulResponseDto {
246 #[serde(default, skip_serializing_if = "Vec::is_empty")]
248 pub contacts: Vec<ContactsSearchSchema>,
249 #[serde(default, skip_serializing_if = "Option::is_none")]
251 pub count: Option<f64>,
252}
253
254#[derive(Debug, Clone, Default, Serialize, Deserialize)]
256pub struct ContactsWorkflowSuccessfulResponseDto {
257 #[serde(default, skip_serializing_if = "Option::is_none")]
259 pub succeeded: Option<bool>,
260 #[serde(default, skip_serializing_if = "Option::is_none")]
262 pub succeded: Option<bool>,
263}
264
265#[derive(Debug, Clone, Default, Serialize, Deserialize)]
267pub struct CreateAddFollowersSuccessfulResponseDto {
268 #[serde(default, skip_serializing_if = "Vec::is_empty")]
270 pub followers: Vec<String>,
271 #[serde(
273 rename = "followersAdded",
274 default,
275 skip_serializing_if = "Vec::is_empty"
276 )]
277 pub followers_added: Vec<String>,
278}
279
280#[derive(Debug, Clone, Default, Serialize, Deserialize)]
282pub struct CreateAddTagSuccessfulResponseDto {
283 #[serde(default, skip_serializing_if = "Vec::is_empty")]
285 pub tags: Vec<String>,
286}
287
288#[derive(Debug, Clone, Default, Serialize, Deserialize)]
290pub struct CreateContactDtoV3 {
291 #[serde(rename = "firstName", default, skip_serializing_if = "Option::is_none")]
293 pub first_name: Option<String>,
294 #[serde(rename = "lastName", default, skip_serializing_if = "Option::is_none")]
296 pub last_name: Option<String>,
297 #[serde(default, skip_serializing_if = "Option::is_none")]
299 pub name: Option<String>,
300 #[serde(default, skip_serializing_if = "Option::is_none")]
302 pub email: Option<String>,
303 #[serde(rename = "locationId")]
306 pub location_id: String,
307 #[serde(default, skip_serializing_if = "Option::is_none")]
309 pub gender: Option<String>,
310 #[serde(default, skip_serializing_if = "Option::is_none")]
312 pub phone: Option<String>,
313 #[serde(default, skip_serializing_if = "Option::is_none")]
315 pub address1: Option<String>,
316 #[serde(default, skip_serializing_if = "Option::is_none")]
318 pub city: Option<String>,
319 #[serde(default, skip_serializing_if = "Option::is_none")]
321 pub state: Option<String>,
322 #[serde(
324 rename = "postalCode",
325 default,
326 skip_serializing_if = "Option::is_none"
327 )]
328 pub postal_code: Option<String>,
329 #[serde(default, skip_serializing_if = "Option::is_none")]
331 pub website: Option<String>,
332 #[serde(default, skip_serializing_if = "Option::is_none")]
334 pub timezone: Option<String>,
335 #[serde(default, skip_serializing_if = "Option::is_none")]
337 pub dnd: Option<bool>,
338 #[serde(
340 rename = "inboundDndSettings",
341 default,
342 skip_serializing_if = "Option::is_none"
343 )]
344 pub inbound_dnd_settings: Option<InboundDndSettingsSchema>,
345 #[serde(default, skip_serializing_if = "Vec::is_empty")]
347 pub tags: Vec<String>,
348 #[serde(
351 rename = "customFields",
352 default,
353 skip_serializing_if = "Vec::is_empty"
354 )]
355 pub custom_fields: Vec<serde_json::Value>,
356 #[serde(default, skip_serializing_if = "Option::is_none")]
358 pub source: Option<String>,
359 #[serde(
362 rename = "dateOfBirth",
363 default,
364 skip_serializing_if = "Option::is_none"
365 )]
366 pub date_of_birth: Option<serde_json::Value>,
367 #[serde(default, skip_serializing_if = "Option::is_none")]
369 pub country: Option<String>,
370 #[serde(
372 rename = "companyName",
373 default,
374 skip_serializing_if = "Option::is_none"
375 )]
376 pub company_name: Option<String>,
377 #[serde(
379 rename = "assignedTo",
380 default,
381 skip_serializing_if = "Option::is_none"
382 )]
383 pub assigned_to: Option<String>,
384 #[serde(
386 rename = "dndSettings",
387 default,
388 skip_serializing_if = "Option::is_none"
389 )]
390 pub dnd_settings: Option<DndSettingsSchemaV3>,
391}
392
393#[derive(Debug, Clone, Default, Serialize, Deserialize)]
395pub struct CreateContactsSuccessfulResponseDtoV3 {
396 #[serde(default, skip_serializing_if = "Option::is_none")]
398 pub contact: Option<GetContactByIdSchemaV3>,
399}
400
401#[derive(Debug, Clone, Default, Serialize, Deserialize)]
403pub struct CreateDeleteCantactsCampaignsSuccessfulResponseDto {
404 #[serde(default, skip_serializing_if = "Option::is_none")]
406 pub succeeded: Option<bool>,
407 #[serde(default, skip_serializing_if = "Option::is_none")]
409 pub succeded: Option<bool>,
410}
411
412#[derive(Debug, Clone, Default, Serialize, Deserialize)]
414pub struct CreateDeleteTagSuccessfulResponseDto {
415 #[serde(default, skip_serializing_if = "Vec::is_empty")]
417 pub tags: Vec<String>,
418}
419
420#[derive(Debug, Clone, Default, Serialize, Deserialize)]
422pub struct CreateTaskParams {
423 pub title: String,
426 #[serde(default, skip_serializing_if = "Option::is_none")]
428 pub body: Option<String>,
429 #[serde(rename = "dueDate")]
432 pub due_date: String,
433 pub completed: bool,
436 #[serde(
438 rename = "assignedTo",
439 default,
440 skip_serializing_if = "Option::is_none"
441 )]
442 pub assigned_to: Option<String>,
443}
444
445#[derive(Debug, Clone, Default, Serialize, Deserialize)]
447pub struct CreateWorkflowDto {
448 #[serde(
450 rename = "eventStartTime",
451 default,
452 skip_serializing_if = "Option::is_none"
453 )]
454 pub event_start_time: Option<String>,
455}
456
457#[derive(Debug, Clone, Default, Serialize, Deserialize)]
459pub struct CustomFieldSchema {
460 #[serde(default, skip_serializing_if = "Option::is_none")]
462 pub id: Option<String>,
463 #[serde(default, skip_serializing_if = "Option::is_none")]
465 pub value: Option<String>,
466}
467
468#[derive(Debug, Clone, Default, Serialize, Deserialize)]
470pub struct DeleteContactsSuccessfulResponseDto {
471 #[serde(default, skip_serializing_if = "Option::is_none")]
473 pub succeeded: Option<bool>,
474 #[serde(default, skip_serializing_if = "Option::is_none")]
476 pub succeded: Option<bool>,
477}
478
479#[derive(Debug, Clone, Default, Serialize, Deserialize)]
481pub struct DeleteFollowersSuccessfulResponseDto {
482 #[serde(default, skip_serializing_if = "Vec::is_empty")]
484 pub followers: Vec<String>,
485 #[serde(
487 rename = "followersRemoved",
488 default,
489 skip_serializing_if = "Vec::is_empty"
490 )]
491 pub followers_removed: Vec<String>,
492}
493
494#[derive(Debug, Clone, Default, Serialize, Deserialize)]
496pub struct DeleteNoteSuccessfulResponseDto {
497 #[serde(default, skip_serializing_if = "Option::is_none")]
499 pub succeeded: Option<bool>,
500 #[serde(default, skip_serializing_if = "Option::is_none")]
502 pub succeded: Option<bool>,
503}
504
505#[derive(Debug, Clone, Default, Serialize, Deserialize)]
507pub struct DeleteTaskSuccessfulResponseDto {
508 #[serde(default, skip_serializing_if = "Option::is_none")]
510 pub succeeded: Option<bool>,
511 #[serde(default, skip_serializing_if = "Option::is_none")]
513 pub succeded: Option<bool>,
514}
515
516#[derive(Debug, Clone, Default, Serialize, Deserialize)]
518pub struct DndSettingSchema {
519 #[serde(default, skip_serializing_if = "Option::is_none")]
524 pub status: Option<String>,
525 #[serde(default, skip_serializing_if = "Option::is_none")]
527 pub message: Option<String>,
528 #[serde(default, skip_serializing_if = "Option::is_none")]
530 pub code: Option<String>,
531}
532
533#[derive(Debug, Clone, Default, Serialize, Deserialize)]
535pub struct DndSettingsSchemaV3 {
536 #[serde(default, skip_serializing_if = "Option::is_none")]
538 pub call: Option<DndSettingSchema>,
539 #[serde(default, skip_serializing_if = "Option::is_none")]
541 pub email: Option<DndSettingSchema>,
542 #[serde(default, skip_serializing_if = "Option::is_none")]
544 pub sms: Option<DndSettingSchema>,
545 #[serde(rename = "whatsApp", default, skip_serializing_if = "Option::is_none")]
547 pub whats_app: Option<DndSettingSchema>,
548 #[serde(default, skip_serializing_if = "Option::is_none")]
550 pub gmb: Option<DndSettingSchema>,
551 #[serde(default, skip_serializing_if = "Option::is_none")]
553 pub fb: Option<DndSettingSchema>,
554}
555
556#[derive(Debug, Clone, Default, Serialize, Deserialize)]
558pub struct FileField {
559 pub id: String,
562 #[serde(default, skip_serializing_if = "Option::is_none")]
564 pub key: Option<String>,
565 #[serde(
567 rename = "fieldValue",
568 default,
569 skip_serializing_if = "Option::is_none"
570 )]
571 pub field_value: Option<serde_json::Value>,
572 #[serde(
574 rename = "field_value",
575 default,
576 skip_serializing_if = "Option::is_none"
577 )]
578 pub field_value_alt: Option<serde_json::Value>,
579}
580
581#[derive(Debug, Clone, Default, Serialize, Deserialize)]
583pub struct FollowersDTO {
584 #[serde(default, skip_serializing_if = "Vec::is_empty")]
587 pub followers: Vec<String>,
588}
589
590#[derive(Debug, Clone, Default, Serialize, Deserialize)]
592pub struct GetContactByIdSchemaV3 {
593 #[serde(default, skip_serializing_if = "Option::is_none")]
595 pub id: Option<String>,
596 #[serde(default, skip_serializing_if = "Option::is_none")]
598 pub name: Option<String>,
599 #[serde(
601 rename = "locationId",
602 default,
603 skip_serializing_if = "Option::is_none"
604 )]
605 pub location_id: Option<String>,
606 #[serde(rename = "firstName", default, skip_serializing_if = "Option::is_none")]
608 pub first_name: Option<String>,
609 #[serde(rename = "lastName", default, skip_serializing_if = "Option::is_none")]
611 pub last_name: Option<String>,
612 #[serde(default, skip_serializing_if = "Option::is_none")]
614 pub email: Option<String>,
615 #[serde(
617 rename = "emailLowerCase",
618 default,
619 skip_serializing_if = "Option::is_none"
620 )]
621 pub email_lower_case: Option<String>,
622 #[serde(default, skip_serializing_if = "Option::is_none")]
624 pub timezone: Option<String>,
625 #[serde(
627 rename = "companyName",
628 default,
629 skip_serializing_if = "Option::is_none"
630 )]
631 pub company_name: Option<String>,
632 #[serde(default, skip_serializing_if = "Option::is_none")]
634 pub phone: Option<String>,
635 #[serde(default, skip_serializing_if = "Option::is_none")]
637 pub dnd: Option<bool>,
638 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
640 pub type_: Option<String>,
641 #[serde(default, skip_serializing_if = "Option::is_none")]
643 pub source: Option<String>,
644 #[serde(
646 rename = "assignedTo",
647 default,
648 skip_serializing_if = "Option::is_none"
649 )]
650 pub assigned_to: Option<String>,
651 #[serde(default, skip_serializing_if = "Option::is_none")]
653 pub address1: Option<String>,
654 #[serde(default, skip_serializing_if = "Option::is_none")]
656 pub city: Option<String>,
657 #[serde(default, skip_serializing_if = "Option::is_none")]
659 pub state: Option<String>,
660 #[serde(default, skip_serializing_if = "Option::is_none")]
662 pub country: Option<String>,
663 #[serde(
665 rename = "postalCode",
666 default,
667 skip_serializing_if = "Option::is_none"
668 )]
669 pub postal_code: Option<String>,
670 #[serde(default, skip_serializing_if = "Option::is_none")]
672 pub website: Option<String>,
673 #[serde(default, skip_serializing_if = "Vec::is_empty")]
675 pub tags: Vec<String>,
676 #[serde(
678 rename = "dateOfBirth",
679 default,
680 skip_serializing_if = "Option::is_none"
681 )]
682 pub date_of_birth: Option<String>,
683 #[serde(rename = "dateAdded", default, skip_serializing_if = "Option::is_none")]
685 pub date_added: Option<String>,
686 #[serde(
688 rename = "dateUpdated",
689 default,
690 skip_serializing_if = "Option::is_none"
691 )]
692 pub date_updated: Option<String>,
693 #[serde(default, skip_serializing_if = "Option::is_none")]
695 pub attachments: Option<String>,
696 #[serde(default, skip_serializing_if = "Option::is_none")]
698 pub ssn: Option<String>,
699 #[serde(default, skip_serializing_if = "Option::is_none")]
701 pub keyword: Option<String>,
702 #[serde(
704 rename = "firstNameLowerCase",
705 default,
706 skip_serializing_if = "Option::is_none"
707 )]
708 pub first_name_lower_case: Option<String>,
709 #[serde(
711 rename = "fullNameLowerCase",
712 default,
713 skip_serializing_if = "Option::is_none"
714 )]
715 pub full_name_lower_case: Option<String>,
716 #[serde(
718 rename = "lastNameLowerCase",
719 default,
720 skip_serializing_if = "Option::is_none"
721 )]
722 pub last_name_lower_case: Option<String>,
723 #[serde(
725 rename = "lastActivity",
726 default,
727 skip_serializing_if = "Option::is_none"
728 )]
729 pub last_activity: Option<String>,
730 #[serde(
732 rename = "customFields",
733 default,
734 skip_serializing_if = "Vec::is_empty"
735 )]
736 pub custom_fields: Vec<CustomFieldSchema>,
737 #[serde(
739 rename = "businessId",
740 default,
741 skip_serializing_if = "Option::is_none"
742 )]
743 pub business_id: Option<String>,
744 #[serde(
746 rename = "attributionSource",
747 default,
748 skip_serializing_if = "Option::is_none"
749 )]
750 pub attribution_source: Option<AttributionSource>,
751 #[serde(
753 rename = "lastAttributionSource",
754 default,
755 skip_serializing_if = "Option::is_none"
756 )]
757 pub last_attribution_source: Option<AttributionSource>,
758 #[serde(rename = "visitorId", default, skip_serializing_if = "Option::is_none")]
760 pub visitor_id: Option<String>,
761 #[serde(
763 rename = "dndSettings",
764 default,
765 skip_serializing_if = "Option::is_none"
766 )]
767 pub dnd_settings: Option<DndSettingsSchemaV3>,
768}
769
770#[derive(Debug, Clone, Default, Serialize, Deserialize)]
772pub struct GetCreateUpdateNoteSuccessfulResponseDto {
773 #[serde(default, skip_serializing_if = "Option::is_none")]
775 pub note: Option<GetNoteSchema>,
776}
777
778#[derive(Debug, Clone, Default, Serialize, Deserialize)]
780pub struct GetEventSchema {
781 #[serde(default, skip_serializing_if = "Option::is_none")]
783 pub id: Option<String>,
784 #[serde(
786 rename = "calendarId",
787 default,
788 skip_serializing_if = "Option::is_none"
789 )]
790 pub calendar_id: Option<String>,
791 #[serde(default, skip_serializing_if = "Option::is_none")]
793 pub status: Option<String>,
794 #[serde(default, skip_serializing_if = "Option::is_none")]
796 pub title: Option<String>,
797 #[serde(
799 rename = "assignedUserId",
800 default,
801 skip_serializing_if = "Option::is_none"
802 )]
803 pub assigned_user_id: Option<String>,
804 #[serde(default, skip_serializing_if = "Option::is_none")]
806 pub notes: Option<String>,
807 #[serde(rename = "startTime", default, skip_serializing_if = "Option::is_none")]
809 pub start_time: Option<String>,
810 #[serde(rename = "endTime", default, skip_serializing_if = "Option::is_none")]
812 pub end_time: Option<String>,
813 #[serde(default, skip_serializing_if = "Option::is_none")]
815 pub address: Option<String>,
816 #[serde(
818 rename = "locationId",
819 default,
820 skip_serializing_if = "Option::is_none"
821 )]
822 pub location_id: Option<String>,
823 #[serde(rename = "contactId", default, skip_serializing_if = "Option::is_none")]
825 pub contact_id: Option<String>,
826 #[serde(rename = "groupId", default, skip_serializing_if = "Option::is_none")]
828 pub group_id: Option<String>,
829 #[serde(
831 rename = "appointmentStatus",
832 default,
833 skip_serializing_if = "Option::is_none"
834 )]
835 pub appointment_status: Option<String>,
836 #[serde(default, skip_serializing_if = "Vec::is_empty")]
838 pub users: Vec<String>,
839 #[serde(rename = "dateAdded", default, skip_serializing_if = "Option::is_none")]
841 pub date_added: Option<String>,
842 #[serde(
844 rename = "dateUpdated",
845 default,
846 skip_serializing_if = "Option::is_none"
847 )]
848 pub date_updated: Option<String>,
849 #[serde(
851 rename = "assignedResources",
852 default,
853 skip_serializing_if = "Vec::is_empty"
854 )]
855 pub assigned_resources: Vec<String>,
856}
857
858#[derive(Debug, Clone, Default, Serialize, Deserialize)]
860pub struct GetEventsSuccessfulResponseDto {
861 #[serde(default, skip_serializing_if = "Vec::is_empty")]
863 pub events: Vec<GetEventSchema>,
864}
865
866#[derive(Debug, Clone, Default, Serialize, Deserialize)]
868pub struct GetNoteSchema {
869 #[serde(default, skip_serializing_if = "Option::is_none")]
871 pub id: Option<String>,
872 #[serde(default, skip_serializing_if = "Option::is_none")]
874 pub body: Option<String>,
875 #[serde(rename = "userId", default, skip_serializing_if = "Option::is_none")]
877 pub user_id: Option<String>,
878 #[serde(rename = "dateAdded", default, skip_serializing_if = "Option::is_none")]
880 pub date_added: Option<String>,
881 #[serde(rename = "contactId", default, skip_serializing_if = "Option::is_none")]
883 pub contact_id: Option<String>,
884 #[serde(default, skip_serializing_if = "Option::is_none")]
886 pub title: Option<String>,
887 #[serde(default, skip_serializing_if = "Option::is_none")]
889 pub color: Option<String>,
890 #[serde(default, skip_serializing_if = "Option::is_none")]
892 pub pinned: Option<bool>,
893}
894
895#[derive(Debug, Clone, Default, Serialize, Deserialize)]
897pub struct GetNotesListSuccessfulResponseDto {
898 #[serde(default, skip_serializing_if = "Vec::is_empty")]
900 pub notes: Vec<GetNoteSchema>,
901}
902
903#[derive(Debug, Clone, Default, Serialize, Deserialize)]
905pub struct InboundDndSettingSchema {
906 pub status: String,
910 #[serde(default, skip_serializing_if = "Option::is_none")]
912 pub message: Option<String>,
913}
914
915#[derive(Debug, Clone, Default, Serialize, Deserialize)]
917pub struct InboundDndSettingsSchema {
918 #[serde(default, skip_serializing_if = "Option::is_none")]
920 pub all: Option<InboundDndSettingSchema>,
921}
922
923#[derive(Debug, Clone, Default, Serialize, Deserialize)]
925pub struct LargeTextField {
926 pub id: String,
929 #[serde(default, skip_serializing_if = "Option::is_none")]
931 pub key: Option<String>,
932 #[serde(
934 rename = "fieldValue",
935 default,
936 skip_serializing_if = "Option::is_none"
937 )]
938 pub field_value: Option<String>,
939 #[serde(
941 rename = "field_value",
942 default,
943 skip_serializing_if = "Option::is_none"
944 )]
945 pub field_value_alt: Option<String>,
946}
947
948#[derive(Debug, Clone, Default, Serialize, Deserialize)]
950pub struct MonetoryField {
951 pub id: String,
954 #[serde(default, skip_serializing_if = "Option::is_none")]
956 pub key: Option<String>,
957 #[serde(
959 rename = "fieldValue",
960 default,
961 skip_serializing_if = "Option::is_none"
962 )]
963 pub field_value: Option<serde_json::Value>,
964 #[serde(
966 rename = "field_value",
967 default,
968 skip_serializing_if = "Option::is_none"
969 )]
970 pub field_value_alt: Option<serde_json::Value>,
971}
972
973#[derive(Debug, Clone, Default, Serialize, Deserialize)]
975pub struct MultiSelectField {
976 pub id: String,
979 #[serde(default, skip_serializing_if = "Option::is_none")]
981 pub key: Option<String>,
982 #[serde(rename = "fieldValue", default, skip_serializing_if = "Vec::is_empty")]
984 pub field_value: Vec<String>,
985 #[serde(rename = "field_value", default, skip_serializing_if = "Vec::is_empty")]
987 pub field_value_alt: Vec<String>,
988}
989
990#[derive(Debug, Clone, Default, Serialize, Deserialize)]
992pub struct NotesDTO {
993 #[serde(rename = "userId", default, skip_serializing_if = "Option::is_none")]
995 pub user_id: Option<String>,
996 pub body: String,
999 #[serde(default, skip_serializing_if = "Option::is_none")]
1001 pub title: Option<String>,
1002 #[serde(default, skip_serializing_if = "Option::is_none")]
1004 pub color: Option<String>,
1005 #[serde(default, skip_serializing_if = "Option::is_none")]
1007 pub pinned: Option<bool>,
1008}
1009
1010#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1012pub struct NumericField {
1013 pub id: String,
1016 #[serde(default, skip_serializing_if = "Option::is_none")]
1018 pub key: Option<String>,
1019 #[serde(
1021 rename = "fieldValue",
1022 default,
1023 skip_serializing_if = "Option::is_none"
1024 )]
1025 pub field_value: Option<serde_json::Value>,
1026 #[serde(
1028 rename = "field_value",
1029 default,
1030 skip_serializing_if = "Option::is_none"
1031 )]
1032 pub field_value_alt: Option<serde_json::Value>,
1033}
1034
1035#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1037pub struct RadioField {
1038 pub id: String,
1041 #[serde(default, skip_serializing_if = "Option::is_none")]
1043 pub key: Option<String>,
1044 #[serde(
1046 rename = "fieldValue",
1047 default,
1048 skip_serializing_if = "Option::is_none"
1049 )]
1050 pub field_value: Option<String>,
1051 #[serde(
1053 rename = "field_value",
1054 default,
1055 skip_serializing_if = "Option::is_none"
1056 )]
1057 pub field_value_alt: Option<String>,
1058}
1059
1060#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1062pub struct SearchBodyV2DTO {
1063 #[serde(flatten)]
1065 pub extra: serde_json::Map<String, serde_json::Value>,
1066}
1067
1068#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1070pub struct SingleSelectField {
1071 pub id: String,
1074 #[serde(default, skip_serializing_if = "Option::is_none")]
1076 pub key: Option<String>,
1077 #[serde(
1079 rename = "fieldValue",
1080 default,
1081 skip_serializing_if = "Option::is_none"
1082 )]
1083 pub field_value: Option<String>,
1084 #[serde(
1086 rename = "field_value",
1087 default,
1088 skip_serializing_if = "Option::is_none"
1089 )]
1090 pub field_value_alt: Option<String>,
1091}
1092
1093#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1095pub struct TagsDTO {
1096 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1099 pub tags: Vec<String>,
1100}
1101
1102#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1104pub struct TaskByIsSuccessfulResponseDto {
1105 #[serde(default, skip_serializing_if = "Option::is_none")]
1107 pub task: Option<TaskSchema>,
1108}
1109
1110#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1112pub struct TaskSchema {
1113 #[serde(default, skip_serializing_if = "Option::is_none")]
1115 pub id: Option<String>,
1116 #[serde(default, skip_serializing_if = "Option::is_none")]
1118 pub title: Option<String>,
1119 #[serde(default, skip_serializing_if = "Option::is_none")]
1121 pub body: Option<String>,
1122 #[serde(
1124 rename = "assignedTo",
1125 default,
1126 skip_serializing_if = "Option::is_none"
1127 )]
1128 pub assigned_to: Option<String>,
1129 #[serde(rename = "dueDate", default, skip_serializing_if = "Option::is_none")]
1131 pub due_date: Option<String>,
1132 #[serde(default, skip_serializing_if = "Option::is_none")]
1134 pub completed: Option<bool>,
1135 #[serde(rename = "contactId", default, skip_serializing_if = "Option::is_none")]
1137 pub contact_id: Option<String>,
1138}
1139
1140#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1142pub struct TasksListSuccessfulResponseDto {
1143 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1145 pub tasks: Vec<TaskSchema>,
1146}
1147
1148#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1150pub struct TextField {
1151 pub id: String,
1154 #[serde(default, skip_serializing_if = "Option::is_none")]
1156 pub key: Option<String>,
1157 #[serde(
1159 rename = "fieldValue",
1160 default,
1161 skip_serializing_if = "Option::is_none"
1162 )]
1163 pub field_value: Option<String>,
1164 #[serde(
1166 rename = "field_value",
1167 default,
1168 skip_serializing_if = "Option::is_none"
1169 )]
1170 pub field_value_alt: Option<String>,
1171}
1172
1173#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1175pub struct UpdateContactDtoV3 {
1176 #[serde(rename = "firstName", default, skip_serializing_if = "Option::is_none")]
1178 pub first_name: Option<String>,
1179 #[serde(rename = "lastName", default, skip_serializing_if = "Option::is_none")]
1181 pub last_name: Option<String>,
1182 #[serde(default, skip_serializing_if = "Option::is_none")]
1184 pub name: Option<String>,
1185 #[serde(default, skip_serializing_if = "Option::is_none")]
1187 pub email: Option<String>,
1188 #[serde(default, skip_serializing_if = "Option::is_none")]
1190 pub phone: Option<String>,
1191 #[serde(default, skip_serializing_if = "Option::is_none")]
1193 pub address1: Option<String>,
1194 #[serde(default, skip_serializing_if = "Option::is_none")]
1196 pub city: Option<String>,
1197 #[serde(default, skip_serializing_if = "Option::is_none")]
1199 pub state: Option<String>,
1200 #[serde(
1202 rename = "postalCode",
1203 default,
1204 skip_serializing_if = "Option::is_none"
1205 )]
1206 pub postal_code: Option<String>,
1207 #[serde(default, skip_serializing_if = "Option::is_none")]
1209 pub website: Option<String>,
1210 #[serde(default, skip_serializing_if = "Option::is_none")]
1212 pub timezone: Option<String>,
1213 #[serde(default, skip_serializing_if = "Option::is_none")]
1215 pub dnd: Option<bool>,
1216 #[serde(
1218 rename = "inboundDndSettings",
1219 default,
1220 skip_serializing_if = "Option::is_none"
1221 )]
1222 pub inbound_dnd_settings: Option<InboundDndSettingsSchema>,
1223 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1226 pub tags: Vec<String>,
1227 #[serde(
1230 rename = "customFields",
1231 default,
1232 skip_serializing_if = "Vec::is_empty"
1233 )]
1234 pub custom_fields: Vec<serde_json::Value>,
1235 #[serde(default, skip_serializing_if = "Option::is_none")]
1237 pub source: Option<String>,
1238 #[serde(
1241 rename = "dateOfBirth",
1242 default,
1243 skip_serializing_if = "Option::is_none"
1244 )]
1245 pub date_of_birth: Option<serde_json::Value>,
1246 #[serde(default, skip_serializing_if = "Option::is_none")]
1249 pub country: Option<String>,
1250 #[serde(
1252 rename = "assignedTo",
1253 default,
1254 skip_serializing_if = "Option::is_none"
1255 )]
1256 pub assigned_to: Option<String>,
1257 #[serde(
1259 rename = "dndSettings",
1260 default,
1261 skip_serializing_if = "Option::is_none"
1262 )]
1263 pub dnd_settings: Option<DndSettingsSchemaV3>,
1264}
1265
1266#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1268pub struct UpdateContactsSuccessfulResponseDtoV3 {
1269 #[serde(default, skip_serializing_if = "Option::is_none")]
1271 pub succeeded: Option<bool>,
1272 #[serde(default, skip_serializing_if = "Option::is_none")]
1274 pub contact: Option<GetContactByIdSchemaV3>,
1275}
1276
1277#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1279pub struct UpdateNoteDTO {
1280 #[serde(rename = "userId", default, skip_serializing_if = "Option::is_none")]
1282 pub user_id: Option<String>,
1283 #[serde(default, skip_serializing_if = "Option::is_none")]
1285 pub body: Option<String>,
1286 #[serde(default, skip_serializing_if = "Option::is_none")]
1288 pub title: Option<String>,
1289 #[serde(default, skip_serializing_if = "Option::is_none")]
1291 pub color: Option<String>,
1292 #[serde(default, skip_serializing_if = "Option::is_none")]
1294 pub pinned: Option<bool>,
1295}
1296
1297#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1299pub struct UpdateTagsDTO {
1300 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1303 pub contacts: Vec<String>,
1304 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1307 pub tags: Vec<String>,
1308 #[serde(rename = "locationId")]
1311 pub location_id: String,
1312 #[serde(
1315 rename = "removeAllTags",
1316 default,
1317 skip_serializing_if = "Option::is_none"
1318 )]
1319 pub remove_all_tags: Option<bool>,
1320}
1321
1322#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1324pub struct UpdateTagsResponseDTO {
1325 #[serde(default, skip_serializing_if = "Option::is_none")]
1329 pub succeeded: Option<bool>,
1330 #[serde(default, skip_serializing_if = "Option::is_none")]
1334 pub succeded: Option<bool>,
1335 #[serde(
1339 rename = "errorCount",
1340 default,
1341 skip_serializing_if = "Option::is_none"
1342 )]
1343 pub error_count: Option<f64>,
1344 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1348 pub responses: Vec<String>,
1349}
1350
1351#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1353pub struct UpdateTaskBody {
1354 #[serde(default, skip_serializing_if = "Option::is_none")]
1356 pub title: Option<String>,
1357 #[serde(default, skip_serializing_if = "Option::is_none")]
1359 pub body: Option<String>,
1360 #[serde(rename = "dueDate", default, skip_serializing_if = "Option::is_none")]
1362 pub due_date: Option<String>,
1363 #[serde(default, skip_serializing_if = "Option::is_none")]
1365 pub completed: Option<bool>,
1366 #[serde(
1368 rename = "assignedTo",
1369 default,
1370 skip_serializing_if = "Option::is_none"
1371 )]
1372 pub assigned_to: Option<String>,
1373}
1374
1375#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1377pub struct UpdateTaskStatusParams {
1378 pub completed: bool,
1381}
1382
1383#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1385pub struct UpsertContactDtoV3 {
1386 #[serde(rename = "firstName", default, skip_serializing_if = "Option::is_none")]
1388 pub first_name: Option<String>,
1389 #[serde(rename = "lastName", default, skip_serializing_if = "Option::is_none")]
1391 pub last_name: Option<String>,
1392 #[serde(default, skip_serializing_if = "Option::is_none")]
1394 pub name: Option<String>,
1395 #[serde(default, skip_serializing_if = "Option::is_none")]
1397 pub email: Option<String>,
1398 #[serde(rename = "locationId")]
1401 pub location_id: String,
1402 #[serde(default, skip_serializing_if = "Option::is_none")]
1404 pub gender: Option<String>,
1405 #[serde(default, skip_serializing_if = "Option::is_none")]
1407 pub phone: Option<String>,
1408 #[serde(default, skip_serializing_if = "Option::is_none")]
1410 pub address1: Option<String>,
1411 #[serde(default, skip_serializing_if = "Option::is_none")]
1413 pub city: Option<String>,
1414 #[serde(default, skip_serializing_if = "Option::is_none")]
1416 pub state: Option<String>,
1417 #[serde(
1419 rename = "postalCode",
1420 default,
1421 skip_serializing_if = "Option::is_none"
1422 )]
1423 pub postal_code: Option<String>,
1424 #[serde(default, skip_serializing_if = "Option::is_none")]
1426 pub website: Option<String>,
1427 #[serde(default, skip_serializing_if = "Option::is_none")]
1429 pub timezone: Option<String>,
1430 #[serde(default, skip_serializing_if = "Option::is_none")]
1432 pub dnd: Option<bool>,
1433 #[serde(
1435 rename = "inboundDndSettings",
1436 default,
1437 skip_serializing_if = "Option::is_none"
1438 )]
1439 pub inbound_dnd_settings: Option<InboundDndSettingsSchema>,
1440 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1443 pub tags: Vec<String>,
1444 #[serde(
1447 rename = "customFields",
1448 default,
1449 skip_serializing_if = "Vec::is_empty"
1450 )]
1451 pub custom_fields: Vec<serde_json::Value>,
1452 #[serde(default, skip_serializing_if = "Option::is_none")]
1454 pub source: Option<String>,
1455 #[serde(
1458 rename = "dateOfBirth",
1459 default,
1460 skip_serializing_if = "Option::is_none"
1461 )]
1462 pub date_of_birth: Option<serde_json::Value>,
1463 #[serde(default, skip_serializing_if = "Option::is_none")]
1465 pub country: Option<String>,
1466 #[serde(
1468 rename = "companyName",
1469 default,
1470 skip_serializing_if = "Option::is_none"
1471 )]
1472 pub company_name: Option<String>,
1473 #[serde(
1475 rename = "assignedTo",
1476 default,
1477 skip_serializing_if = "Option::is_none"
1478 )]
1479 pub assigned_to: Option<String>,
1480 #[serde(
1489 rename = "createNewIfDuplicateAllowed",
1490 default,
1491 skip_serializing_if = "Option::is_none"
1492 )]
1493 pub create_new_if_duplicate_allowed: Option<bool>,
1494 #[serde(
1496 rename = "dndSettings",
1497 default,
1498 skip_serializing_if = "Option::is_none"
1499 )]
1500 pub dnd_settings: Option<DndSettingsSchemaV3>,
1501}
1502
1503#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1505pub struct UpsertContactsSuccessfulResponseDtoV3 {
1506 #[serde(default, skip_serializing_if = "Option::is_none")]
1508 pub new: Option<bool>,
1509 #[serde(default, skip_serializing_if = "Option::is_none")]
1511 pub contact: Option<GetContactByIdSchemaV3>,
1512 #[serde(rename = "traceId", default, skip_serializing_if = "Option::is_none")]
1514 pub trace_id: Option<String>,
1515}
1516
1517#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1519pub struct CustomFieldsInputArraySchema {
1520 #[serde(default, skip_serializing_if = "Option::is_none")]
1524 pub id: Option<String>,
1525 #[serde(default, skip_serializing_if = "Option::is_none")]
1527 pub key: Option<String>,
1528 #[serde(rename = "fieldValue", default, skip_serializing_if = "Vec::is_empty")]
1530 pub field_value: Vec<String>,
1531 #[serde(rename = "field_value", default, skip_serializing_if = "Vec::is_empty")]
1533 pub field_value_alt: Vec<String>,
1534}
1535
1536#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1538pub struct CustomFieldsInputObjectSchema {
1539 #[serde(default, skip_serializing_if = "Option::is_none")]
1543 pub id: Option<String>,
1544 #[serde(default, skip_serializing_if = "Option::is_none")]
1546 pub key: Option<String>,
1547 #[serde(
1549 rename = "fieldValue",
1550 default,
1551 skip_serializing_if = "Option::is_none"
1552 )]
1553 pub field_value: Option<serde_json::Value>,
1554 #[serde(
1556 rename = "field_value",
1557 default,
1558 skip_serializing_if = "Option::is_none"
1559 )]
1560 pub field_value_alt: Option<serde_json::Value>,
1561}
1562
1563#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1565pub struct CustomFieldsInputStringSchema {
1566 #[serde(default, skip_serializing_if = "Option::is_none")]
1568 pub id: Option<String>,
1569 #[serde(default, skip_serializing_if = "Option::is_none")]
1571 pub key: Option<String>,
1572 #[serde(
1574 rename = "fieldValue",
1575 default,
1576 skip_serializing_if = "Option::is_none"
1577 )]
1578 pub field_value: Option<String>,
1579 #[serde(
1581 rename = "field_value",
1582 default,
1583 skip_serializing_if = "Option::is_none"
1584 )]
1585 pub field_value_alt: Option<String>,
1586}