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 BusinessSchema {
24 #[serde(default, skip_serializing_if = "Option::is_none")]
25 pub name: Option<String>,
26 #[serde(default, skip_serializing_if = "Option::is_none")]
27 pub address: Option<String>,
28 #[serde(default, skip_serializing_if = "Option::is_none")]
29 pub city: Option<String>,
30 #[serde(default, skip_serializing_if = "Option::is_none")]
31 pub state: Option<String>,
32 #[serde(default, skip_serializing_if = "Option::is_none")]
33 pub country: Option<String>,
34 #[serde(
35 rename = "postalCode",
36 default,
37 skip_serializing_if = "Option::is_none"
38 )]
39 pub postal_code: Option<String>,
40 #[serde(default, skip_serializing_if = "Option::is_none")]
41 pub website: Option<String>,
42 #[serde(default, skip_serializing_if = "Option::is_none")]
43 pub timezone: Option<String>,
44 #[serde(rename = "logoUrl", default, skip_serializing_if = "Option::is_none")]
45 pub logo_url: Option<String>,
46}
47
48#[derive(Debug, Clone, Default, Serialize, Deserialize)]
50pub struct ConversationChannelEntrySchema {
51 #[serde(
54 rename = "conversationProvider",
55 default,
56 skip_serializing_if = "Option::is_none"
57 )]
58 pub conversation_provider: Option<ConversationProviderSchema>,
59}
60
61#[derive(Debug, Clone, Default, Serialize, Deserialize)]
63pub struct ConversationChannelSchema {
64 #[serde(rename = "SMS", default, skip_serializing_if = "Vec::is_empty")]
66 pub sms: Vec<ConversationChannelEntrySchema>,
67 #[serde(rename = "Email", default, skip_serializing_if = "Vec::is_empty")]
69 pub email: Vec<ConversationChannelEntrySchema>,
70}
71
72#[derive(Debug, Clone, Default, Serialize, Deserialize)]
74pub struct ConversationProviderSchema {
75 #[serde(rename = "_id", default, skip_serializing_if = "Option::is_none")]
79 pub id: Option<String>,
80 #[serde(default, skip_serializing_if = "Option::is_none")]
84 pub name: Option<String>,
85 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
90 pub type_: Option<String>,
91 #[serde(default, skip_serializing_if = "Option::is_none")]
95 pub default: Option<bool>,
96}
97
98#[derive(Debug, Clone, Default, Serialize, Deserialize)]
100pub struct CreateCustomFieldsDTO {
101 pub name: String,
103 #[serde(rename = "dataType")]
105 pub data_type: String,
106 #[serde(default, skip_serializing_if = "Option::is_none")]
107 pub placeholder: Option<String>,
108 #[serde(
109 rename = "acceptedFormat",
110 default,
111 skip_serializing_if = "Vec::is_empty"
112 )]
113 pub accepted_format: Vec<String>,
114 #[serde(
115 rename = "isMultipleFile",
116 default,
117 skip_serializing_if = "Option::is_none"
118 )]
119 pub is_multiple_file: Option<bool>,
120 #[serde(
121 rename = "maxNumberOfFiles",
122 default,
123 skip_serializing_if = "Option::is_none"
124 )]
125 pub max_number_of_files: Option<f64>,
126 #[serde(
128 rename = "textBoxListOptions",
129 default,
130 skip_serializing_if = "Vec::is_empty"
131 )]
132 pub text_box_list_options: Vec<serde_json::Value>,
133 #[serde(default, skip_serializing_if = "Option::is_none")]
134 pub position: Option<f64>,
135 #[serde(default, skip_serializing_if = "Option::is_none")]
138 pub model: Option<String>,
139}
140
141#[derive(Debug, Clone, Default, Serialize, Deserialize)]
143pub struct CreateLocationDto {
144 pub name: String,
147 #[serde(default, skip_serializing_if = "Option::is_none")]
150 pub phone: Option<String>,
151 #[serde(rename = "companyId")]
154 pub company_id: String,
155 #[serde(default, skip_serializing_if = "Option::is_none")]
157 pub address: Option<String>,
158 #[serde(default, skip_serializing_if = "Option::is_none")]
160 pub city: Option<String>,
161 #[serde(default, skip_serializing_if = "Option::is_none")]
163 pub state: Option<String>,
164 #[serde(default, skip_serializing_if = "Option::is_none")]
168 pub country: Option<String>,
169 #[serde(
171 rename = "postalCode",
172 default,
173 skip_serializing_if = "Option::is_none"
174 )]
175 pub postal_code: Option<String>,
176 #[serde(default, skip_serializing_if = "Option::is_none")]
178 pub website: Option<String>,
179 #[serde(default, skip_serializing_if = "Option::is_none")]
181 pub timezone: Option<String>,
182 #[serde(
183 rename = "prospectInfo",
184 default,
185 skip_serializing_if = "Option::is_none"
186 )]
187 pub prospect_info: Option<ProspectInfoDto>,
188 #[serde(default, skip_serializing_if = "Option::is_none")]
190 pub settings: Option<SettingsSchema>,
191 #[serde(default, skip_serializing_if = "Option::is_none")]
193 pub social: Option<SocialSchema>,
194 #[serde(default, skip_serializing_if = "Option::is_none")]
196 pub twilio: Option<TwilioSchema>,
197 #[serde(default, skip_serializing_if = "Option::is_none")]
199 pub mailgun: Option<MailgunSchema>,
200 #[serde(
202 rename = "snapshotId",
203 default,
204 skip_serializing_if = "Option::is_none"
205 )]
206 pub snapshot_id: Option<String>,
207}
208
209#[derive(Debug, Clone, Default, Serialize, Deserialize)]
211pub struct CreateLocationSuccessfulResponseDto {
212 #[serde(default, skip_serializing_if = "Option::is_none")]
214 pub id: Option<String>,
215 #[serde(rename = "companyId", default, skip_serializing_if = "Option::is_none")]
217 pub company_id: Option<String>,
218 #[serde(default, skip_serializing_if = "Option::is_none")]
220 pub name: Option<String>,
221 #[serde(default, skip_serializing_if = "Option::is_none")]
223 pub phone: Option<String>,
224 #[serde(default, skip_serializing_if = "Option::is_none")]
226 pub email: Option<String>,
227 #[serde(default, skip_serializing_if = "Option::is_none")]
229 pub address: Option<String>,
230 #[serde(default, skip_serializing_if = "Option::is_none")]
232 pub city: Option<String>,
233 #[serde(default, skip_serializing_if = "Option::is_none")]
235 pub state: Option<String>,
236 #[serde(default, skip_serializing_if = "Option::is_none")]
237 pub domain: Option<String>,
238 #[serde(default, skip_serializing_if = "Option::is_none")]
241 pub country: Option<String>,
242 #[serde(
244 rename = "postalCode",
245 default,
246 skip_serializing_if = "Option::is_none"
247 )]
248 pub postal_code: Option<String>,
249 #[serde(default, skip_serializing_if = "Option::is_none")]
251 pub website: Option<String>,
252 #[serde(default, skip_serializing_if = "Option::is_none")]
254 pub timezone: Option<String>,
255 #[serde(default, skip_serializing_if = "Option::is_none")]
257 pub settings: Option<SettingsSchema>,
258 #[serde(default, skip_serializing_if = "Option::is_none")]
260 pub social: Option<SocialSchema>,
261}
262
263#[derive(Debug, Clone, Default, Serialize, Deserialize)]
265pub struct CustomFieldDeleteSuccessfulResponseDto {
266 #[serde(default, skip_serializing_if = "Option::is_none")]
267 pub succeded: Option<bool>,
268}
269
270#[derive(Debug, Clone, Default, Serialize, Deserialize)]
272pub struct CustomFieldSchema {
273 #[serde(default, skip_serializing_if = "Option::is_none")]
274 pub id: Option<String>,
275 #[serde(default, skip_serializing_if = "Option::is_none")]
276 pub name: Option<String>,
277 #[serde(rename = "fieldKey", default, skip_serializing_if = "Option::is_none")]
278 pub field_key: Option<String>,
279 #[serde(default, skip_serializing_if = "Option::is_none")]
280 pub placeholder: Option<String>,
281 #[serde(rename = "dataType", default, skip_serializing_if = "Option::is_none")]
282 pub data_type: Option<String>,
283 #[serde(default, skip_serializing_if = "Option::is_none")]
284 pub position: Option<f64>,
285 #[serde(
286 rename = "picklistOptions",
287 default,
288 skip_serializing_if = "Vec::is_empty"
289 )]
290 pub picklist_options: Vec<String>,
291 #[serde(
292 rename = "picklistImageOptions",
293 default,
294 skip_serializing_if = "Vec::is_empty"
295 )]
296 pub picklist_image_options: Vec<String>,
297 #[serde(
298 rename = "isAllowedCustomOption",
299 default,
300 skip_serializing_if = "Option::is_none"
301 )]
302 pub is_allowed_custom_option: Option<bool>,
303 #[serde(
304 rename = "isMultiFileAllowed",
305 default,
306 skip_serializing_if = "Option::is_none"
307 )]
308 pub is_multi_file_allowed: Option<bool>,
309 #[serde(
310 rename = "maxFileLimit",
311 default,
312 skip_serializing_if = "Option::is_none"
313 )]
314 pub max_file_limit: Option<f64>,
315 #[serde(
316 rename = "locationId",
317 default,
318 skip_serializing_if = "Option::is_none"
319 )]
320 pub location_id: Option<String>,
321 #[serde(default, skip_serializing_if = "Option::is_none")]
324 pub model: Option<String>,
325}
326
327#[derive(Debug, Clone, Default, Serialize, Deserialize)]
329pub struct CustomFieldSuccessfulResponseDto {
330 #[serde(
331 rename = "customField",
332 default,
333 skip_serializing_if = "Option::is_none"
334 )]
335 pub custom_field: Option<CustomFieldSchema>,
336}
337
338#[derive(Debug, Clone, Default, Serialize, Deserialize)]
340pub struct CustomFieldsListSuccessfulResponseDto {
341 #[serde(
342 rename = "customFields",
343 default,
344 skip_serializing_if = "Vec::is_empty"
345 )]
346 pub custom_fields: Vec<CustomFieldSchema>,
347}
348
349#[derive(Debug, Clone, Default, Serialize, Deserialize)]
351pub struct CustomRRulesOptions {
352 #[serde(
356 rename = "intervalType",
357 default,
358 skip_serializing_if = "Option::is_none"
359 )]
360 pub interval_type: Option<String>,
361 #[serde(default, skip_serializing_if = "Option::is_none")]
364 pub interval: Option<f64>,
365 #[serde(rename = "startDate", default, skip_serializing_if = "Option::is_none")]
369 pub start_date: Option<String>,
370 #[serde(rename = "endDate", default, skip_serializing_if = "Option::is_none")]
372 pub end_date: Option<String>,
373 #[serde(
375 rename = "dayOfMonth",
376 default,
377 skip_serializing_if = "Option::is_none"
378 )]
379 pub day_of_month: Option<f64>,
380 #[serde(rename = "dayOfWeek", default, skip_serializing_if = "Option::is_none")]
382 pub day_of_week: Option<String>,
383 #[serde(
385 rename = "monthOfYear",
386 default,
387 skip_serializing_if = "Option::is_none"
388 )]
389 pub month_of_year: Option<f64>,
390 #[serde(default, skip_serializing_if = "Option::is_none")]
392 pub count: Option<f64>,
393 #[serde(
395 rename = "createTaskIfOverDue",
396 default,
397 skip_serializing_if = "Option::is_none"
398 )]
399 pub create_task_if_over_due: Option<bool>,
400 #[serde(
404 rename = "dueAfterSeconds",
405 default,
406 skip_serializing_if = "Option::is_none"
407 )]
408 pub due_after_seconds: Option<f64>,
409}
410
411#[derive(Debug, Clone, Default, Serialize, Deserialize)]
413pub struct CustomValueDeleteSuccessfulResponseDto {
414 #[serde(default, skip_serializing_if = "Option::is_none")]
415 pub succeded: Option<bool>,
416}
417
418#[derive(Debug, Clone, Default, Serialize, Deserialize)]
420pub struct CustomValueIdSuccessfulResponseDto {
421 #[serde(
422 rename = "customValue",
423 default,
424 skip_serializing_if = "Option::is_none"
425 )]
426 pub custom_value: Option<CustomValueSchema>,
427}
428
429#[derive(Debug, Clone, Default, Serialize, Deserialize)]
431pub struct CustomValueSchema {
432 #[serde(default, skip_serializing_if = "Option::is_none")]
433 pub id: Option<String>,
434 #[serde(default, skip_serializing_if = "Option::is_none")]
435 pub name: Option<String>,
436 #[serde(rename = "fieldKey", default, skip_serializing_if = "Option::is_none")]
437 pub field_key: Option<String>,
438 #[serde(default, skip_serializing_if = "Option::is_none")]
439 pub value: Option<String>,
440 #[serde(
441 rename = "locationId",
442 default,
443 skip_serializing_if = "Option::is_none"
444 )]
445 pub location_id: Option<String>,
446}
447
448#[derive(Debug, Clone, Default, Serialize, Deserialize)]
450pub struct CustomValuesListSuccessfulResponseDto {
451 #[serde(
452 rename = "customValues",
453 default,
454 skip_serializing_if = "Vec::is_empty"
455 )]
456 pub custom_values: Vec<CustomValueSchema>,
457}
458
459#[derive(Debug, Clone, Default, Serialize, Deserialize)]
461pub struct DeleteRecurringTaskResponseDTO {
462 #[serde(default, skip_serializing_if = "Option::is_none")]
466 pub id: Option<String>,
467 #[serde(default, skip_serializing_if = "Option::is_none")]
471 pub success: Option<bool>,
472}
473
474#[derive(Debug, Clone, Default, Serialize, Deserialize)]
476pub struct EmailTemplateSchema {
477 #[serde(default, skip_serializing_if = "Option::is_none")]
478 pub subject: Option<String>,
479 #[serde(default, skip_serializing_if = "Vec::is_empty")]
480 pub attachments: Vec<Vec<serde_json::Value>>,
481 #[serde(default, skip_serializing_if = "Option::is_none")]
482 pub html: Option<String>,
483}
484
485#[derive(Debug, Clone, Default, Serialize, Deserialize)]
487pub struct FileUploadBody {
488 #[serde(default, skip_serializing_if = "Option::is_none")]
490 pub id: Option<String>,
491 #[serde(rename = "maxFiles", default, skip_serializing_if = "Option::is_none")]
493 pub max_files: Option<String>,
494}
495
496#[derive(Debug, Clone, Default, Serialize, Deserialize)]
498pub struct FileUploadResponseDto {
499 #[serde(
501 rename = "uploadedFiles",
502 default,
503 skip_serializing_if = "Option::is_none"
504 )]
505 pub uploaded_files: Option<serde_json::Value>,
506 #[serde(default, skip_serializing_if = "Vec::is_empty")]
508 pub meta: Vec<String>,
509}
510
511#[derive(Debug, Clone, Default, Serialize, Deserialize)]
513pub struct GetConversationChannelListSuccessfulResponseDto {
514 #[serde(
517 rename = "conversationChannel",
518 default,
519 skip_serializing_if = "Option::is_none"
520 )]
521 pub conversation_channel: Option<ConversationChannelSchema>,
522}
523
524#[derive(Debug, Clone, Default, Serialize, Deserialize)]
526pub struct GetEmailTemplateResponseSchema {
527 #[serde(default, skip_serializing_if = "Option::is_none")]
528 pub id: Option<String>,
529 #[serde(default, skip_serializing_if = "Option::is_none")]
530 pub name: Option<String>,
531 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
532 pub type_: Option<String>,
533 #[serde(rename = "dateAdded", default, skip_serializing_if = "Option::is_none")]
534 pub date_added: Option<String>,
535 #[serde(default, skip_serializing_if = "Option::is_none")]
536 pub template: Option<EmailTemplateSchema>,
537 #[serde(
538 rename = "locationId",
539 default,
540 skip_serializing_if = "Option::is_none"
541 )]
542 pub location_id: Option<String>,
543}
544
545#[derive(Debug, Clone, Default, Serialize, Deserialize)]
547pub struct GetLocationByIdSchema {
548 #[serde(default, skip_serializing_if = "Option::is_none")]
549 pub id: Option<String>,
550 #[serde(rename = "companyId", default, skip_serializing_if = "Option::is_none")]
551 pub company_id: Option<String>,
552 #[serde(default, skip_serializing_if = "Option::is_none")]
553 pub name: Option<String>,
554 #[serde(default, skip_serializing_if = "Option::is_none")]
555 pub domain: Option<String>,
556 #[serde(default, skip_serializing_if = "Option::is_none")]
557 pub address: Option<String>,
558 #[serde(default, skip_serializing_if = "Option::is_none")]
559 pub city: Option<String>,
560 #[serde(default, skip_serializing_if = "Option::is_none")]
561 pub state: Option<String>,
562 #[serde(rename = "logoUrl", default, skip_serializing_if = "Option::is_none")]
563 pub logo_url: Option<String>,
564 #[serde(default, skip_serializing_if = "Option::is_none")]
565 pub country: Option<String>,
566 #[serde(
567 rename = "postalCode",
568 default,
569 skip_serializing_if = "Option::is_none"
570 )]
571 pub postal_code: Option<String>,
572 #[serde(default, skip_serializing_if = "Option::is_none")]
573 pub website: Option<String>,
574 #[serde(default, skip_serializing_if = "Option::is_none")]
575 pub timezone: Option<String>,
576 #[serde(rename = "firstName", default, skip_serializing_if = "Option::is_none")]
577 pub first_name: Option<String>,
578 #[serde(rename = "lastName", default, skip_serializing_if = "Option::is_none")]
579 pub last_name: Option<String>,
580 #[serde(default, skip_serializing_if = "Option::is_none")]
581 pub email: Option<String>,
582 #[serde(default, skip_serializing_if = "Option::is_none")]
583 pub phone: Option<String>,
584 #[serde(default, skip_serializing_if = "Option::is_none")]
585 pub business: Option<BusinessSchema>,
586 #[serde(default, skip_serializing_if = "Option::is_none")]
587 pub social: Option<SocialSchema>,
588 #[serde(default, skip_serializing_if = "Option::is_none")]
589 pub settings: Option<SettingsSchema>,
590 #[serde(default, skip_serializing_if = "Option::is_none")]
591 pub reseller: Option<serde_json::Value>,
592}
593
594#[derive(Debug, Clone, Default, Serialize, Deserialize)]
596pub struct GetLocationByIdSuccessfulResponseDto {
597 #[serde(default, skip_serializing_if = "Option::is_none")]
598 pub location: Option<GetLocationByIdSchema>,
599}
600
601#[derive(Debug, Clone, Default, Serialize, Deserialize)]
603pub struct GetLocationSchema {
604 #[serde(default, skip_serializing_if = "Option::is_none")]
606 pub id: Option<String>,
607 #[serde(default, skip_serializing_if = "Option::is_none")]
609 pub name: Option<String>,
610 #[serde(default, skip_serializing_if = "Option::is_none")]
612 pub phone: Option<String>,
613 #[serde(default, skip_serializing_if = "Option::is_none")]
615 pub email: Option<String>,
616 #[serde(default, skip_serializing_if = "Option::is_none")]
618 pub address: Option<String>,
619 #[serde(default, skip_serializing_if = "Option::is_none")]
621 pub city: Option<String>,
622 #[serde(default, skip_serializing_if = "Option::is_none")]
624 pub state: Option<String>,
625 #[serde(default, skip_serializing_if = "Option::is_none")]
627 pub country: Option<String>,
628 #[serde(
630 rename = "postalCode",
631 default,
632 skip_serializing_if = "Option::is_none"
633 )]
634 pub postal_code: Option<String>,
635 #[serde(default, skip_serializing_if = "Option::is_none")]
637 pub website: Option<String>,
638 #[serde(default, skip_serializing_if = "Option::is_none")]
640 pub timezone: Option<String>,
641 #[serde(default, skip_serializing_if = "Option::is_none")]
643 pub settings: Option<SettingsSchema>,
644 #[serde(default, skip_serializing_if = "Option::is_none")]
646 pub social: Option<SocialSchema>,
647}
648
649#[derive(Debug, Clone, Default, Serialize, Deserialize)]
651pub struct GetSmsTemplateResponseSchema {
652 #[serde(default, skip_serializing_if = "Option::is_none")]
653 pub id: Option<String>,
654 #[serde(default, skip_serializing_if = "Option::is_none")]
655 pub name: Option<String>,
656 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
657 pub type_: Option<String>,
658 #[serde(default, skip_serializing_if = "Option::is_none")]
659 pub template: Option<SmsTemplateSchema>,
660 #[serde(rename = "dateAdded", default, skip_serializing_if = "Option::is_none")]
661 pub date_added: Option<String>,
662 #[serde(
663 rename = "locationId",
664 default,
665 skip_serializing_if = "Option::is_none"
666 )]
667 pub location_id: Option<String>,
668 #[serde(
669 rename = "urlAttachments",
670 default,
671 skip_serializing_if = "Vec::is_empty"
672 )]
673 pub url_attachments: Vec<String>,
674}
675
676#[derive(Debug, Clone, Default, Serialize, Deserialize)]
678pub struct GetTemplatesSuccessfulResponseDto {
679 #[serde(default, skip_serializing_if = "Vec::is_empty")]
681 pub templates: Vec<serde_json::Value>,
682 #[serde(
683 rename = "totalCount",
684 default,
685 skip_serializing_if = "Option::is_none"
686 )]
687 pub total_count: Option<f64>,
688}
689
690#[derive(Debug, Clone, Default, Serialize, Deserialize)]
692pub struct LocationDeletedSuccessfulResponseDto {
693 #[serde(default, skip_serializing_if = "Option::is_none")]
697 pub success: Option<bool>,
698 #[serde(default, skip_serializing_if = "Option::is_none")]
702 pub message: Option<String>,
703}
704
705#[derive(Debug, Clone, Default, Serialize, Deserialize)]
707pub struct LocationTagDeleteSuccessfulResponseDto {
708 #[serde(default, skip_serializing_if = "Option::is_none")]
709 pub succeded: Option<bool>,
710}
711
712#[derive(Debug, Clone, Default, Serialize, Deserialize)]
714pub struct LocationTagSuccessfulResponseDto {
715 #[serde(default, skip_serializing_if = "Option::is_none")]
716 pub tag: Option<LocationTagsSchema>,
717}
718
719#[derive(Debug, Clone, Default, Serialize, Deserialize)]
721pub struct LocationTagsSchema {
722 #[serde(default, skip_serializing_if = "Option::is_none")]
723 pub name: Option<String>,
724 #[serde(
725 rename = "locationId",
726 default,
727 skip_serializing_if = "Option::is_none"
728 )]
729 pub location_id: Option<String>,
730 #[serde(default, skip_serializing_if = "Option::is_none")]
731 pub id: Option<String>,
732}
733
734#[derive(Debug, Clone, Default, Serialize, Deserialize)]
736pub struct LocationTagsSuccessfulResponseDto {
737 #[serde(default, skip_serializing_if = "Vec::is_empty")]
738 pub tags: Vec<LocationTagsSchema>,
739}
740
741#[derive(Debug, Clone, Default, Serialize, Deserialize)]
743pub struct LocationTaskListSuccessfulResponseDto {
744 #[serde(default, skip_serializing_if = "Vec::is_empty")]
745 pub tasks: Vec<Vec<serde_json::Value>>,
746}
747
748#[derive(Debug, Clone, Default, Serialize, Deserialize)]
750pub struct MailgunSchema {
751 #[serde(rename = "apiKey")]
754 pub api_key: String,
755 pub domain: String,
758}
759
760#[derive(Debug, Clone, Default, Serialize, Deserialize)]
762pub struct PermissionsResponseDto {
763 #[serde(default, skip_serializing_if = "Vec::is_empty")]
771 pub permissions: Vec<String>,
772}
773
774#[derive(Debug, Clone, Default, Serialize, Deserialize)]
776pub struct ProspectInfoDto {
777 #[serde(rename = "firstName")]
780 pub first_name: String,
781 #[serde(rename = "lastName")]
784 pub last_name: String,
785 pub email: String,
788}
789
790#[derive(Debug, Clone, Default, Serialize, Deserialize)]
792pub struct RecurringTaskCreateDTO {
793 pub title: String,
796 #[serde(default, skip_serializing_if = "Option::is_none")]
798 pub description: Option<String>,
799 #[serde(rename = "contactIds", default, skip_serializing_if = "Vec::is_empty")]
801 pub contact_ids: Vec<String>,
802 #[serde(default, skip_serializing_if = "Vec::is_empty")]
804 pub owners: Vec<String>,
805 #[serde(rename = "rruleOptions")]
808 pub rrule_options: CustomRRulesOptions,
809 #[serde(
811 rename = "ignoreTaskCreation",
812 default,
813 skip_serializing_if = "Option::is_none"
814 )]
815 pub ignore_task_creation: Option<bool>,
816}
817
818#[derive(Debug, Clone, Default, Serialize, Deserialize)]
820pub struct RecurringTaskResponseDTO {
821 #[serde(default, skip_serializing_if = "Option::is_none")]
825 pub id: Option<String>,
826 #[serde(default, skip_serializing_if = "Option::is_none")]
830 pub title: Option<String>,
831 #[serde(default, skip_serializing_if = "Option::is_none")]
835 pub description: Option<String>,
836 #[serde(
840 rename = "locationId",
841 default,
842 skip_serializing_if = "Option::is_none"
843 )]
844 pub location_id: Option<String>,
845 #[serde(rename = "updatedAt", default, skip_serializing_if = "Option::is_none")]
849 pub updated_at: Option<String>,
850 #[serde(rename = "createdAt", default, skip_serializing_if = "Option::is_none")]
854 pub created_at: Option<String>,
855 #[serde(
859 rename = "rruleOptions",
860 default,
861 skip_serializing_if = "Option::is_none"
862 )]
863 pub rrule_options: Option<CustomRRulesOptions>,
864 #[serde(
868 rename = "totalOccurrence",
869 default,
870 skip_serializing_if = "Option::is_none"
871 )]
872 pub total_occurrence: Option<f64>,
873 #[serde(default, skip_serializing_if = "Option::is_none")]
877 pub deleted: Option<bool>,
878 #[serde(
880 rename = "assignedTo",
881 default,
882 skip_serializing_if = "Option::is_none"
883 )]
884 pub assigned_to: Option<String>,
885 #[serde(rename = "contactId", default, skip_serializing_if = "Option::is_none")]
887 pub contact_id: Option<String>,
888}
889
890#[derive(Debug, Clone, Default, Serialize, Deserialize)]
892pub struct RecurringTaskSingleResponseDTO {
893 #[serde(
897 rename = "recurringTask",
898 default,
899 skip_serializing_if = "Option::is_none"
900 )]
901 pub recurring_task: Option<RecurringTaskResponseDTO>,
902}
903
904#[derive(Debug, Clone, Default, Serialize, Deserialize)]
906pub struct RecurringTaskUpdateDTO {
907 #[serde(default, skip_serializing_if = "Option::is_none")]
909 pub title: Option<String>,
910 #[serde(default, skip_serializing_if = "Option::is_none")]
912 pub description: Option<String>,
913 #[serde(rename = "contactIds", default, skip_serializing_if = "Vec::is_empty")]
915 pub contact_ids: Vec<String>,
916 #[serde(default, skip_serializing_if = "Vec::is_empty")]
918 pub owners: Vec<String>,
919 #[serde(
921 rename = "rruleOptions",
922 default,
923 skip_serializing_if = "Option::is_none"
924 )]
925 pub rrule_options: Option<CustomRRulesOptions>,
926 #[serde(
928 rename = "ignoreTaskCreation",
929 default,
930 skip_serializing_if = "Option::is_none"
931 )]
932 pub ignore_task_creation: Option<bool>,
933}
934
935#[derive(Debug, Clone, Default, Serialize, Deserialize)]
937pub struct SearchSuccessfulResponseDto {
938 #[serde(default, skip_serializing_if = "Vec::is_empty")]
939 pub locations: Vec<GetLocationSchema>,
940}
941
942#[derive(Debug, Clone, Default, Serialize, Deserialize)]
944pub struct SettingsSchema {
945 #[serde(
946 rename = "allowDuplicateContact",
947 default,
948 skip_serializing_if = "Option::is_none"
949 )]
950 pub allow_duplicate_contact: Option<bool>,
951 #[serde(
952 rename = "allowDuplicateOpportunity",
953 default,
954 skip_serializing_if = "Option::is_none"
955 )]
956 pub allow_duplicate_opportunity: Option<bool>,
957 #[serde(
958 rename = "allowFacebookNameMerge",
959 default,
960 skip_serializing_if = "Option::is_none"
961 )]
962 pub allow_facebook_name_merge: Option<bool>,
963 #[serde(
964 rename = "disableContactTimezone",
965 default,
966 skip_serializing_if = "Option::is_none"
967 )]
968 pub disable_contact_timezone: Option<bool>,
969}
970
971#[derive(Debug, Clone, Default, Serialize, Deserialize)]
973pub struct SmsTemplateSchema {
974 #[serde(default, skip_serializing_if = "Option::is_none")]
975 pub body: Option<String>,
976 #[serde(default, skip_serializing_if = "Vec::is_empty")]
977 pub attachments: Vec<Vec<serde_json::Value>>,
978}
979
980#[derive(Debug, Clone, Default, Serialize, Deserialize)]
982pub struct SnapshotPutSchema {
983 pub id: String,
986 #[serde(rename = "override", default, skip_serializing_if = "Option::is_none")]
988 pub override_: Option<bool>,
989}
990
991#[derive(Debug, Clone, Default, Serialize, Deserialize)]
993pub struct SocialSchema {
994 #[serde(
996 rename = "facebookUrl",
997 default,
998 skip_serializing_if = "Option::is_none"
999 )]
1000 pub facebook_url: Option<String>,
1001 #[serde(
1003 rename = "googlePlus",
1004 default,
1005 skip_serializing_if = "Option::is_none"
1006 )]
1007 pub google_plus: Option<String>,
1008 #[serde(rename = "linkedIn", default, skip_serializing_if = "Option::is_none")]
1010 pub linked_in: Option<String>,
1011 #[serde(default, skip_serializing_if = "Option::is_none")]
1013 pub foursquare: Option<String>,
1014 #[serde(default, skip_serializing_if = "Option::is_none")]
1016 pub twitter: Option<String>,
1017 #[serde(default, skip_serializing_if = "Option::is_none")]
1019 pub yelp: Option<String>,
1020 #[serde(default, skip_serializing_if = "Option::is_none")]
1022 pub instagram: Option<String>,
1023 #[serde(default, skip_serializing_if = "Option::is_none")]
1025 pub youtube: Option<String>,
1026 #[serde(default, skip_serializing_if = "Option::is_none")]
1028 pub pinterest: Option<String>,
1029 #[serde(rename = "blogRss", default, skip_serializing_if = "Option::is_none")]
1031 pub blog_rss: Option<String>,
1032 #[serde(
1034 rename = "googlePlacesId",
1035 default,
1036 skip_serializing_if = "Option::is_none"
1037 )]
1038 pub google_places_id: Option<String>,
1039}
1040
1041#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1043pub struct TaskSearchParamsDto {
1044 #[serde(rename = "contactId", default, skip_serializing_if = "Vec::is_empty")]
1046 pub contact_id: Vec<String>,
1047 #[serde(default, skip_serializing_if = "Option::is_none")]
1049 pub completed: Option<bool>,
1050 #[serde(rename = "assignedTo", default, skip_serializing_if = "Vec::is_empty")]
1052 pub assigned_to: Vec<String>,
1053 #[serde(default, skip_serializing_if = "Option::is_none")]
1055 pub query: Option<String>,
1056 #[serde(default, skip_serializing_if = "Option::is_none")]
1058 pub limit: Option<f64>,
1059 #[serde(default, skip_serializing_if = "Option::is_none")]
1061 pub skip: Option<f64>,
1062 #[serde(
1064 rename = "businessId",
1065 default,
1066 skip_serializing_if = "Option::is_none"
1067 )]
1068 pub business_id: Option<String>,
1069}
1070
1071#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1073pub struct TwilioSchema {
1074 pub sid: String,
1077 #[serde(rename = "authToken")]
1080 pub auth_token: String,
1081}
1082
1083#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1085pub struct UpdateCustomFieldsDTO {
1086 pub name: String,
1088 #[serde(default, skip_serializing_if = "Option::is_none")]
1089 pub placeholder: Option<String>,
1090 #[serde(
1091 rename = "acceptedFormat",
1092 default,
1093 skip_serializing_if = "Vec::is_empty"
1094 )]
1095 pub accepted_format: Vec<String>,
1096 #[serde(
1097 rename = "isMultipleFile",
1098 default,
1099 skip_serializing_if = "Option::is_none"
1100 )]
1101 pub is_multiple_file: Option<bool>,
1102 #[serde(
1103 rename = "maxNumberOfFiles",
1104 default,
1105 skip_serializing_if = "Option::is_none"
1106 )]
1107 pub max_number_of_files: Option<f64>,
1108 #[serde(
1110 rename = "textBoxListOptions",
1111 default,
1112 skip_serializing_if = "Vec::is_empty"
1113 )]
1114 pub text_box_list_options: Vec<serde_json::Value>,
1115 #[serde(default, skip_serializing_if = "Option::is_none")]
1116 pub position: Option<f64>,
1117 #[serde(default, skip_serializing_if = "Option::is_none")]
1120 pub model: Option<String>,
1121}
1122
1123#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1125pub struct UpdateLocationDto {
1126 #[serde(default, skip_serializing_if = "Option::is_none")]
1128 pub name: Option<String>,
1129 #[serde(default, skip_serializing_if = "Option::is_none")]
1131 pub phone: Option<String>,
1132 #[serde(rename = "companyId")]
1135 pub company_id: String,
1136 #[serde(default, skip_serializing_if = "Option::is_none")]
1138 pub address: Option<String>,
1139 #[serde(default, skip_serializing_if = "Option::is_none")]
1141 pub city: Option<String>,
1142 #[serde(default, skip_serializing_if = "Option::is_none")]
1144 pub state: Option<String>,
1145 #[serde(default, skip_serializing_if = "Option::is_none")]
1148 pub country: Option<String>,
1149 #[serde(
1151 rename = "postalCode",
1152 default,
1153 skip_serializing_if = "Option::is_none"
1154 )]
1155 pub postal_code: Option<String>,
1156 #[serde(default, skip_serializing_if = "Option::is_none")]
1158 pub website: Option<String>,
1159 #[serde(default, skip_serializing_if = "Option::is_none")]
1161 pub timezone: Option<String>,
1162 #[serde(
1163 rename = "prospectInfo",
1164 default,
1165 skip_serializing_if = "Option::is_none"
1166 )]
1167 pub prospect_info: Option<ProspectInfoDto>,
1168 #[serde(default, skip_serializing_if = "Option::is_none")]
1170 pub settings: Option<SettingsSchema>,
1171 #[serde(default, skip_serializing_if = "Option::is_none")]
1173 pub social: Option<SocialSchema>,
1174 #[serde(default, skip_serializing_if = "Option::is_none")]
1176 pub twilio: Option<TwilioSchema>,
1177 #[serde(default, skip_serializing_if = "Option::is_none")]
1179 pub mailgun: Option<MailgunSchema>,
1180 #[serde(default, skip_serializing_if = "Option::is_none")]
1182 pub snapshot: Option<SnapshotPutSchema>,
1183}
1184
1185#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1187pub struct UpdatePermissionsDto {
1188 #[serde(default, skip_serializing_if = "Vec::is_empty")]
1195 pub permissions: Vec<String>,
1196}
1197
1198#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1200pub struct CustomValuesDTO {
1201 pub name: String,
1203 pub value: String,
1205}
1206
1207#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1209pub struct TagBody {
1210 pub name: String,
1213}
1214
1215#[derive(Debug, Clone, Default, Serialize, Deserialize)]
1217pub struct TextBoxListOptionsSchema {
1218 #[serde(default, skip_serializing_if = "Option::is_none")]
1219 pub label: Option<String>,
1220 #[serde(
1221 rename = "prefillValue",
1222 default,
1223 skip_serializing_if = "Option::is_none"
1224 )]
1225 pub prefill_value: Option<String>,
1226}