@team-plain/webhooks 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3609 @@
1
+ {
2
+ "title": "Webhooks schema definition",
3
+ "type": "object",
4
+ "properties": {
5
+ "timestamp": {
6
+ "$ref": "#/definitions/datetime"
7
+ },
8
+ "workspaceId": {
9
+ "$ref": "#/definitions/id"
10
+ },
11
+ "payload": {
12
+ "anyOf": [
13
+ {
14
+ "$ref": "#/definitions/customerChangedPayload"
15
+ },
16
+ {
17
+ "$ref": "#/definitions/customerGroupMembershipsChangedPayload"
18
+ },
19
+ {
20
+ "$ref": "#/definitions/timelineEntryChangedPayload"
21
+ },
22
+ {
23
+ "$ref": "#/definitions/customerGroupChangedPayload"
24
+ },
25
+ {
26
+ "$ref": "#/definitions/threadCreatedPublicEventPayload"
27
+ },
28
+ {
29
+ "$ref": "#/definitions/threadStatusTransitionedPublicEventPayload"
30
+ },
31
+ {
32
+ "$ref": "#/definitions/threadAssignmentTransitionedPublicEventPayload"
33
+ },
34
+ {
35
+ "$ref": "#/definitions/threadEmailReceivedPublicEventPayload"
36
+ },
37
+ {
38
+ "$ref": "#/definitions/threadEmailSentPublicEventPayload"
39
+ },
40
+ {
41
+ "$ref": "#/definitions/threadSlackMessageReceivedEventPayload"
42
+ },
43
+ {
44
+ "$ref": "#/definitions/threadSlackMessageSentEventPayload"
45
+ },
46
+ {
47
+ "$ref": "#/definitions/threadMSTeamsMessageReceivedEventPayload"
48
+ },
49
+ {
50
+ "$ref": "#/definitions/threadMSTeamsMessageSentEventPayload"
51
+ },
52
+ {
53
+ "$ref": "#/definitions/threadLabelsChangedPublicEventPayload"
54
+ },
55
+ {
56
+ "$ref": "#/definitions/threadPriorityChangedPublicEventPayload"
57
+ },
58
+ {
59
+ "$ref": "#/definitions/threadFieldCreatedPublicEventPayload"
60
+ },
61
+ {
62
+ "$ref": "#/definitions/threadFieldUpdatedPublicEventPayload"
63
+ },
64
+ {
65
+ "$ref": "#/definitions/threadFieldDeletedPublicEventPayload"
66
+ },
67
+ {
68
+ "$ref": "#/definitions/threadChatSentPublicEventPayload"
69
+ },
70
+ {
71
+ "$ref": "#/definitions/threadServiceLevelAgreementStatusTransitionedPayload"
72
+ },
73
+ {
74
+ "$ref": "#/definitions/customerCreatedPublicEventPayload"
75
+ },
76
+ {
77
+ "$ref": "#/definitions/customerUpdatedPublicEventPayload"
78
+ },
79
+ {
80
+ "$ref": "#/definitions/customerDeletedPublicEventPayload"
81
+ },
82
+ {
83
+ "$ref": "#/definitions/threadNoteCreatedEventPayload"
84
+ },
85
+ {
86
+ "$ref": "#/definitions/threadChatReceivedPublicEventPayload"
87
+ },
88
+ {
89
+ "$ref": "#/definitions/threadSlackMessageUpdatedEventPayload"
90
+ },
91
+ {
92
+ "$ref": "#/definitions/threadDiscordMessageReceivedEventPayload"
93
+ },
94
+ {
95
+ "$ref": "#/definitions/threadDiscordMessageSentEventPayload"
96
+ },
97
+ {
98
+ "$ref": "#/definitions/threadDiscordMessageUpdatedEventPayload"
99
+ },
100
+ {
101
+ "$ref": "#/definitions/threadTenantUpdatedPublicEventPayload"
102
+ }
103
+ ]
104
+ },
105
+ "id": {
106
+ "$ref": "#/definitions/id"
107
+ },
108
+ "type": {
109
+ "type": "string",
110
+ "enum": [
111
+ "thread.thread_created",
112
+ "thread.thread_status_transitioned",
113
+ "thread.thread_assignment_transitioned",
114
+ "thread.email_received",
115
+ "thread.email_sent",
116
+ "thread.slack_message_received",
117
+ "thread.slack_message_sent",
118
+ "thread.slack_message_updated",
119
+ "thread.discord_message_received",
120
+ "thread.discord_message_sent",
121
+ "thread.discord_message_updated",
122
+ "thread.ms_teams_message_sent",
123
+ "thread.ms_teams_message_received",
124
+ "thread.chat_sent",
125
+ "thread.chat_received",
126
+ "thread.note_created",
127
+ "thread.thread_labels_changed",
128
+ "thread.thread_priority_changed",
129
+ "thread.thread_field_created",
130
+ "thread.thread_field_updated",
131
+ "thread.thread_field_deleted",
132
+ "thread.service_level_agreement_status_transitioned",
133
+ "thread.thread_tenant_updated",
134
+ "customer.customer_created",
135
+ "customer.customer_updated",
136
+ "customer.customer_deleted",
137
+ "customer.customer_changed",
138
+ "customer.customer_group_changed",
139
+ "customer.customer_group_memberships_changed",
140
+ "timeline.timeline_entry_changed"
141
+ ]
142
+ },
143
+ "webhookMetadata": {
144
+ "$ref": "#/definitions/webhookMetadata"
145
+ }
146
+ },
147
+ "required": ["timestamp", "workspaceId", "payload", "id", "type", "webhookMetadata"],
148
+ "additionalProperties": true,
149
+ "description": "Webhook request",
150
+ "definitions": {
151
+ "id": {
152
+ "type": "string",
153
+ "minLength": 1,
154
+ "pattern": "^[a-zA-Z]+_[0123456789ABCDEFGHJKMNPQRSTVWXYZ]{26}$",
155
+ "maxLength": 50
156
+ },
157
+ "emailAddress": {
158
+ "allOf": [
159
+ {
160
+ "type": "string"
161
+ },
162
+ {
163
+ "type": "string",
164
+ "pattern": "^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|([^-]([a-zA-Z0-9-]*\\.)+[a-zA-Z]{2,}))$"
165
+ }
166
+ ]
167
+ },
168
+ "datetime": {
169
+ "type": "string",
170
+ "format": "date-time"
171
+ },
172
+ "nullableString": {
173
+ "type": ["string", "null"]
174
+ },
175
+ "nullableDatetime": {
176
+ "anyOf": [
177
+ {
178
+ "$ref": "#/definitions/datetime"
179
+ },
180
+ {
181
+ "type": "null"
182
+ }
183
+ ]
184
+ },
185
+ "nullableActor": {
186
+ "anyOf": [
187
+ {
188
+ "$ref": "#/definitions/actor"
189
+ },
190
+ {
191
+ "type": "null"
192
+ }
193
+ ]
194
+ },
195
+ "nullableInternalActor": {
196
+ "anyOf": [
197
+ {
198
+ "$ref": "#/definitions/internalActor"
199
+ },
200
+ {
201
+ "type": "null"
202
+ }
203
+ ]
204
+ },
205
+ "userActor": {
206
+ "type": "object",
207
+ "properties": {
208
+ "actorType": {
209
+ "type": "string",
210
+ "const": "user"
211
+ },
212
+ "userId": {
213
+ "$ref": "#/definitions/id"
214
+ }
215
+ },
216
+ "required": ["actorType", "userId"],
217
+ "additionalProperties": true
218
+ },
219
+ "customerActor": {
220
+ "type": "object",
221
+ "properties": {
222
+ "actorType": {
223
+ "type": "string",
224
+ "const": "customer"
225
+ },
226
+ "customerId": {
227
+ "$ref": "#/definitions/id"
228
+ }
229
+ },
230
+ "required": ["actorType", "customerId"],
231
+ "additionalProperties": true
232
+ },
233
+ "systemActor": {
234
+ "type": "object",
235
+ "properties": {
236
+ "actorType": {
237
+ "type": "string",
238
+ "const": "system"
239
+ },
240
+ "system": {
241
+ "type": "string"
242
+ }
243
+ },
244
+ "required": ["actorType", "system"],
245
+ "additionalProperties": true
246
+ },
247
+ "machineUserActor": {
248
+ "type": "object",
249
+ "properties": {
250
+ "actorType": {
251
+ "type": "string",
252
+ "const": "machineUser"
253
+ },
254
+ "machineUserId": {
255
+ "$ref": "#/definitions/id"
256
+ }
257
+ },
258
+ "required": ["actorType", "machineUserId"],
259
+ "additionalProperties": true
260
+ },
261
+ "internalActor": {
262
+ "anyOf": [
263
+ {
264
+ "type": "object",
265
+ "properties": {
266
+ "actorType": {
267
+ "type": "string",
268
+ "const": "UNKNOWN"
269
+ }
270
+ },
271
+ "required": ["actorType"],
272
+ "additionalProperties": true
273
+ },
274
+ {
275
+ "$ref": "#/definitions/userActor"
276
+ },
277
+ {
278
+ "$ref": "#/definitions/machineUserActor"
279
+ },
280
+ {
281
+ "$ref": "#/definitions/systemActor"
282
+ }
283
+ ]
284
+ },
285
+ "actor": {
286
+ "anyOf": [
287
+ {
288
+ "$ref": "#/definitions/internalActor/anyOf/0"
289
+ },
290
+ {
291
+ "$ref": "#/definitions/userActor"
292
+ },
293
+ {
294
+ "$ref": "#/definitions/machineUserActor"
295
+ },
296
+ {
297
+ "$ref": "#/definitions/systemActor"
298
+ },
299
+ {
300
+ "$ref": "#/definitions/customerActor"
301
+ }
302
+ ]
303
+ },
304
+ "user": {
305
+ "type": "object",
306
+ "properties": {
307
+ "id": {
308
+ "$ref": "#/definitions/id"
309
+ },
310
+ "email": {
311
+ "$ref": "#/definitions/emailAddress"
312
+ },
313
+ "fullName": {
314
+ "type": "string"
315
+ },
316
+ "publicName": {
317
+ "type": "string"
318
+ },
319
+ "status": {
320
+ "type": "string",
321
+ "enum": ["ONLINE", "OFFLINE", "BREAK", "AWAY", "UNKNOWN_USER_STATUS"]
322
+ },
323
+ "statusChangedAt": {
324
+ "$ref": "#/definitions/datetime"
325
+ },
326
+ "createdAt": {
327
+ "$ref": "#/definitions/datetime"
328
+ },
329
+ "createdBy": {
330
+ "$ref": "#/definitions/internalActor"
331
+ },
332
+ "updatedAt": {
333
+ "$ref": "#/definitions/datetime"
334
+ },
335
+ "updatedBy": {
336
+ "$ref": "#/definitions/internalActor"
337
+ },
338
+ "deletedAt": {
339
+ "$ref": "#/definitions/nullableDatetime"
340
+ },
341
+ "deletedBy": {
342
+ "$ref": "#/definitions/nullableInternalActor"
343
+ }
344
+ },
345
+ "required": [
346
+ "id",
347
+ "email",
348
+ "fullName",
349
+ "publicName",
350
+ "status",
351
+ "statusChangedAt",
352
+ "createdAt",
353
+ "createdBy",
354
+ "updatedAt",
355
+ "updatedBy",
356
+ "deletedAt",
357
+ "deletedBy"
358
+ ],
359
+ "additionalProperties": true
360
+ },
361
+ "machineUser": {
362
+ "type": "object",
363
+ "properties": {
364
+ "id": {
365
+ "$ref": "#/definitions/id"
366
+ },
367
+ "fullName": {
368
+ "type": "string"
369
+ },
370
+ "publicName": {
371
+ "type": "string"
372
+ },
373
+ "description": {
374
+ "type": ["string", "null"]
375
+ },
376
+ "createdAt": {
377
+ "$ref": "#/definitions/datetime"
378
+ },
379
+ "createdBy": {
380
+ "$ref": "#/definitions/internalActor"
381
+ },
382
+ "updatedAt": {
383
+ "$ref": "#/definitions/datetime"
384
+ },
385
+ "updatedBy": {
386
+ "$ref": "#/definitions/internalActor"
387
+ },
388
+ "deletedAt": {
389
+ "$ref": "#/definitions/nullableDatetime"
390
+ },
391
+ "deletedBy": {
392
+ "$ref": "#/definitions/nullableInternalActor"
393
+ }
394
+ },
395
+ "required": [
396
+ "id",
397
+ "fullName",
398
+ "publicName",
399
+ "description",
400
+ "createdAt",
401
+ "createdBy",
402
+ "updatedAt",
403
+ "updatedBy",
404
+ "deletedAt",
405
+ "deletedBy"
406
+ ],
407
+ "additionalProperties": true
408
+ },
409
+ "customerGroup": {
410
+ "type": "object",
411
+ "properties": {
412
+ "id": {
413
+ "$ref": "#/definitions/id"
414
+ },
415
+ "workspaceId": {
416
+ "$ref": "#/definitions/id"
417
+ },
418
+ "name": {
419
+ "type": "string",
420
+ "minLength": 1,
421
+ "maxLength": 500
422
+ },
423
+ "key": {
424
+ "type": "string",
425
+ "minLength": 1,
426
+ "maxLength": 50
427
+ },
428
+ "color": {
429
+ "type": "string",
430
+ "pattern": "^#([a-fA-F0-9]{3,4}|[a-fA-F0-9]{4}(?:[a-fA-F0-9]{2}){1,2})$"
431
+ },
432
+ "createdAt": {
433
+ "$ref": "#/definitions/datetime"
434
+ },
435
+ "createdBy": {
436
+ "$ref": "#/definitions/internalActor"
437
+ },
438
+ "updatedAt": {
439
+ "$ref": "#/definitions/datetime"
440
+ },
441
+ "updatedBy": {
442
+ "$ref": "#/definitions/internalActor"
443
+ }
444
+ },
445
+ "required": [
446
+ "id",
447
+ "workspaceId",
448
+ "name",
449
+ "key",
450
+ "color",
451
+ "createdAt",
452
+ "createdBy",
453
+ "updatedAt",
454
+ "updatedBy"
455
+ ],
456
+ "additionalProperties": true
457
+ },
458
+ "customerGroupMembership": {
459
+ "type": "object",
460
+ "properties": {
461
+ "customerId": {
462
+ "$ref": "#/definitions/id"
463
+ },
464
+ "customerGroupId": {
465
+ "$ref": "#/definitions/id"
466
+ },
467
+ "workspaceId": {
468
+ "$ref": "#/definitions/id"
469
+ },
470
+ "createdAt": {
471
+ "$ref": "#/definitions/datetime"
472
+ },
473
+ "createdBy": {
474
+ "$ref": "#/definitions/internalActor"
475
+ },
476
+ "updatedAt": {
477
+ "$ref": "#/definitions/datetime"
478
+ },
479
+ "updatedBy": {
480
+ "$ref": "#/definitions/internalActor"
481
+ },
482
+ "customerGroup": {
483
+ "$ref": "#/definitions/customerGroup"
484
+ }
485
+ },
486
+ "required": [
487
+ "customerId",
488
+ "customerGroupId",
489
+ "workspaceId",
490
+ "createdAt",
491
+ "createdBy",
492
+ "updatedAt",
493
+ "updatedBy",
494
+ "customerGroup"
495
+ ],
496
+ "additionalProperties": true
497
+ },
498
+ "customer": {
499
+ "type": "object",
500
+ "properties": {
501
+ "id": {
502
+ "$ref": "#/definitions/id"
503
+ },
504
+ "email": {
505
+ "type": "object",
506
+ "properties": {
507
+ "email": {
508
+ "$ref": "#/definitions/emailAddress"
509
+ },
510
+ "isVerified": {
511
+ "type": "boolean"
512
+ },
513
+ "verifiedAt": {
514
+ "anyOf": [
515
+ {
516
+ "$ref": "#/definitions/datetime"
517
+ },
518
+ {
519
+ "type": "null"
520
+ }
521
+ ]
522
+ }
523
+ },
524
+ "required": ["email", "isVerified", "verifiedAt"],
525
+ "additionalProperties": true
526
+ },
527
+ "externalId": {
528
+ "type": ["string", "null"]
529
+ },
530
+ "fullName": {
531
+ "type": "string"
532
+ },
533
+ "shortName": {
534
+ "type": ["string", "null"]
535
+ },
536
+ "markedAsSpamAt": {
537
+ "anyOf": [
538
+ {
539
+ "$ref": "#/definitions/datetime"
540
+ },
541
+ {
542
+ "type": "null"
543
+ }
544
+ ],
545
+ "default": null
546
+ },
547
+ "markedAsSpamBy": {
548
+ "anyOf": [
549
+ {
550
+ "$ref": "#/definitions/internalActor"
551
+ },
552
+ {
553
+ "type": "null"
554
+ }
555
+ ],
556
+ "default": null
557
+ },
558
+ "customerGroupMemberships": {
559
+ "type": "array",
560
+ "items": {
561
+ "$ref": "#/definitions/customerGroupMembership"
562
+ }
563
+ },
564
+ "createdAt": {
565
+ "$ref": "#/definitions/datetime"
566
+ },
567
+ "createdBy": {
568
+ "$ref": "#/definitions/actor"
569
+ },
570
+ "updatedAt": {
571
+ "$ref": "#/definitions/datetime"
572
+ },
573
+ "updatedBy": {
574
+ "$ref": "#/definitions/actor"
575
+ }
576
+ },
577
+ "required": [
578
+ "id",
579
+ "email",
580
+ "externalId",
581
+ "fullName",
582
+ "shortName",
583
+ "customerGroupMemberships",
584
+ "createdAt",
585
+ "createdBy",
586
+ "updatedAt",
587
+ "updatedBy"
588
+ ],
589
+ "additionalProperties": true
590
+ },
591
+ "attachment": {
592
+ "type": "object",
593
+ "properties": {
594
+ "id": {
595
+ "$ref": "#/definitions/id"
596
+ },
597
+ "fileName": {
598
+ "type": "string",
599
+ "minLength": 1
600
+ },
601
+ "fileSizeBytes": {
602
+ "type": "integer",
603
+ "minimum": 0
604
+ },
605
+ "fileMimeType": {
606
+ "type": "string",
607
+ "minLength": 1
608
+ },
609
+ "fileExtension": {
610
+ "$ref": "#/definitions/nullableString"
611
+ },
612
+ "createdAt": {
613
+ "$ref": "#/definitions/datetime"
614
+ },
615
+ "createdBy": {
616
+ "$ref": "#/definitions/actor"
617
+ },
618
+ "updatedAt": {
619
+ "$ref": "#/definitions/datetime"
620
+ },
621
+ "updatedBy": {
622
+ "$ref": "#/definitions/actor"
623
+ }
624
+ },
625
+ "required": [
626
+ "id",
627
+ "fileName",
628
+ "fileSizeBytes",
629
+ "fileMimeType",
630
+ "fileExtension",
631
+ "createdAt",
632
+ "createdBy",
633
+ "updatedAt",
634
+ "updatedBy"
635
+ ],
636
+ "additionalProperties": true
637
+ },
638
+ "emailAuthenticity": {
639
+ "type": "string",
640
+ "enum": ["PASS", "FAIL", "UNKNOWN", "UNKNOWN_EMAIL_AUTHENTICITY"]
641
+ },
642
+ "emailActor": {
643
+ "anyOf": [
644
+ {
645
+ "$ref": "#/definitions/internalActor/anyOf/0"
646
+ },
647
+ {
648
+ "$ref": "#/definitions/userActor"
649
+ },
650
+ {
651
+ "$ref": "#/definitions/customerActor"
652
+ },
653
+ {
654
+ "type": "object",
655
+ "properties": {
656
+ "actorType": {
657
+ "type": "string",
658
+ "const": "supportEmailAddress"
659
+ },
660
+ "supportEmailAddress": {
661
+ "type": "string"
662
+ }
663
+ },
664
+ "required": ["actorType", "supportEmailAddress"],
665
+ "additionalProperties": true
666
+ },
667
+ {
668
+ "type": "object",
669
+ "properties": {
670
+ "actorType": {
671
+ "type": "string",
672
+ "const": "deletedCustomer"
673
+ },
674
+ "customerId": {
675
+ "$ref": "#/definitions/id"
676
+ }
677
+ },
678
+ "required": ["actorType", "customerId"],
679
+ "additionalProperties": true
680
+ }
681
+ ]
682
+ },
683
+ "emailParticipant": {
684
+ "type": "object",
685
+ "properties": {
686
+ "email": {
687
+ "type": "string"
688
+ },
689
+ "name": {
690
+ "type": ["string", "null"]
691
+ },
692
+ "emailActor": {
693
+ "anyOf": [
694
+ {
695
+ "$ref": "#/definitions/emailActor"
696
+ },
697
+ {
698
+ "type": "null"
699
+ }
700
+ ]
701
+ }
702
+ },
703
+ "required": ["email", "name", "emailActor"],
704
+ "additionalProperties": true
705
+ },
706
+ "email": {
707
+ "type": "object",
708
+ "properties": {
709
+ "timelineEntryId": {
710
+ "$ref": "#/definitions/id"
711
+ },
712
+ "id": {
713
+ "$ref": "#/definitions/id"
714
+ },
715
+ "to": {
716
+ "$ref": "#/definitions/emailParticipant"
717
+ },
718
+ "from": {
719
+ "$ref": "#/definitions/emailParticipant"
720
+ },
721
+ "replyTo": {
722
+ "type": ["string", "null"]
723
+ },
724
+ "additionalRecipients": {
725
+ "type": "array",
726
+ "items": {
727
+ "$ref": "#/definitions/emailParticipant"
728
+ }
729
+ },
730
+ "hiddenRecipients": {
731
+ "type": "array",
732
+ "items": {
733
+ "$ref": "#/definitions/emailParticipant"
734
+ }
735
+ },
736
+ "subject": {
737
+ "type": ["string", "null"]
738
+ },
739
+ "textContent": {
740
+ "type": ["string", "null"]
741
+ },
742
+ "markdownContent": {
743
+ "type": ["string", "null"]
744
+ },
745
+ "authenticity": {
746
+ "$ref": "#/definitions/emailAuthenticity"
747
+ },
748
+ "sentAt": {
749
+ "anyOf": [
750
+ {
751
+ "$ref": "#/definitions/datetime"
752
+ },
753
+ {
754
+ "type": "null"
755
+ }
756
+ ]
757
+ },
758
+ "receivedAt": {
759
+ "anyOf": [
760
+ {
761
+ "$ref": "#/definitions/datetime"
762
+ },
763
+ {
764
+ "type": "null"
765
+ }
766
+ ]
767
+ },
768
+ "attachments": {
769
+ "type": "array",
770
+ "items": {
771
+ "$ref": "#/definitions/attachment"
772
+ }
773
+ },
774
+ "inReplyToEmailId": {
775
+ "type": ["string", "null"]
776
+ },
777
+ "isStartOfThread": {
778
+ "type": "boolean"
779
+ },
780
+ "createdAt": {
781
+ "$ref": "#/definitions/datetime"
782
+ },
783
+ "createdBy": {
784
+ "$ref": "#/definitions/actor"
785
+ },
786
+ "updatedAt": {
787
+ "$ref": "#/definitions/datetime"
788
+ },
789
+ "updatedBy": {
790
+ "$ref": "#/definitions/actor"
791
+ }
792
+ },
793
+ "required": [
794
+ "timelineEntryId",
795
+ "id",
796
+ "to",
797
+ "from",
798
+ "replyTo",
799
+ "additionalRecipients",
800
+ "hiddenRecipients",
801
+ "subject",
802
+ "textContent",
803
+ "markdownContent",
804
+ "authenticity",
805
+ "sentAt",
806
+ "receivedAt",
807
+ "attachments",
808
+ "inReplyToEmailId",
809
+ "isStartOfThread",
810
+ "createdAt",
811
+ "createdBy",
812
+ "updatedAt",
813
+ "updatedBy"
814
+ ],
815
+ "additionalProperties": true
816
+ },
817
+ "chat": {
818
+ "type": "object",
819
+ "properties": {
820
+ "timelineEntryId": {
821
+ "$ref": "#/definitions/id"
822
+ },
823
+ "id": {
824
+ "$ref": "#/definitions/id"
825
+ },
826
+ "customerReadAt": {
827
+ "anyOf": [
828
+ {
829
+ "$ref": "#/definitions/datetime"
830
+ },
831
+ {
832
+ "type": "null"
833
+ }
834
+ ]
835
+ },
836
+ "text": {
837
+ "anyOf": [
838
+ {
839
+ "type": "string",
840
+ "minLength": 1,
841
+ "maxLength": 5000
842
+ },
843
+ {
844
+ "type": "null"
845
+ }
846
+ ],
847
+ "default": null
848
+ },
849
+ "attachments": {
850
+ "type": "array",
851
+ "items": {
852
+ "$ref": "#/definitions/attachment"
853
+ }
854
+ },
855
+ "createdAt": {
856
+ "$ref": "#/definitions/datetime"
857
+ },
858
+ "createdBy": {
859
+ "$ref": "#/definitions/actor"
860
+ },
861
+ "updatedAt": {
862
+ "$ref": "#/definitions/datetime"
863
+ },
864
+ "updatedBy": {
865
+ "$ref": "#/definitions/actor"
866
+ }
867
+ },
868
+ "required": [
869
+ "timelineEntryId",
870
+ "id",
871
+ "customerReadAt",
872
+ "attachments",
873
+ "createdAt",
874
+ "createdBy",
875
+ "updatedAt",
876
+ "updatedBy"
877
+ ],
878
+ "additionalProperties": true
879
+ },
880
+ "customEntryAttachment": {
881
+ "type": "object",
882
+ "properties": {
883
+ "id": {
884
+ "$ref": "#/definitions/id"
885
+ },
886
+ "fileName": {
887
+ "$ref": "#/definitions/attachment/properties/fileName"
888
+ },
889
+ "fileSizeBytes": {
890
+ "$ref": "#/definitions/attachment/properties/fileSizeBytes"
891
+ },
892
+ "fileMimeType": {
893
+ "$ref": "#/definitions/attachment/properties/fileMimeType"
894
+ },
895
+ "fileExtension": {
896
+ "$ref": "#/definitions/nullableString"
897
+ },
898
+ "createdAt": {
899
+ "$ref": "#/definitions/datetime"
900
+ },
901
+ "createdBy": {
902
+ "$ref": "#/definitions/actor"
903
+ },
904
+ "updatedAt": {
905
+ "$ref": "#/definitions/datetime"
906
+ },
907
+ "updatedBy": {
908
+ "$ref": "#/definitions/actor"
909
+ },
910
+ "type": {
911
+ "type": "string",
912
+ "const": "CUSTOM_TIMELINE_ENTRY"
913
+ }
914
+ },
915
+ "required": [
916
+ "id",
917
+ "fileName",
918
+ "fileSizeBytes",
919
+ "fileMimeType",
920
+ "fileExtension",
921
+ "createdAt",
922
+ "createdBy",
923
+ "updatedAt",
924
+ "updatedBy",
925
+ "type"
926
+ ],
927
+ "additionalProperties": true
928
+ },
929
+ "chatEntryAttachment": {
930
+ "type": "object",
931
+ "properties": {
932
+ "id": {
933
+ "$ref": "#/definitions/id"
934
+ },
935
+ "fileName": {
936
+ "$ref": "#/definitions/attachment/properties/fileName"
937
+ },
938
+ "fileSizeBytes": {
939
+ "$ref": "#/definitions/attachment/properties/fileSizeBytes"
940
+ },
941
+ "fileMimeType": {
942
+ "$ref": "#/definitions/attachment/properties/fileMimeType"
943
+ },
944
+ "fileExtension": {
945
+ "$ref": "#/definitions/nullableString"
946
+ },
947
+ "createdAt": {
948
+ "$ref": "#/definitions/datetime"
949
+ },
950
+ "createdBy": {
951
+ "$ref": "#/definitions/actor"
952
+ },
953
+ "updatedAt": {
954
+ "$ref": "#/definitions/datetime"
955
+ },
956
+ "updatedBy": {
957
+ "$ref": "#/definitions/actor"
958
+ },
959
+ "type": {
960
+ "type": "string",
961
+ "const": "CHAT"
962
+ }
963
+ },
964
+ "required": [
965
+ "id",
966
+ "fileName",
967
+ "fileSizeBytes",
968
+ "fileMimeType",
969
+ "fileExtension",
970
+ "createdAt",
971
+ "createdBy",
972
+ "updatedAt",
973
+ "updatedBy",
974
+ "type"
975
+ ],
976
+ "additionalProperties": true
977
+ },
978
+ "emailEntryAttachment": {
979
+ "type": "object",
980
+ "properties": {
981
+ "id": {
982
+ "$ref": "#/definitions/id"
983
+ },
984
+ "fileName": {
985
+ "$ref": "#/definitions/attachment/properties/fileName"
986
+ },
987
+ "fileSizeBytes": {
988
+ "$ref": "#/definitions/attachment/properties/fileSizeBytes"
989
+ },
990
+ "fileMimeType": {
991
+ "$ref": "#/definitions/attachment/properties/fileMimeType"
992
+ },
993
+ "fileExtension": {
994
+ "$ref": "#/definitions/nullableString"
995
+ },
996
+ "createdAt": {
997
+ "$ref": "#/definitions/datetime"
998
+ },
999
+ "createdBy": {
1000
+ "$ref": "#/definitions/actor"
1001
+ },
1002
+ "updatedAt": {
1003
+ "$ref": "#/definitions/datetime"
1004
+ },
1005
+ "updatedBy": {
1006
+ "$ref": "#/definitions/actor"
1007
+ },
1008
+ "type": {
1009
+ "type": "string",
1010
+ "const": "EMAIL"
1011
+ },
1012
+ "emailContentId": {
1013
+ "type": "string"
1014
+ }
1015
+ },
1016
+ "required": [
1017
+ "id",
1018
+ "fileName",
1019
+ "fileSizeBytes",
1020
+ "fileMimeType",
1021
+ "fileExtension",
1022
+ "createdAt",
1023
+ "createdBy",
1024
+ "updatedAt",
1025
+ "updatedBy",
1026
+ "type",
1027
+ "emailContentId"
1028
+ ],
1029
+ "additionalProperties": true
1030
+ },
1031
+ "componentTextSize": {
1032
+ "type": "string",
1033
+ "enum": ["S", "M", "L", "UNKNOWN_COMPONENT_TEXT_SIZE"]
1034
+ },
1035
+ "componentTextColor": {
1036
+ "type": "string",
1037
+ "enum": ["NORMAL", "MUTED", "SUCCESS", "WARNING", "ERROR", "UNKNOWN_COMPONENT_TEXT_COLOR"]
1038
+ },
1039
+ "componentPlainTextSize": {
1040
+ "type": "string",
1041
+ "enum": ["S", "M", "L", "UNKNOWN_COMPONENT_PLAIN_TEXT_SIZE"]
1042
+ },
1043
+ "componentPlainTextColor": {
1044
+ "type": "string",
1045
+ "enum": [
1046
+ "NORMAL",
1047
+ "MUTED",
1048
+ "SUCCESS",
1049
+ "WARNING",
1050
+ "ERROR",
1051
+ "UNKNOWN_COMPONENT_PLAIN_TEXT_COLOR"
1052
+ ]
1053
+ },
1054
+ "componentSpacerSize": {
1055
+ "type": "string",
1056
+ "enum": ["XS", "S", "M", "L", "XL", "UNKNOWN_COMPONENT_SPACER_SIZE"]
1057
+ },
1058
+ "componentDividerSpacingSize": {
1059
+ "type": "string",
1060
+ "enum": ["XS", "S", "M", "L", "XL", "UNKNOWN_COMPONENT_DIVIDER_SPACING_SIZE"]
1061
+ },
1062
+ "componentBadgeColor": {
1063
+ "type": "string",
1064
+ "enum": ["GREY", "GREEN", "YELLOW", "RED", "BLUE", "UNKNOWN_COMPONENT_BADGE_COLOR"]
1065
+ },
1066
+ "componentText": {
1067
+ "type": "object",
1068
+ "properties": {
1069
+ "type": {
1070
+ "type": "string",
1071
+ "const": "text"
1072
+ },
1073
+ "textSize": {
1074
+ "anyOf": [
1075
+ {
1076
+ "$ref": "#/definitions/componentTextSize"
1077
+ },
1078
+ {
1079
+ "type": "null"
1080
+ }
1081
+ ]
1082
+ },
1083
+ "textColor": {
1084
+ "anyOf": [
1085
+ {
1086
+ "$ref": "#/definitions/componentTextColor"
1087
+ },
1088
+ {
1089
+ "type": "null"
1090
+ }
1091
+ ]
1092
+ },
1093
+ "text": {
1094
+ "type": "string",
1095
+ "minLength": 1,
1096
+ "maxLength": 5000
1097
+ }
1098
+ },
1099
+ "required": ["type", "textSize", "textColor", "text"],
1100
+ "additionalProperties": true
1101
+ },
1102
+ "componentPlainText": {
1103
+ "type": "object",
1104
+ "properties": {
1105
+ "plainTextSize": {
1106
+ "anyOf": [
1107
+ {
1108
+ "$ref": "#/definitions/componentPlainTextSize"
1109
+ },
1110
+ {
1111
+ "type": "null"
1112
+ }
1113
+ ]
1114
+ },
1115
+ "plainTextColor": {
1116
+ "anyOf": [
1117
+ {
1118
+ "$ref": "#/definitions/componentPlainTextColor"
1119
+ },
1120
+ {
1121
+ "type": "null"
1122
+ }
1123
+ ]
1124
+ },
1125
+ "plainText": {
1126
+ "type": "string",
1127
+ "minLength": 1,
1128
+ "maxLength": 5000
1129
+ },
1130
+ "type": {
1131
+ "type": "string",
1132
+ "const": "plainText"
1133
+ }
1134
+ },
1135
+ "required": ["plainTextSize", "plainTextColor", "plainText", "type"],
1136
+ "additionalProperties": true
1137
+ },
1138
+ "componentSpacer": {
1139
+ "type": "object",
1140
+ "properties": {
1141
+ "spacerSize": {
1142
+ "$ref": "#/definitions/componentSpacerSize"
1143
+ },
1144
+ "type": {
1145
+ "type": "string",
1146
+ "const": "spacer"
1147
+ }
1148
+ },
1149
+ "required": ["spacerSize", "type"],
1150
+ "additionalProperties": true
1151
+ },
1152
+ "componentDivider": {
1153
+ "type": "object",
1154
+ "properties": {
1155
+ "dividerSpacingSize": {
1156
+ "anyOf": [
1157
+ {
1158
+ "$ref": "#/definitions/componentDividerSpacingSize"
1159
+ },
1160
+ {
1161
+ "type": "null"
1162
+ }
1163
+ ]
1164
+ },
1165
+ "type": {
1166
+ "type": "string",
1167
+ "const": "divider"
1168
+ }
1169
+ },
1170
+ "required": ["dividerSpacingSize", "type"],
1171
+ "additionalProperties": true
1172
+ },
1173
+ "componentLinkButton": {
1174
+ "type": "object",
1175
+ "properties": {
1176
+ "linkButtonUrl": {
1177
+ "type": "string",
1178
+ "format": "uri"
1179
+ },
1180
+ "linkButtonLabel": {
1181
+ "type": "string",
1182
+ "maxLength": 500
1183
+ },
1184
+ "type": {
1185
+ "type": "string",
1186
+ "const": "linkButton"
1187
+ }
1188
+ },
1189
+ "required": ["linkButtonUrl", "linkButtonLabel", "type"],
1190
+ "additionalProperties": true
1191
+ },
1192
+ "componentWorkflowButton": {
1193
+ "type": "object",
1194
+ "properties": {
1195
+ "workflowButtonWorkflowIdentifier": {
1196
+ "type": "object",
1197
+ "properties": {
1198
+ "workflowId": {
1199
+ "type": "string"
1200
+ },
1201
+ "workflowKey": {
1202
+ "type": "string"
1203
+ }
1204
+ },
1205
+ "additionalProperties": true
1206
+ },
1207
+ "workflowButtonLabel": {
1208
+ "type": "string",
1209
+ "maxLength": 500
1210
+ },
1211
+ "type": {
1212
+ "type": "string",
1213
+ "const": "workflowButton"
1214
+ }
1215
+ },
1216
+ "required": ["workflowButtonWorkflowIdentifier", "workflowButtonLabel", "type"],
1217
+ "additionalProperties": true
1218
+ },
1219
+ "componentBadge": {
1220
+ "type": "object",
1221
+ "properties": {
1222
+ "badgeLabel": {
1223
+ "type": "string",
1224
+ "maxLength": 500
1225
+ },
1226
+ "badgeColor": {
1227
+ "anyOf": [
1228
+ {
1229
+ "$ref": "#/definitions/componentBadgeColor"
1230
+ },
1231
+ {
1232
+ "type": "null"
1233
+ }
1234
+ ]
1235
+ },
1236
+ "type": {
1237
+ "type": "string",
1238
+ "const": "badge"
1239
+ }
1240
+ },
1241
+ "required": ["badgeLabel", "badgeColor", "type"],
1242
+ "additionalProperties": true
1243
+ },
1244
+ "componentCopyButton": {
1245
+ "type": "object",
1246
+ "properties": {
1247
+ "copyButtonValue": {
1248
+ "type": "string",
1249
+ "maxLength": 1000
1250
+ },
1251
+ "copyButtonTooltipLabel": {
1252
+ "anyOf": [
1253
+ {
1254
+ "type": "string",
1255
+ "maxLength": 500
1256
+ },
1257
+ {
1258
+ "type": "null"
1259
+ }
1260
+ ]
1261
+ },
1262
+ "type": {
1263
+ "type": "string",
1264
+ "const": "copyButton"
1265
+ }
1266
+ },
1267
+ "required": ["copyButtonValue", "copyButtonTooltipLabel", "type"],
1268
+ "additionalProperties": true
1269
+ },
1270
+ "componentRowContent": {
1271
+ "anyOf": [
1272
+ {
1273
+ "type": "object",
1274
+ "properties": {
1275
+ "type": {
1276
+ "type": "string",
1277
+ "const": "UNKNOWN"
1278
+ }
1279
+ },
1280
+ "required": ["type"],
1281
+ "additionalProperties": true
1282
+ },
1283
+ {
1284
+ "$ref": "#/definitions/componentText"
1285
+ },
1286
+ {
1287
+ "$ref": "#/definitions/componentPlainText"
1288
+ },
1289
+ {
1290
+ "$ref": "#/definitions/componentSpacer"
1291
+ },
1292
+ {
1293
+ "$ref": "#/definitions/componentDivider"
1294
+ },
1295
+ {
1296
+ "$ref": "#/definitions/componentLinkButton"
1297
+ },
1298
+ {
1299
+ "$ref": "#/definitions/componentWorkflowButton"
1300
+ },
1301
+ {
1302
+ "$ref": "#/definitions/componentBadge"
1303
+ },
1304
+ {
1305
+ "$ref": "#/definitions/componentCopyButton"
1306
+ }
1307
+ ]
1308
+ },
1309
+ "componentRow": {
1310
+ "type": "object",
1311
+ "properties": {
1312
+ "type": {
1313
+ "type": "string",
1314
+ "const": "row"
1315
+ },
1316
+ "rowMainContent": {
1317
+ "type": "array",
1318
+ "items": {
1319
+ "$ref": "#/definitions/componentRowContent"
1320
+ }
1321
+ },
1322
+ "rowAsideContent": {
1323
+ "type": "array",
1324
+ "items": {
1325
+ "$ref": "#/definitions/componentRowContent"
1326
+ }
1327
+ }
1328
+ },
1329
+ "required": ["type", "rowMainContent", "rowAsideContent"],
1330
+ "additionalProperties": true
1331
+ },
1332
+ "componentContainerContent": {
1333
+ "anyOf": [
1334
+ {
1335
+ "$ref": "#/definitions/componentRowContent/anyOf/0"
1336
+ },
1337
+ {
1338
+ "$ref": "#/definitions/componentText"
1339
+ },
1340
+ {
1341
+ "$ref": "#/definitions/componentPlainText"
1342
+ },
1343
+ {
1344
+ "$ref": "#/definitions/componentSpacer"
1345
+ },
1346
+ {
1347
+ "$ref": "#/definitions/componentDivider"
1348
+ },
1349
+ {
1350
+ "$ref": "#/definitions/componentLinkButton"
1351
+ },
1352
+ {
1353
+ "$ref": "#/definitions/componentWorkflowButton"
1354
+ },
1355
+ {
1356
+ "$ref": "#/definitions/componentBadge"
1357
+ },
1358
+ {
1359
+ "$ref": "#/definitions/componentCopyButton"
1360
+ },
1361
+ {
1362
+ "$ref": "#/definitions/componentRow"
1363
+ }
1364
+ ]
1365
+ },
1366
+ "componentContainer": {
1367
+ "type": "object",
1368
+ "properties": {
1369
+ "type": {
1370
+ "type": "string",
1371
+ "const": "container"
1372
+ },
1373
+ "containerContent": {
1374
+ "type": "array",
1375
+ "items": {
1376
+ "$ref": "#/definitions/componentContainerContent"
1377
+ }
1378
+ }
1379
+ },
1380
+ "required": ["type", "containerContent"],
1381
+ "additionalProperties": true
1382
+ },
1383
+ "component": {
1384
+ "anyOf": [
1385
+ {
1386
+ "$ref": "#/definitions/componentRowContent/anyOf/0"
1387
+ },
1388
+ {
1389
+ "$ref": "#/definitions/componentText"
1390
+ },
1391
+ {
1392
+ "$ref": "#/definitions/componentPlainText"
1393
+ },
1394
+ {
1395
+ "$ref": "#/definitions/componentSpacer"
1396
+ },
1397
+ {
1398
+ "$ref": "#/definitions/componentDivider"
1399
+ },
1400
+ {
1401
+ "$ref": "#/definitions/componentLinkButton"
1402
+ },
1403
+ {
1404
+ "$ref": "#/definitions/componentWorkflowButton"
1405
+ },
1406
+ {
1407
+ "$ref": "#/definitions/componentBadge"
1408
+ },
1409
+ {
1410
+ "$ref": "#/definitions/componentCopyButton"
1411
+ },
1412
+ {
1413
+ "$ref": "#/definitions/componentRow"
1414
+ },
1415
+ {
1416
+ "$ref": "#/definitions/componentContainer"
1417
+ }
1418
+ ]
1419
+ },
1420
+ "labelType": {
1421
+ "type": "object",
1422
+ "properties": {
1423
+ "id": {
1424
+ "$ref": "#/definitions/id"
1425
+ },
1426
+ "name": {
1427
+ "type": "string",
1428
+ "minLength": 1,
1429
+ "maxLength": 500
1430
+ },
1431
+ "icon": {
1432
+ "type": ["string", "null"],
1433
+ "default": null
1434
+ },
1435
+ "isArchived": {
1436
+ "type": "boolean",
1437
+ "default": false
1438
+ },
1439
+ "archivedAt": {
1440
+ "anyOf": [
1441
+ {
1442
+ "$ref": "#/definitions/datetime"
1443
+ },
1444
+ {
1445
+ "type": "null"
1446
+ }
1447
+ ]
1448
+ },
1449
+ "archivedBy": {
1450
+ "anyOf": [
1451
+ {
1452
+ "$ref": "#/definitions/internalActor"
1453
+ },
1454
+ {
1455
+ "type": "null"
1456
+ }
1457
+ ]
1458
+ },
1459
+ "externalId": {
1460
+ "anyOf": [
1461
+ {
1462
+ "type": "string",
1463
+ "maxLength": 500
1464
+ },
1465
+ {
1466
+ "type": "null"
1467
+ }
1468
+ ],
1469
+ "default": null
1470
+ },
1471
+ "isExcludedFromAi": {
1472
+ "type": "boolean",
1473
+ "default": false
1474
+ },
1475
+ "createdAt": {
1476
+ "$ref": "#/definitions/datetime"
1477
+ },
1478
+ "createdBy": {
1479
+ "$ref": "#/definitions/internalActor"
1480
+ },
1481
+ "updatedAt": {
1482
+ "$ref": "#/definitions/datetime"
1483
+ },
1484
+ "updatedBy": {
1485
+ "$ref": "#/definitions/internalActor"
1486
+ }
1487
+ },
1488
+ "required": [
1489
+ "id",
1490
+ "name",
1491
+ "archivedAt",
1492
+ "archivedBy",
1493
+ "createdAt",
1494
+ "createdBy",
1495
+ "updatedAt",
1496
+ "updatedBy"
1497
+ ],
1498
+ "additionalProperties": true
1499
+ },
1500
+ "label": {
1501
+ "type": "object",
1502
+ "properties": {
1503
+ "id": {
1504
+ "$ref": "#/definitions/id"
1505
+ },
1506
+ "labelType": {
1507
+ "$ref": "#/definitions/labelType"
1508
+ },
1509
+ "createdAt": {
1510
+ "$ref": "#/definitions/datetime"
1511
+ },
1512
+ "createdBy": {
1513
+ "$ref": "#/definitions/actor"
1514
+ },
1515
+ "updatedAt": {
1516
+ "$ref": "#/definitions/datetime"
1517
+ },
1518
+ "updatedBy": {
1519
+ "$ref": "#/definitions/actor"
1520
+ }
1521
+ },
1522
+ "required": ["id", "labelType", "createdAt", "createdBy", "updatedAt", "updatedBy"],
1523
+ "additionalProperties": true
1524
+ },
1525
+ "tier": {
1526
+ "type": "object",
1527
+ "properties": {
1528
+ "id": {
1529
+ "$ref": "#/definitions/id"
1530
+ },
1531
+ "name": {
1532
+ "type": "string",
1533
+ "minLength": 1,
1534
+ "maxLength": 500
1535
+ },
1536
+ "externalId": {
1537
+ "anyOf": [
1538
+ {
1539
+ "type": "string",
1540
+ "minLength": 1,
1541
+ "maxLength": 500
1542
+ },
1543
+ {
1544
+ "type": "null"
1545
+ }
1546
+ ]
1547
+ },
1548
+ "color": {
1549
+ "type": "string",
1550
+ "minLength": 1,
1551
+ "maxLength": 500
1552
+ },
1553
+ "defaultThreadPriority": {
1554
+ "$ref": "#/definitions/threadPriority",
1555
+ "default": 2
1556
+ },
1557
+ "isDefault": {
1558
+ "type": "boolean"
1559
+ },
1560
+ "createdAt": {
1561
+ "$ref": "#/definitions/datetime"
1562
+ },
1563
+ "createdBy": {
1564
+ "$ref": "#/definitions/internalActor"
1565
+ },
1566
+ "updatedAt": {
1567
+ "$ref": "#/definitions/datetime"
1568
+ },
1569
+ "updatedBy": {
1570
+ "$ref": "#/definitions/internalActor"
1571
+ }
1572
+ },
1573
+ "required": [
1574
+ "id",
1575
+ "name",
1576
+ "externalId",
1577
+ "color",
1578
+ "isDefault",
1579
+ "createdAt",
1580
+ "createdBy",
1581
+ "updatedAt",
1582
+ "updatedBy"
1583
+ ],
1584
+ "additionalProperties": true
1585
+ },
1586
+ "threadPriority": {
1587
+ "type": "number"
1588
+ },
1589
+ "threadPriorityFilter": {
1590
+ "type": "array",
1591
+ "items": {
1592
+ "$ref": "#/definitions/threadPriority"
1593
+ },
1594
+ "minItems": 1
1595
+ },
1596
+ "threadAssignee": {
1597
+ "anyOf": [
1598
+ {
1599
+ "type": "object",
1600
+ "properties": {
1601
+ "type": {
1602
+ "type": "string",
1603
+ "const": "UNKNOWN"
1604
+ }
1605
+ },
1606
+ "required": ["type"],
1607
+ "additionalProperties": true
1608
+ },
1609
+ {
1610
+ "$ref": "#/definitions/user"
1611
+ },
1612
+ {
1613
+ "$ref": "#/definitions/machineUser"
1614
+ },
1615
+ {
1616
+ "type": "object",
1617
+ "properties": {
1618
+ "id": {
1619
+ "type": "string"
1620
+ }
1621
+ },
1622
+ "required": ["id"],
1623
+ "additionalProperties": true
1624
+ }
1625
+ ]
1626
+ },
1627
+ "threadStatus": {
1628
+ "type": "string",
1629
+ "enum": ["TODO", "DONE", "SNOOZED", "UNKNOWN_THREAD_STATUS"]
1630
+ },
1631
+ "threadMessageInfo": {
1632
+ "type": "object",
1633
+ "properties": {
1634
+ "timestamp": {
1635
+ "$ref": "#/definitions/datetime"
1636
+ },
1637
+ "messageSource": {
1638
+ "type": "string",
1639
+ "enum": [
1640
+ "CHAT",
1641
+ "EMAIL",
1642
+ "API",
1643
+ "SLACK",
1644
+ "MS_TEAMS",
1645
+ "UNKNOWN_THREAD_MESSAGE_INFO_MESSAGE_SOURCE"
1646
+ ]
1647
+ },
1648
+ "actorId": {
1649
+ "type": ["string", "null"],
1650
+ "default": null
1651
+ },
1652
+ "actorType": {
1653
+ "anyOf": [
1654
+ {
1655
+ "type": "string",
1656
+ "enum": ["user", "machineUser", "customer", "system"]
1657
+ },
1658
+ {
1659
+ "type": "null"
1660
+ }
1661
+ ],
1662
+ "default": null
1663
+ }
1664
+ },
1665
+ "required": ["timestamp", "messageSource"],
1666
+ "additionalProperties": true
1667
+ },
1668
+ "threadStatusDetail": {
1669
+ "anyOf": [
1670
+ {
1671
+ "type": "object",
1672
+ "properties": {
1673
+ "type": {
1674
+ "type": "string",
1675
+ "const": "UNKNOWN"
1676
+ }
1677
+ },
1678
+ "required": ["type"],
1679
+ "additionalProperties": true
1680
+ },
1681
+ {
1682
+ "type": "object",
1683
+ "properties": {
1684
+ "type": {
1685
+ "type": "string",
1686
+ "const": "CREATED"
1687
+ },
1688
+ "createdAt": {
1689
+ "$ref": "#/definitions/datetime"
1690
+ }
1691
+ },
1692
+ "required": ["type", "createdAt"],
1693
+ "additionalProperties": true
1694
+ },
1695
+ {
1696
+ "type": "object",
1697
+ "properties": {
1698
+ "type": {
1699
+ "type": "string",
1700
+ "const": "NEW_REPLY"
1701
+ }
1702
+ },
1703
+ "required": ["type"],
1704
+ "additionalProperties": true
1705
+ },
1706
+ {
1707
+ "type": "object",
1708
+ "properties": {
1709
+ "type": {
1710
+ "type": "string",
1711
+ "const": "IN_PROGRESS"
1712
+ }
1713
+ },
1714
+ "required": ["type"],
1715
+ "additionalProperties": true
1716
+ },
1717
+ {
1718
+ "type": "object",
1719
+ "properties": {
1720
+ "type": {
1721
+ "type": "string",
1722
+ "const": "WAITING_FOR_CUSTOMER"
1723
+ }
1724
+ },
1725
+ "required": ["type"],
1726
+ "additionalProperties": true
1727
+ },
1728
+ {
1729
+ "type": "object",
1730
+ "properties": {
1731
+ "type": {
1732
+ "type": "string",
1733
+ "const": "WAITING_FOR_DURATION"
1734
+ },
1735
+ "waitingUntil": {
1736
+ "$ref": "#/definitions/datetime"
1737
+ },
1738
+ "durationSeconds": {
1739
+ "type": "number"
1740
+ }
1741
+ },
1742
+ "required": ["type", "waitingUntil", "durationSeconds"],
1743
+ "additionalProperties": true
1744
+ },
1745
+ {
1746
+ "type": "object",
1747
+ "properties": {
1748
+ "type": {
1749
+ "type": "string",
1750
+ "const": "THREAD_LINK_UPDATED"
1751
+ },
1752
+ "linear": {
1753
+ "type": "object",
1754
+ "properties": {
1755
+ "issueId": {
1756
+ "type": "string",
1757
+ "format": "uuid"
1758
+ }
1759
+ },
1760
+ "required": ["issueId"],
1761
+ "additionalProperties": true
1762
+ }
1763
+ },
1764
+ "required": ["type"],
1765
+ "additionalProperties": true
1766
+ },
1767
+ {
1768
+ "type": "object",
1769
+ "properties": {
1770
+ "type": {
1771
+ "type": "string",
1772
+ "const": "DONE_MANUALLY_SET"
1773
+ }
1774
+ },
1775
+ "required": ["type"],
1776
+ "additionalProperties": true
1777
+ },
1778
+ {
1779
+ "type": "object",
1780
+ "properties": {
1781
+ "type": {
1782
+ "type": "string",
1783
+ "const": "IGNORED"
1784
+ }
1785
+ },
1786
+ "required": ["type"],
1787
+ "additionalProperties": true
1788
+ },
1789
+ {
1790
+ "type": "object",
1791
+ "properties": {
1792
+ "type": {
1793
+ "type": "string",
1794
+ "const": "DONE_AUTOMATICALLY_SET"
1795
+ },
1796
+ "afterSeconds": {
1797
+ "type": "number"
1798
+ }
1799
+ },
1800
+ "required": ["type"],
1801
+ "additionalProperties": true
1802
+ },
1803
+ {
1804
+ "type": "object",
1805
+ "properties": {
1806
+ "type": {
1807
+ "type": "string",
1808
+ "const": "THREAD_DISCUSSION_RESOLVED"
1809
+ },
1810
+ "threadDiscussionId": {
1811
+ "$ref": "#/definitions/id"
1812
+ }
1813
+ },
1814
+ "required": ["type"],
1815
+ "additionalProperties": true
1816
+ }
1817
+ ]
1818
+ },
1819
+ "threadField": {
1820
+ "type": "object",
1821
+ "properties": {
1822
+ "id": {
1823
+ "$ref": "#/definitions/id"
1824
+ },
1825
+ "threadId": {
1826
+ "$ref": "#/definitions/id"
1827
+ },
1828
+ "key": {
1829
+ "type": "string"
1830
+ },
1831
+ "type": {
1832
+ "type": "string",
1833
+ "enum": [
1834
+ "STRING",
1835
+ "BOOL",
1836
+ "ENUM",
1837
+ "NUMBER",
1838
+ "CURRENCY",
1839
+ "DATE",
1840
+ "UNKNOWN_THREAD_FIELD_SCHEMA_TYPE"
1841
+ ]
1842
+ },
1843
+ "stringValue": {
1844
+ "type": ["string", "null"]
1845
+ },
1846
+ "booleanValue": {
1847
+ "type": ["boolean", "null"]
1848
+ },
1849
+ "numberValue": {
1850
+ "type": ["number", "null"],
1851
+ "default": null
1852
+ },
1853
+ "dateValue": {
1854
+ "type": ["string", "null"],
1855
+ "default": null
1856
+ },
1857
+ "createdAt": {
1858
+ "$ref": "#/definitions/datetime"
1859
+ },
1860
+ "createdBy": {
1861
+ "$ref": "#/definitions/actor"
1862
+ },
1863
+ "updatedAt": {
1864
+ "$ref": "#/definitions/datetime"
1865
+ },
1866
+ "updatedBy": {
1867
+ "$ref": "#/definitions/actor"
1868
+ }
1869
+ },
1870
+ "required": [
1871
+ "id",
1872
+ "threadId",
1873
+ "key",
1874
+ "type",
1875
+ "stringValue",
1876
+ "booleanValue",
1877
+ "createdAt",
1878
+ "createdBy",
1879
+ "updatedAt",
1880
+ "updatedBy"
1881
+ ],
1882
+ "additionalProperties": true
1883
+ },
1884
+ "thread": {
1885
+ "type": "object",
1886
+ "properties": {
1887
+ "id": {
1888
+ "$ref": "#/definitions/id"
1889
+ },
1890
+ "customer": {
1891
+ "$ref": "#/definitions/customer"
1892
+ },
1893
+ "title": {
1894
+ "type": "string",
1895
+ "minLength": 1,
1896
+ "maxLength": 500
1897
+ },
1898
+ "previewText": {
1899
+ "anyOf": [
1900
+ {
1901
+ "type": "string",
1902
+ "maxLength": 500
1903
+ },
1904
+ {
1905
+ "type": "null"
1906
+ }
1907
+ ],
1908
+ "default": null
1909
+ },
1910
+ "priority": {
1911
+ "$ref": "#/definitions/threadPriority"
1912
+ },
1913
+ "externalId": {
1914
+ "anyOf": [
1915
+ {
1916
+ "type": "string",
1917
+ "minLength": 1,
1918
+ "maxLength": 500
1919
+ },
1920
+ {
1921
+ "type": "null"
1922
+ }
1923
+ ]
1924
+ },
1925
+ "status": {
1926
+ "$ref": "#/definitions/threadStatus"
1927
+ },
1928
+ "statusChangedAt": {
1929
+ "$ref": "#/definitions/datetime"
1930
+ },
1931
+ "statusChangedBy": {
1932
+ "anyOf": [
1933
+ {
1934
+ "$ref": "#/definitions/actor"
1935
+ },
1936
+ {
1937
+ "type": "null"
1938
+ }
1939
+ ],
1940
+ "default": null
1941
+ },
1942
+ "statusDetail": {
1943
+ "anyOf": [
1944
+ {
1945
+ "$ref": "#/definitions/threadStatusDetail"
1946
+ },
1947
+ {
1948
+ "type": "null"
1949
+ }
1950
+ ]
1951
+ },
1952
+ "assignee": {
1953
+ "anyOf": [
1954
+ {
1955
+ "$ref": "#/definitions/threadAssignee"
1956
+ },
1957
+ {
1958
+ "type": "null"
1959
+ }
1960
+ ]
1961
+ },
1962
+ "assignedAt": {
1963
+ "anyOf": [
1964
+ {
1965
+ "$ref": "#/definitions/datetime"
1966
+ },
1967
+ {
1968
+ "type": "null"
1969
+ }
1970
+ ]
1971
+ },
1972
+ "additionalAssignees": {
1973
+ "type": "array",
1974
+ "items": {
1975
+ "$ref": "#/definitions/threadAssignee"
1976
+ },
1977
+ "default": []
1978
+ },
1979
+ "labels": {
1980
+ "type": "array",
1981
+ "items": {
1982
+ "$ref": "#/definitions/label"
1983
+ }
1984
+ },
1985
+ "firstInboundMessageInfo": {
1986
+ "anyOf": [
1987
+ {
1988
+ "$ref": "#/definitions/threadMessageInfo"
1989
+ },
1990
+ {
1991
+ "type": "null"
1992
+ }
1993
+ ]
1994
+ },
1995
+ "firstOutboundMessageInfo": {
1996
+ "anyOf": [
1997
+ {
1998
+ "$ref": "#/definitions/threadMessageInfo"
1999
+ },
2000
+ {
2001
+ "type": "null"
2002
+ }
2003
+ ]
2004
+ },
2005
+ "lastInboundMessageInfo": {
2006
+ "anyOf": [
2007
+ {
2008
+ "$ref": "#/definitions/threadMessageInfo"
2009
+ },
2010
+ {
2011
+ "type": "null"
2012
+ }
2013
+ ]
2014
+ },
2015
+ "lastOutboundMessageInfo": {
2016
+ "anyOf": [
2017
+ {
2018
+ "$ref": "#/definitions/threadMessageInfo"
2019
+ },
2020
+ {
2021
+ "type": "null"
2022
+ }
2023
+ ]
2024
+ },
2025
+ "supportEmailAddresses": {
2026
+ "type": "array",
2027
+ "items": {
2028
+ "type": "string"
2029
+ }
2030
+ },
2031
+ "createdAt": {
2032
+ "$ref": "#/definitions/datetime"
2033
+ },
2034
+ "createdBy": {
2035
+ "$ref": "#/definitions/actor"
2036
+ },
2037
+ "updatedAt": {
2038
+ "$ref": "#/definitions/datetime"
2039
+ },
2040
+ "updatedBy": {
2041
+ "$ref": "#/definitions/actor"
2042
+ }
2043
+ },
2044
+ "required": [
2045
+ "id",
2046
+ "customer",
2047
+ "title",
2048
+ "priority",
2049
+ "externalId",
2050
+ "status",
2051
+ "statusChangedAt",
2052
+ "statusDetail",
2053
+ "assignee",
2054
+ "assignedAt",
2055
+ "labels",
2056
+ "firstInboundMessageInfo",
2057
+ "firstOutboundMessageInfo",
2058
+ "lastInboundMessageInfo",
2059
+ "lastOutboundMessageInfo",
2060
+ "supportEmailAddresses",
2061
+ "createdAt",
2062
+ "createdBy",
2063
+ "updatedAt",
2064
+ "updatedBy"
2065
+ ],
2066
+ "additionalProperties": true
2067
+ },
2068
+ "noteEntry": {
2069
+ "type": "object",
2070
+ "properties": {
2071
+ "entryType": {
2072
+ "type": "string",
2073
+ "const": "note"
2074
+ },
2075
+ "noteId": {
2076
+ "$ref": "#/definitions/id"
2077
+ },
2078
+ "text": {
2079
+ "type": "string",
2080
+ "minLength": 1,
2081
+ "maxLength": 10000
2082
+ },
2083
+ "markdown": {
2084
+ "anyOf": [
2085
+ {
2086
+ "type": "string",
2087
+ "minLength": 1,
2088
+ "maxLength": 10000
2089
+ },
2090
+ {
2091
+ "type": "null"
2092
+ }
2093
+ ]
2094
+ }
2095
+ },
2096
+ "required": ["entryType", "noteId", "text", "markdown"],
2097
+ "additionalProperties": true
2098
+ },
2099
+ "chatEntry": {
2100
+ "type": "object",
2101
+ "properties": {
2102
+ "entryType": {
2103
+ "type": "string",
2104
+ "const": "chat"
2105
+ },
2106
+ "chatId": {
2107
+ "$ref": "#/definitions/id"
2108
+ },
2109
+ "text": {
2110
+ "type": ["string", "null"]
2111
+ },
2112
+ "attachments": {
2113
+ "type": "array",
2114
+ "items": {
2115
+ "$ref": "#/definitions/chatEntryAttachment"
2116
+ }
2117
+ },
2118
+ "customerReadAt": {
2119
+ "anyOf": [
2120
+ {
2121
+ "$ref": "#/definitions/datetime"
2122
+ },
2123
+ {
2124
+ "type": "null"
2125
+ }
2126
+ ]
2127
+ }
2128
+ },
2129
+ "required": ["entryType", "chatId", "text", "attachments", "customerReadAt"],
2130
+ "additionalProperties": true
2131
+ },
2132
+ "emailEntry": {
2133
+ "type": "object",
2134
+ "properties": {
2135
+ "entryType": {
2136
+ "type": "string",
2137
+ "const": "email"
2138
+ },
2139
+ "emailId": {
2140
+ "$ref": "#/definitions/id"
2141
+ },
2142
+ "to": {
2143
+ "$ref": "#/definitions/emailParticipant"
2144
+ },
2145
+ "from": {
2146
+ "$ref": "#/definitions/emailParticipant"
2147
+ },
2148
+ "additionalRecipients": {
2149
+ "type": "array",
2150
+ "items": {
2151
+ "$ref": "#/definitions/emailParticipant"
2152
+ }
2153
+ },
2154
+ "hiddenRecipients": {
2155
+ "type": "array",
2156
+ "items": {
2157
+ "$ref": "#/definitions/emailParticipant"
2158
+ }
2159
+ },
2160
+ "subject": {
2161
+ "type": ["string", "null"]
2162
+ },
2163
+ "textContent": {
2164
+ "type": ["string", "null"]
2165
+ },
2166
+ "hasMoreTextContent": {
2167
+ "type": "boolean"
2168
+ },
2169
+ "markdownContent": {
2170
+ "type": ["string", "null"]
2171
+ },
2172
+ "hasMoreMarkdownContent": {
2173
+ "type": "boolean"
2174
+ },
2175
+ "authenticity": {
2176
+ "$ref": "#/definitions/emailAuthenticity"
2177
+ },
2178
+ "sentAt": {
2179
+ "anyOf": [
2180
+ {
2181
+ "$ref": "#/definitions/datetime"
2182
+ },
2183
+ {
2184
+ "type": "null"
2185
+ }
2186
+ ]
2187
+ },
2188
+ "receivedAt": {
2189
+ "anyOf": [
2190
+ {
2191
+ "$ref": "#/definitions/datetime"
2192
+ },
2193
+ {
2194
+ "type": "null"
2195
+ }
2196
+ ]
2197
+ },
2198
+ "attachments": {
2199
+ "type": "array",
2200
+ "items": {
2201
+ "$ref": "#/definitions/emailEntryAttachment"
2202
+ }
2203
+ },
2204
+ "inReplyToEmailId": {
2205
+ "type": ["string", "null"]
2206
+ },
2207
+ "isStartOfThread": {
2208
+ "type": "boolean"
2209
+ }
2210
+ },
2211
+ "required": [
2212
+ "entryType",
2213
+ "emailId",
2214
+ "to",
2215
+ "from",
2216
+ "additionalRecipients",
2217
+ "hiddenRecipients",
2218
+ "subject",
2219
+ "textContent",
2220
+ "hasMoreTextContent",
2221
+ "markdownContent",
2222
+ "hasMoreMarkdownContent",
2223
+ "authenticity",
2224
+ "sentAt",
2225
+ "receivedAt",
2226
+ "attachments",
2227
+ "inReplyToEmailId",
2228
+ "isStartOfThread"
2229
+ ],
2230
+ "additionalProperties": true
2231
+ },
2232
+ "customEntry": {
2233
+ "type": "object",
2234
+ "properties": {
2235
+ "entryType": {
2236
+ "type": "string",
2237
+ "const": "custom"
2238
+ },
2239
+ "externalId": {
2240
+ "anyOf": [
2241
+ {
2242
+ "type": "string",
2243
+ "minLength": 1,
2244
+ "maxLength": 500
2245
+ },
2246
+ {
2247
+ "type": "null"
2248
+ }
2249
+ ]
2250
+ },
2251
+ "title": {
2252
+ "type": "string",
2253
+ "maxLength": 500
2254
+ },
2255
+ "type": {
2256
+ "type": ["string", "null"]
2257
+ },
2258
+ "components": {
2259
+ "type": "array",
2260
+ "items": {
2261
+ "$ref": "#/definitions/component"
2262
+ }
2263
+ },
2264
+ "attachments": {
2265
+ "type": "array",
2266
+ "items": {
2267
+ "$ref": "#/definitions/customEntryAttachment"
2268
+ }
2269
+ }
2270
+ },
2271
+ "required": ["entryType", "externalId", "title", "type", "components", "attachments"],
2272
+ "additionalProperties": true
2273
+ },
2274
+ "timelineEntry": {
2275
+ "type": "object",
2276
+ "properties": {
2277
+ "id": {
2278
+ "$ref": "#/definitions/id"
2279
+ },
2280
+ "customerId": {
2281
+ "$ref": "#/definitions/id"
2282
+ },
2283
+ "threadId": {
2284
+ "anyOf": [
2285
+ {
2286
+ "$ref": "#/definitions/id"
2287
+ },
2288
+ {
2289
+ "type": "null"
2290
+ }
2291
+ ],
2292
+ "default": null
2293
+ },
2294
+ "timestamp": {
2295
+ "$ref": "#/definitions/datetime"
2296
+ },
2297
+ "actor": {
2298
+ "$ref": "#/definitions/actor"
2299
+ },
2300
+ "entry": {
2301
+ "anyOf": [
2302
+ {
2303
+ "type": "object",
2304
+ "properties": {
2305
+ "entryType": {
2306
+ "type": "string",
2307
+ "const": "UNKNOWN"
2308
+ }
2309
+ },
2310
+ "required": ["entryType"],
2311
+ "additionalProperties": true
2312
+ },
2313
+ {
2314
+ "$ref": "#/definitions/noteEntry"
2315
+ },
2316
+ {
2317
+ "$ref": "#/definitions/chatEntry"
2318
+ },
2319
+ {
2320
+ "$ref": "#/definitions/emailEntry"
2321
+ },
2322
+ {
2323
+ "$ref": "#/definitions/customEntry"
2324
+ }
2325
+ ]
2326
+ }
2327
+ },
2328
+ "required": ["id", "customerId", "timestamp", "actor", "entry"],
2329
+ "additionalProperties": true
2330
+ },
2331
+ "serviceLevelAgreementStatusDetail": {
2332
+ "anyOf": [
2333
+ {
2334
+ "type": "object",
2335
+ "properties": {
2336
+ "status": {
2337
+ "type": "string",
2338
+ "const": "UNKNOWN"
2339
+ }
2340
+ },
2341
+ "required": ["status"],
2342
+ "additionalProperties": true
2343
+ },
2344
+ {
2345
+ "type": "object",
2346
+ "properties": {
2347
+ "breachTime": {
2348
+ "$ref": "#/definitions/datetime"
2349
+ },
2350
+ "status": {
2351
+ "type": "string",
2352
+ "const": "PENDING"
2353
+ }
2354
+ },
2355
+ "required": ["breachTime", "status"],
2356
+ "additionalProperties": true
2357
+ },
2358
+ {
2359
+ "type": "object",
2360
+ "properties": {
2361
+ "achievedAt": {
2362
+ "$ref": "#/definitions/datetime"
2363
+ },
2364
+ "status": {
2365
+ "type": "string",
2366
+ "const": "ACHIEVED"
2367
+ }
2368
+ },
2369
+ "required": ["achievedAt", "status"],
2370
+ "additionalProperties": true
2371
+ },
2372
+ {
2373
+ "type": "object",
2374
+ "properties": {
2375
+ "breachTime": {
2376
+ "$ref": "#/definitions/datetime"
2377
+ },
2378
+ "status": {
2379
+ "type": "string",
2380
+ "const": "IMMINENT_BREACH"
2381
+ }
2382
+ },
2383
+ "required": ["breachTime", "status"],
2384
+ "additionalProperties": true
2385
+ },
2386
+ {
2387
+ "type": "object",
2388
+ "properties": {
2389
+ "breachedAt": {
2390
+ "$ref": "#/definitions/datetime"
2391
+ },
2392
+ "status": {
2393
+ "type": "string",
2394
+ "const": "BREACHING"
2395
+ }
2396
+ },
2397
+ "required": ["breachedAt", "status"],
2398
+ "additionalProperties": true
2399
+ },
2400
+ {
2401
+ "type": "object",
2402
+ "properties": {
2403
+ "breachedAt": {
2404
+ "$ref": "#/definitions/datetime"
2405
+ },
2406
+ "completedAt": {
2407
+ "$ref": "#/definitions/datetime"
2408
+ },
2409
+ "status": {
2410
+ "type": "string",
2411
+ "const": "BREACHED"
2412
+ }
2413
+ },
2414
+ "required": ["breachedAt", "completedAt", "status"],
2415
+ "additionalProperties": true
2416
+ },
2417
+ {
2418
+ "type": "object",
2419
+ "properties": {
2420
+ "cancelledAt": {
2421
+ "$ref": "#/definitions/datetime"
2422
+ },
2423
+ "status": {
2424
+ "type": "string",
2425
+ "const": "CANCELLED"
2426
+ }
2427
+ },
2428
+ "required": ["cancelledAt", "status"],
2429
+ "additionalProperties": true
2430
+ }
2431
+ ]
2432
+ },
2433
+ "serviceLevelAgreement": {
2434
+ "anyOf": [
2435
+ {
2436
+ "type": "object",
2437
+ "properties": {
2438
+ "type": {
2439
+ "type": "string",
2440
+ "const": "UNKNOWN"
2441
+ }
2442
+ },
2443
+ "required": ["type"],
2444
+ "additionalProperties": true
2445
+ },
2446
+ {
2447
+ "type": "object",
2448
+ "properties": {
2449
+ "id": {
2450
+ "$ref": "#/definitions/id"
2451
+ },
2452
+ "tier": {
2453
+ "$ref": "#/definitions/tier"
2454
+ },
2455
+ "useBusinessHoursOnly": {
2456
+ "type": "boolean"
2457
+ },
2458
+ "threadPriorityFilter": {
2459
+ "$ref": "#/definitions/threadPriorityFilter"
2460
+ },
2461
+ "createdAt": {
2462
+ "$ref": "#/definitions/datetime"
2463
+ },
2464
+ "createdBy": {
2465
+ "$ref": "#/definitions/internalActor"
2466
+ },
2467
+ "updatedAt": {
2468
+ "$ref": "#/definitions/datetime"
2469
+ },
2470
+ "updatedBy": {
2471
+ "$ref": "#/definitions/internalActor"
2472
+ },
2473
+ "type": {
2474
+ "type": "string",
2475
+ "const": "FIRST_RESPONSE_TIME"
2476
+ },
2477
+ "firstResponseTimeMinutes": {
2478
+ "type": "number"
2479
+ }
2480
+ },
2481
+ "required": [
2482
+ "id",
2483
+ "tier",
2484
+ "useBusinessHoursOnly",
2485
+ "threadPriorityFilter",
2486
+ "createdAt",
2487
+ "createdBy",
2488
+ "updatedAt",
2489
+ "updatedBy",
2490
+ "type",
2491
+ "firstResponseTimeMinutes"
2492
+ ],
2493
+ "additionalProperties": true
2494
+ },
2495
+ {
2496
+ "type": "object",
2497
+ "properties": {
2498
+ "id": {
2499
+ "$ref": "#/definitions/id"
2500
+ },
2501
+ "tier": {
2502
+ "$ref": "#/definitions/tier"
2503
+ },
2504
+ "useBusinessHoursOnly": {
2505
+ "$ref": "#/definitions/serviceLevelAgreement/anyOf/1/properties/useBusinessHoursOnly"
2506
+ },
2507
+ "threadPriorityFilter": {
2508
+ "$ref": "#/definitions/threadPriorityFilter"
2509
+ },
2510
+ "createdAt": {
2511
+ "$ref": "#/definitions/datetime"
2512
+ },
2513
+ "createdBy": {
2514
+ "$ref": "#/definitions/internalActor"
2515
+ },
2516
+ "updatedAt": {
2517
+ "$ref": "#/definitions/datetime"
2518
+ },
2519
+ "updatedBy": {
2520
+ "$ref": "#/definitions/internalActor"
2521
+ },
2522
+ "type": {
2523
+ "type": "string",
2524
+ "const": "NEXT_RESPONSE_TIME"
2525
+ },
2526
+ "nextResponseTimeMinutes": {
2527
+ "type": "number"
2528
+ }
2529
+ },
2530
+ "required": [
2531
+ "id",
2532
+ "tier",
2533
+ "useBusinessHoursOnly",
2534
+ "threadPriorityFilter",
2535
+ "createdAt",
2536
+ "createdBy",
2537
+ "updatedAt",
2538
+ "updatedBy",
2539
+ "type",
2540
+ "nextResponseTimeMinutes"
2541
+ ],
2542
+ "additionalProperties": true
2543
+ }
2544
+ ]
2545
+ },
2546
+ "slackMessage": {
2547
+ "type": "object",
2548
+ "properties": {
2549
+ "timelineEntryId": {
2550
+ "$ref": "#/definitions/id"
2551
+ },
2552
+ "id": {
2553
+ "$ref": "#/definitions/id"
2554
+ },
2555
+ "text": {
2556
+ "type": "string"
2557
+ },
2558
+ "resolvedText": {
2559
+ "type": "string",
2560
+ "default": ""
2561
+ },
2562
+ "attachments": {
2563
+ "type": "array",
2564
+ "items": {
2565
+ "$ref": "#/definitions/attachment"
2566
+ }
2567
+ },
2568
+ "slackChannelId": {
2569
+ "type": "string"
2570
+ },
2571
+ "slackChannelName": {
2572
+ "type": "string"
2573
+ },
2574
+ "slackMessageLink": {
2575
+ "type": "string"
2576
+ },
2577
+ "slackReactions": {
2578
+ "type": "array",
2579
+ "items": {
2580
+ "type": "object",
2581
+ "properties": {
2582
+ "name": {
2583
+ "type": "string"
2584
+ },
2585
+ "actors": {
2586
+ "type": "array",
2587
+ "items": {
2588
+ "type": "object",
2589
+ "properties": {
2590
+ "actorId": {
2591
+ "$ref": "#/definitions/id"
2592
+ },
2593
+ "actorType": {
2594
+ "$ref": "#/definitions/threadMessageInfo/properties/actorType/anyOf/0"
2595
+ },
2596
+ "slackUserId": {
2597
+ "type": "string"
2598
+ }
2599
+ },
2600
+ "required": ["actorId", "actorType", "slackUserId"],
2601
+ "additionalProperties": true
2602
+ }
2603
+ },
2604
+ "imageUrl": {
2605
+ "anyOf": [
2606
+ {
2607
+ "type": "string",
2608
+ "format": "uri"
2609
+ },
2610
+ {
2611
+ "type": "null"
2612
+ }
2613
+ ],
2614
+ "default": null
2615
+ }
2616
+ },
2617
+ "required": ["name", "actors"],
2618
+ "additionalProperties": true
2619
+ },
2620
+ "default": []
2621
+ },
2622
+ "createdAt": {
2623
+ "$ref": "#/definitions/datetime"
2624
+ },
2625
+ "createdBy": {
2626
+ "$ref": "#/definitions/actor"
2627
+ },
2628
+ "updatedAt": {
2629
+ "$ref": "#/definitions/datetime"
2630
+ },
2631
+ "updatedBy": {
2632
+ "$ref": "#/definitions/actor"
2633
+ }
2634
+ },
2635
+ "required": [
2636
+ "timelineEntryId",
2637
+ "id",
2638
+ "text",
2639
+ "attachments",
2640
+ "slackChannelId",
2641
+ "slackChannelName",
2642
+ "slackMessageLink",
2643
+ "createdAt",
2644
+ "createdBy",
2645
+ "updatedAt",
2646
+ "updatedBy"
2647
+ ],
2648
+ "additionalProperties": true
2649
+ },
2650
+ "slackReactionChange": {
2651
+ "type": "object",
2652
+ "properties": {
2653
+ "changeType": {
2654
+ "type": "string",
2655
+ "enum": ["ADDED", "REMOVED", "UNKNOWN_SLACK_REACTION_CHANGE_TYPE"]
2656
+ },
2657
+ "reaction": {
2658
+ "$ref": "#/definitions/slackMessage/properties/slackReactions/items"
2659
+ }
2660
+ },
2661
+ "required": ["changeType", "reaction"],
2662
+ "additionalProperties": true
2663
+ },
2664
+ "discordMessage": {
2665
+ "type": "object",
2666
+ "properties": {
2667
+ "timelineEntryId": {
2668
+ "$ref": "#/definitions/id"
2669
+ },
2670
+ "id": {
2671
+ "$ref": "#/definitions/id"
2672
+ },
2673
+ "discordGuildId": {
2674
+ "type": "string"
2675
+ },
2676
+ "discordChannelId": {
2677
+ "type": "string"
2678
+ },
2679
+ "discordThreadId": {
2680
+ "type": "string"
2681
+ },
2682
+ "discordId": {
2683
+ "type": "string"
2684
+ },
2685
+ "discordTimestamp": {
2686
+ "$ref": "#/definitions/datetime"
2687
+ },
2688
+ "textContent": {
2689
+ "type": "string"
2690
+ },
2691
+ "attachments": {
2692
+ "type": "array",
2693
+ "items": {
2694
+ "$ref": "#/definitions/attachment"
2695
+ },
2696
+ "default": []
2697
+ },
2698
+ "lastEditedOnDiscordAt": {
2699
+ "anyOf": [
2700
+ {
2701
+ "$ref": "#/definitions/datetime"
2702
+ },
2703
+ {
2704
+ "type": "null"
2705
+ }
2706
+ ],
2707
+ "default": null
2708
+ },
2709
+ "deletedOnDiscordAt": {
2710
+ "anyOf": [
2711
+ {
2712
+ "$ref": "#/definitions/datetime"
2713
+ },
2714
+ {
2715
+ "type": "null"
2716
+ }
2717
+ ],
2718
+ "default": null
2719
+ },
2720
+ "createdAt": {
2721
+ "$ref": "#/definitions/datetime"
2722
+ },
2723
+ "createdBy": {
2724
+ "$ref": "#/definitions/actor"
2725
+ },
2726
+ "updatedAt": {
2727
+ "$ref": "#/definitions/datetime"
2728
+ },
2729
+ "updatedBy": {
2730
+ "$ref": "#/definitions/actor"
2731
+ }
2732
+ },
2733
+ "required": [
2734
+ "timelineEntryId",
2735
+ "id",
2736
+ "discordGuildId",
2737
+ "discordChannelId",
2738
+ "discordThreadId",
2739
+ "discordId",
2740
+ "discordTimestamp",
2741
+ "textContent",
2742
+ "createdAt",
2743
+ "createdBy",
2744
+ "updatedAt",
2745
+ "updatedBy"
2746
+ ],
2747
+ "additionalProperties": true
2748
+ },
2749
+ "msTeamsMessage": {
2750
+ "type": "object",
2751
+ "properties": {
2752
+ "timelineEntryId": {
2753
+ "$ref": "#/definitions/id"
2754
+ },
2755
+ "threadId": {
2756
+ "$ref": "#/definitions/id"
2757
+ },
2758
+ "msTeamsMessageId": {
2759
+ "type": "string"
2760
+ },
2761
+ "type": {
2762
+ "anyOf": [
2763
+ {
2764
+ "type": "string",
2765
+ "enum": ["INBOUND", "OUTBOUND", "UNKNOWN_MS_TEAMS_MESSAGE_TYPE"]
2766
+ },
2767
+ {
2768
+ "type": "null"
2769
+ }
2770
+ ]
2771
+ },
2772
+ "text": {
2773
+ "type": "string"
2774
+ },
2775
+ "attachments": {
2776
+ "type": "array",
2777
+ "items": {
2778
+ "$ref": "#/definitions/attachment"
2779
+ }
2780
+ },
2781
+ "lastEditedOnMsTeamsAt": {
2782
+ "anyOf": [
2783
+ {
2784
+ "$ref": "#/definitions/datetime"
2785
+ },
2786
+ {
2787
+ "type": "null"
2788
+ }
2789
+ ]
2790
+ },
2791
+ "deletedOnMsTeamsAt": {
2792
+ "anyOf": [
2793
+ {
2794
+ "$ref": "#/definitions/datetime"
2795
+ },
2796
+ {
2797
+ "type": "null"
2798
+ }
2799
+ ]
2800
+ },
2801
+ "createdAt": {
2802
+ "$ref": "#/definitions/datetime"
2803
+ },
2804
+ "createdBy": {
2805
+ "$ref": "#/definitions/actor"
2806
+ },
2807
+ "updatedAt": {
2808
+ "$ref": "#/definitions/datetime"
2809
+ },
2810
+ "updatedBy": {
2811
+ "$ref": "#/definitions/actor"
2812
+ }
2813
+ },
2814
+ "required": [
2815
+ "timelineEntryId",
2816
+ "threadId",
2817
+ "msTeamsMessageId",
2818
+ "type",
2819
+ "text",
2820
+ "attachments",
2821
+ "lastEditedOnMsTeamsAt",
2822
+ "deletedOnMsTeamsAt",
2823
+ "createdAt",
2824
+ "createdBy",
2825
+ "updatedAt",
2826
+ "updatedBy"
2827
+ ],
2828
+ "additionalProperties": true
2829
+ },
2830
+ "customerChangedPayload": {
2831
+ "type": "object",
2832
+ "properties": {
2833
+ "changeType": {
2834
+ "type": "string",
2835
+ "enum": ["ADDED", "UPDATED"]
2836
+ },
2837
+ "eventType": {
2838
+ "type": "string",
2839
+ "const": "customer.customer_changed"
2840
+ },
2841
+ "customer": {
2842
+ "$ref": "#/definitions/customer"
2843
+ },
2844
+ "previousCustomer": {
2845
+ "anyOf": [
2846
+ {
2847
+ "$ref": "#/definitions/customer"
2848
+ },
2849
+ {
2850
+ "type": "null"
2851
+ }
2852
+ ]
2853
+ }
2854
+ },
2855
+ "required": ["changeType", "eventType", "customer", "previousCustomer"],
2856
+ "additionalProperties": true,
2857
+ "description": "A customer has been created or updated"
2858
+ },
2859
+ "timelineEntryChangedPayload": {
2860
+ "type": "object",
2861
+ "properties": {
2862
+ "eventType": {
2863
+ "type": "string",
2864
+ "const": "timeline.timeline_entry_changed"
2865
+ },
2866
+ "previousTimelineEntry": {
2867
+ "anyOf": [
2868
+ {
2869
+ "$ref": "#/definitions/timelineEntry"
2870
+ },
2871
+ {
2872
+ "type": "null"
2873
+ }
2874
+ ],
2875
+ "description": "null if changeType=ADDED"
2876
+ },
2877
+ "timelineEntry": {
2878
+ "anyOf": [
2879
+ {
2880
+ "$ref": "#/definitions/timelineEntry"
2881
+ },
2882
+ {
2883
+ "type": "null"
2884
+ }
2885
+ ],
2886
+ "description": "null if changeType=REMOVED"
2887
+ },
2888
+ "changeType": {
2889
+ "type": "string",
2890
+ "enum": ["ADDED", "UPDATED", "REMOVED"]
2891
+ }
2892
+ },
2893
+ "required": ["eventType", "previousTimelineEntry", "timelineEntry", "changeType"],
2894
+ "additionalProperties": true,
2895
+ "description": "A timeline entry has been added, updated or removed"
2896
+ },
2897
+ "webhookMetadata": {
2898
+ "type": "object",
2899
+ "properties": {
2900
+ "webhookTargetId": {
2901
+ "$ref": "#/definitions/id"
2902
+ },
2903
+ "webhookTargetVersion": {
2904
+ "type": "string",
2905
+ "const": "2026-04-21"
2906
+ },
2907
+ "webhookDeliveryAttemptId": {
2908
+ "$ref": "#/definitions/id"
2909
+ },
2910
+ "webhookDeliveryAttemptNumber": {
2911
+ "type": "integer",
2912
+ "exclusiveMinimum": 0
2913
+ },
2914
+ "webhookDeliveryAttemptTimestamp": {
2915
+ "$ref": "#/definitions/datetime"
2916
+ }
2917
+ },
2918
+ "required": [
2919
+ "webhookTargetId",
2920
+ "webhookTargetVersion",
2921
+ "webhookDeliveryAttemptId",
2922
+ "webhookDeliveryAttemptNumber",
2923
+ "webhookDeliveryAttemptTimestamp"
2924
+ ],
2925
+ "additionalProperties": true
2926
+ },
2927
+ "customerGroupMembershipsChangedPayload": {
2928
+ "type": "object",
2929
+ "properties": {
2930
+ "eventType": {
2931
+ "type": "string",
2932
+ "const": "customer.customer_group_memberships_changed"
2933
+ },
2934
+ "changeType": {
2935
+ "type": "string",
2936
+ "enum": ["ADDED", "REMOVED"]
2937
+ },
2938
+ "customer": {
2939
+ "$ref": "#/definitions/customer"
2940
+ },
2941
+ "previousCustomer": {
2942
+ "$ref": "#/definitions/customer"
2943
+ }
2944
+ },
2945
+ "required": ["eventType", "changeType", "customer", "previousCustomer"],
2946
+ "additionalProperties": true
2947
+ },
2948
+ "customerGroupChangedPayload": {
2949
+ "anyOf": [
2950
+ {
2951
+ "type": "object",
2952
+ "properties": {
2953
+ "changeType": {
2954
+ "type": "string",
2955
+ "const": "ADDED"
2956
+ },
2957
+ "eventType": {
2958
+ "type": "string",
2959
+ "const": "customer.customer_group_changed"
2960
+ },
2961
+ "customerGroup": {
2962
+ "$ref": "#/definitions/customerGroup"
2963
+ }
2964
+ },
2965
+ "required": ["changeType", "eventType", "customerGroup"],
2966
+ "additionalProperties": true
2967
+ },
2968
+ {
2969
+ "type": "object",
2970
+ "properties": {
2971
+ "changeType": {
2972
+ "type": "string",
2973
+ "const": "UPDATED"
2974
+ },
2975
+ "eventType": {
2976
+ "type": "string",
2977
+ "const": "customer.customer_group_changed"
2978
+ },
2979
+ "customerGroup": {
2980
+ "$ref": "#/definitions/customerGroup"
2981
+ },
2982
+ "previousCustomerGroup": {
2983
+ "$ref": "#/definitions/customerGroup"
2984
+ }
2985
+ },
2986
+ "required": ["changeType", "eventType", "customerGroup", "previousCustomerGroup"],
2987
+ "additionalProperties": true
2988
+ },
2989
+ {
2990
+ "type": "object",
2991
+ "properties": {
2992
+ "changeType": {
2993
+ "type": "string",
2994
+ "const": "REMOVED"
2995
+ },
2996
+ "eventType": {
2997
+ "type": "string",
2998
+ "const": "customer.customer_group_changed"
2999
+ },
3000
+ "previousCustomerGroup": {
3001
+ "$ref": "#/definitions/customerGroup"
3002
+ }
3003
+ },
3004
+ "required": ["changeType", "eventType", "previousCustomerGroup"],
3005
+ "additionalProperties": true
3006
+ }
3007
+ ]
3008
+ },
3009
+ "threadCreatedPublicEventPayload": {
3010
+ "type": "object",
3011
+ "properties": {
3012
+ "eventType": {
3013
+ "type": "string",
3014
+ "const": "thread.thread_created"
3015
+ },
3016
+ "thread": {
3017
+ "$ref": "#/definitions/thread"
3018
+ }
3019
+ },
3020
+ "required": ["eventType", "thread"],
3021
+ "additionalProperties": true
3022
+ },
3023
+ "threadStatusTransitionedPublicEventPayload": {
3024
+ "type": "object",
3025
+ "properties": {
3026
+ "eventType": {
3027
+ "type": "string",
3028
+ "const": "thread.thread_status_transitioned"
3029
+ },
3030
+ "previousThread": {
3031
+ "$ref": "#/definitions/thread"
3032
+ },
3033
+ "thread": {
3034
+ "$ref": "#/definitions/thread"
3035
+ }
3036
+ },
3037
+ "required": ["eventType", "previousThread", "thread"],
3038
+ "additionalProperties": true
3039
+ },
3040
+ "threadAssignmentTransitionedPublicEventPayload": {
3041
+ "type": "object",
3042
+ "properties": {
3043
+ "eventType": {
3044
+ "type": "string",
3045
+ "const": "thread.thread_assignment_transitioned"
3046
+ },
3047
+ "previousThread": {
3048
+ "$ref": "#/definitions/thread"
3049
+ },
3050
+ "thread": {
3051
+ "$ref": "#/definitions/thread"
3052
+ }
3053
+ },
3054
+ "required": ["eventType", "previousThread", "thread"],
3055
+ "additionalProperties": true
3056
+ },
3057
+ "threadEmailReceivedPublicEventPayload": {
3058
+ "type": "object",
3059
+ "properties": {
3060
+ "eventType": {
3061
+ "type": "string",
3062
+ "const": "thread.email_received"
3063
+ },
3064
+ "thread": {
3065
+ "$ref": "#/definitions/thread"
3066
+ },
3067
+ "email": {
3068
+ "$ref": "#/definitions/email"
3069
+ }
3070
+ },
3071
+ "required": ["eventType", "thread", "email"],
3072
+ "additionalProperties": true
3073
+ },
3074
+ "threadEmailSentPublicEventPayload": {
3075
+ "type": "object",
3076
+ "properties": {
3077
+ "eventType": {
3078
+ "type": "string",
3079
+ "const": "thread.email_sent"
3080
+ },
3081
+ "thread": {
3082
+ "$ref": "#/definitions/thread"
3083
+ },
3084
+ "email": {
3085
+ "$ref": "#/definitions/email"
3086
+ }
3087
+ },
3088
+ "required": ["eventType", "thread", "email"],
3089
+ "additionalProperties": true
3090
+ },
3091
+ "threadLabelsChangedPublicEventPayload": {
3092
+ "type": "object",
3093
+ "properties": {
3094
+ "eventType": {
3095
+ "type": "string",
3096
+ "const": "thread.thread_labels_changed"
3097
+ },
3098
+ "changeType": {
3099
+ "type": "string",
3100
+ "enum": ["ADDED", "REMOVED"]
3101
+ },
3102
+ "thread": {
3103
+ "$ref": "#/definitions/thread"
3104
+ },
3105
+ "previousThread": {
3106
+ "$ref": "#/definitions/thread"
3107
+ }
3108
+ },
3109
+ "required": ["eventType", "changeType", "thread", "previousThread"],
3110
+ "additionalProperties": true
3111
+ },
3112
+ "threadPriorityChangedPublicEventPayload": {
3113
+ "type": "object",
3114
+ "properties": {
3115
+ "eventType": {
3116
+ "type": "string",
3117
+ "const": "thread.thread_priority_changed"
3118
+ },
3119
+ "previousThread": {
3120
+ "$ref": "#/definitions/thread"
3121
+ },
3122
+ "thread": {
3123
+ "$ref": "#/definitions/thread"
3124
+ }
3125
+ },
3126
+ "required": ["eventType", "previousThread", "thread"],
3127
+ "additionalProperties": true
3128
+ },
3129
+ "threadFieldCreatedPublicEventPayload": {
3130
+ "type": "object",
3131
+ "properties": {
3132
+ "eventType": {
3133
+ "type": "string",
3134
+ "const": "thread.thread_field_created"
3135
+ },
3136
+ "thread": {
3137
+ "$ref": "#/definitions/thread"
3138
+ },
3139
+ "threadField": {
3140
+ "$ref": "#/definitions/threadField"
3141
+ }
3142
+ },
3143
+ "required": ["eventType", "thread", "threadField"],
3144
+ "additionalProperties": true
3145
+ },
3146
+ "threadFieldUpdatedPublicEventPayload": {
3147
+ "type": "object",
3148
+ "properties": {
3149
+ "eventType": {
3150
+ "type": "string",
3151
+ "const": "thread.thread_field_updated"
3152
+ },
3153
+ "thread": {
3154
+ "$ref": "#/definitions/thread"
3155
+ },
3156
+ "previousThreadField": {
3157
+ "$ref": "#/definitions/threadField"
3158
+ },
3159
+ "threadField": {
3160
+ "$ref": "#/definitions/threadField"
3161
+ }
3162
+ },
3163
+ "required": ["eventType", "thread", "previousThreadField", "threadField"],
3164
+ "additionalProperties": true
3165
+ },
3166
+ "threadFieldDeletedPublicEventPayload": {
3167
+ "type": "object",
3168
+ "properties": {
3169
+ "eventType": {
3170
+ "type": "string",
3171
+ "const": "thread.thread_field_deleted"
3172
+ },
3173
+ "thread": {
3174
+ "$ref": "#/definitions/thread"
3175
+ },
3176
+ "previousThreadField": {
3177
+ "$ref": "#/definitions/threadField"
3178
+ }
3179
+ },
3180
+ "required": ["eventType", "thread", "previousThreadField"],
3181
+ "additionalProperties": true
3182
+ },
3183
+ "threadChatSentPublicEventPayload": {
3184
+ "type": "object",
3185
+ "properties": {
3186
+ "eventType": {
3187
+ "type": "string",
3188
+ "const": "thread.chat_sent"
3189
+ },
3190
+ "chat": {
3191
+ "$ref": "#/definitions/chat"
3192
+ },
3193
+ "thread": {
3194
+ "$ref": "#/definitions/thread"
3195
+ }
3196
+ },
3197
+ "required": ["eventType", "chat", "thread"],
3198
+ "additionalProperties": true
3199
+ },
3200
+ "threadChatReceivedPublicEventPayload": {
3201
+ "type": "object",
3202
+ "properties": {
3203
+ "eventType": {
3204
+ "type": "string",
3205
+ "const": "thread.chat_received"
3206
+ },
3207
+ "chat": {
3208
+ "$ref": "#/definitions/chat"
3209
+ },
3210
+ "thread": {
3211
+ "$ref": "#/definitions/thread"
3212
+ }
3213
+ },
3214
+ "required": ["eventType", "chat", "thread"],
3215
+ "additionalProperties": true
3216
+ },
3217
+ "threadNoteCreatedEventPayload": {
3218
+ "type": "object",
3219
+ "properties": {
3220
+ "eventType": {
3221
+ "type": "string",
3222
+ "const": "thread.note_created"
3223
+ },
3224
+ "thread": {
3225
+ "$ref": "#/definitions/thread"
3226
+ },
3227
+ "note": {
3228
+ "type": "object",
3229
+ "properties": {
3230
+ "timelineEntryId": {
3231
+ "$ref": "#/definitions/id"
3232
+ },
3233
+ "id": {
3234
+ "$ref": "#/definitions/id"
3235
+ },
3236
+ "text": {
3237
+ "type": "string",
3238
+ "minLength": 1,
3239
+ "maxLength": 10000
3240
+ },
3241
+ "markdown": {
3242
+ "anyOf": [
3243
+ {
3244
+ "type": "string",
3245
+ "minLength": 1,
3246
+ "maxLength": 10000
3247
+ },
3248
+ {
3249
+ "type": "null"
3250
+ }
3251
+ ]
3252
+ },
3253
+ "createdAt": {
3254
+ "$ref": "#/definitions/datetime"
3255
+ },
3256
+ "createdBy": {
3257
+ "$ref": "#/definitions/internalActor"
3258
+ },
3259
+ "updatedAt": {
3260
+ "$ref": "#/definitions/datetime"
3261
+ },
3262
+ "updatedBy": {
3263
+ "$ref": "#/definitions/internalActor"
3264
+ },
3265
+ "deletedAt": {
3266
+ "$ref": "#/definitions/nullableDatetime"
3267
+ },
3268
+ "deletedBy": {
3269
+ "$ref": "#/definitions/nullableInternalActor"
3270
+ }
3271
+ },
3272
+ "required": [
3273
+ "timelineEntryId",
3274
+ "id",
3275
+ "text",
3276
+ "markdown",
3277
+ "createdAt",
3278
+ "createdBy",
3279
+ "updatedAt",
3280
+ "updatedBy",
3281
+ "deletedAt",
3282
+ "deletedBy"
3283
+ ],
3284
+ "additionalProperties": true
3285
+ }
3286
+ },
3287
+ "required": ["eventType", "thread", "note"],
3288
+ "additionalProperties": true
3289
+ },
3290
+ "threadServiceLevelAgreementStatusTransitionedPayload": {
3291
+ "type": "object",
3292
+ "properties": {
3293
+ "eventType": {
3294
+ "type": "string",
3295
+ "const": "thread.service_level_agreement_status_transitioned"
3296
+ },
3297
+ "thread": {
3298
+ "$ref": "#/definitions/thread"
3299
+ },
3300
+ "serviceLevelAgreement": {
3301
+ "$ref": "#/definitions/serviceLevelAgreement"
3302
+ },
3303
+ "previousServiceLevelAgreementStatusDetail": {
3304
+ "$ref": "#/definitions/serviceLevelAgreementStatusDetail"
3305
+ },
3306
+ "serviceLevelAgreementStatusDetail": {
3307
+ "$ref": "#/definitions/serviceLevelAgreementStatusDetail"
3308
+ }
3309
+ },
3310
+ "required": [
3311
+ "eventType",
3312
+ "thread",
3313
+ "serviceLevelAgreement",
3314
+ "previousServiceLevelAgreementStatusDetail",
3315
+ "serviceLevelAgreementStatusDetail"
3316
+ ],
3317
+ "additionalProperties": true
3318
+ },
3319
+ "threadSlackMessageReceivedEventPayload": {
3320
+ "type": "object",
3321
+ "properties": {
3322
+ "eventType": {
3323
+ "type": "string",
3324
+ "const": "thread.slack_message_received"
3325
+ },
3326
+ "thread": {
3327
+ "$ref": "#/definitions/thread"
3328
+ },
3329
+ "slackMessage": {
3330
+ "$ref": "#/definitions/slackMessage"
3331
+ }
3332
+ },
3333
+ "required": ["eventType", "thread", "slackMessage"],
3334
+ "additionalProperties": true
3335
+ },
3336
+ "threadSlackMessageSentEventPayload": {
3337
+ "type": "object",
3338
+ "properties": {
3339
+ "eventType": {
3340
+ "type": "string",
3341
+ "const": "thread.slack_message_sent"
3342
+ },
3343
+ "thread": {
3344
+ "$ref": "#/definitions/thread"
3345
+ },
3346
+ "slackMessage": {
3347
+ "$ref": "#/definitions/slackMessage"
3348
+ }
3349
+ },
3350
+ "required": ["eventType", "thread", "slackMessage"],
3351
+ "additionalProperties": true
3352
+ },
3353
+ "threadSlackMessageUpdatedEventPayload": {
3354
+ "type": "object",
3355
+ "properties": {
3356
+ "eventType": {
3357
+ "type": "string",
3358
+ "const": "thread.slack_message_updated"
3359
+ },
3360
+ "changeType": {
3361
+ "type": "string",
3362
+ "enum": [
3363
+ "MESSAGE_EDITED",
3364
+ "MESSAGE_DELETED",
3365
+ "REACTIONS_CHANGED",
3366
+ "UNKNOWN_SLACK_MESSAGE_CHANGE_TYPE"
3367
+ ],
3368
+ "default": "UNKNOWN_SLACK_MESSAGE_CHANGE_TYPE"
3369
+ },
3370
+ "thread": {
3371
+ "$ref": "#/definitions/thread"
3372
+ },
3373
+ "slackMessage": {
3374
+ "$ref": "#/definitions/slackMessage"
3375
+ },
3376
+ "reactionChange": {
3377
+ "anyOf": [
3378
+ {
3379
+ "$ref": "#/definitions/slackReactionChange"
3380
+ },
3381
+ {
3382
+ "type": "null"
3383
+ }
3384
+ ],
3385
+ "default": null
3386
+ }
3387
+ },
3388
+ "required": ["eventType", "thread", "slackMessage"],
3389
+ "additionalProperties": true
3390
+ },
3391
+ "threadDiscordMessageReceivedEventPayload": {
3392
+ "type": "object",
3393
+ "properties": {
3394
+ "eventType": {
3395
+ "type": "string",
3396
+ "const": "thread.discord_message_received"
3397
+ },
3398
+ "thread": {
3399
+ "$ref": "#/definitions/thread"
3400
+ },
3401
+ "discordMessage": {
3402
+ "$ref": "#/definitions/discordMessage"
3403
+ }
3404
+ },
3405
+ "required": ["eventType", "thread", "discordMessage"],
3406
+ "additionalProperties": true
3407
+ },
3408
+ "threadDiscordMessageSentEventPayload": {
3409
+ "type": "object",
3410
+ "properties": {
3411
+ "eventType": {
3412
+ "type": "string",
3413
+ "const": "thread.discord_message_sent"
3414
+ },
3415
+ "thread": {
3416
+ "$ref": "#/definitions/thread"
3417
+ },
3418
+ "discordMessage": {
3419
+ "$ref": "#/definitions/discordMessage"
3420
+ }
3421
+ },
3422
+ "required": ["eventType", "thread", "discordMessage"],
3423
+ "additionalProperties": true
3424
+ },
3425
+ "threadDiscordMessageUpdatedEventPayload": {
3426
+ "type": "object",
3427
+ "properties": {
3428
+ "eventType": {
3429
+ "type": "string",
3430
+ "const": "thread.discord_message_updated"
3431
+ },
3432
+ "thread": {
3433
+ "$ref": "#/definitions/thread"
3434
+ },
3435
+ "discordMessage": {
3436
+ "$ref": "#/definitions/discordMessage"
3437
+ }
3438
+ },
3439
+ "required": ["eventType", "thread", "discordMessage"],
3440
+ "additionalProperties": true
3441
+ },
3442
+ "threadMSTeamsMessageReceivedEventPayload": {
3443
+ "type": "object",
3444
+ "properties": {
3445
+ "eventType": {
3446
+ "type": "string",
3447
+ "const": "thread.ms_teams_message_received"
3448
+ },
3449
+ "thread": {
3450
+ "$ref": "#/definitions/thread"
3451
+ },
3452
+ "msTeamsMessage": {
3453
+ "$ref": "#/definitions/msTeamsMessage"
3454
+ }
3455
+ },
3456
+ "required": ["eventType", "thread", "msTeamsMessage"],
3457
+ "additionalProperties": true
3458
+ },
3459
+ "threadMSTeamsMessageSentEventPayload": {
3460
+ "type": "object",
3461
+ "properties": {
3462
+ "eventType": {
3463
+ "type": "string",
3464
+ "const": "thread.ms_teams_message_sent"
3465
+ },
3466
+ "thread": {
3467
+ "$ref": "#/definitions/thread"
3468
+ },
3469
+ "msTeamsMessage": {
3470
+ "$ref": "#/definitions/msTeamsMessage"
3471
+ }
3472
+ },
3473
+ "required": ["eventType", "thread", "msTeamsMessage"],
3474
+ "additionalProperties": true
3475
+ },
3476
+ "customerCreatedPublicEventPayload": {
3477
+ "type": "object",
3478
+ "properties": {
3479
+ "eventType": {
3480
+ "type": "string",
3481
+ "const": "customer.customer_created"
3482
+ },
3483
+ "customer": {
3484
+ "$ref": "#/definitions/customer"
3485
+ }
3486
+ },
3487
+ "required": ["eventType", "customer"],
3488
+ "additionalProperties": true,
3489
+ "description": "A customer has been created"
3490
+ },
3491
+ "customerUpdatedPublicEventPayload": {
3492
+ "type": "object",
3493
+ "properties": {
3494
+ "eventType": {
3495
+ "type": "string",
3496
+ "const": "customer.customer_updated"
3497
+ },
3498
+ "customer": {
3499
+ "$ref": "#/definitions/customer"
3500
+ },
3501
+ "previousCustomer": {
3502
+ "$ref": "#/definitions/customer"
3503
+ }
3504
+ },
3505
+ "required": ["eventType", "customer", "previousCustomer"],
3506
+ "additionalProperties": true,
3507
+ "description": "A customer has been updated"
3508
+ },
3509
+ "customerDeletedPublicEventPayload": {
3510
+ "type": "object",
3511
+ "properties": {
3512
+ "eventType": {
3513
+ "type": "string",
3514
+ "const": "customer.customer_deleted"
3515
+ },
3516
+ "previousCustomer": {
3517
+ "$ref": "#/definitions/customer"
3518
+ }
3519
+ },
3520
+ "required": ["eventType", "previousCustomer"],
3521
+ "additionalProperties": true,
3522
+ "description": "A customer has been deleted"
3523
+ },
3524
+ "threadTenantUpdatedPublicEventPayload": {
3525
+ "type": "object",
3526
+ "properties": {
3527
+ "eventType": {
3528
+ "type": "string",
3529
+ "const": "thread.thread_tenant_updated"
3530
+ },
3531
+ "previousThread": {
3532
+ "$ref": "#/definitions/thread"
3533
+ },
3534
+ "thread": {
3535
+ "$ref": "#/definitions/thread"
3536
+ },
3537
+ "previousTenant": {
3538
+ "anyOf": [
3539
+ {
3540
+ "type": "object",
3541
+ "properties": {
3542
+ "id": {
3543
+ "$ref": "#/definitions/id"
3544
+ },
3545
+ "workspaceId": {
3546
+ "$ref": "#/definitions/id"
3547
+ },
3548
+ "name": {
3549
+ "type": "string"
3550
+ },
3551
+ "externalId": {
3552
+ "type": "string"
3553
+ },
3554
+ "url": {
3555
+ "type": ["string", "null"]
3556
+ },
3557
+ "source": {
3558
+ "type": "string",
3559
+ "enum": ["api", "salesforce", "hubspot", "UNKNOWN_TENANT_SOURCE"],
3560
+ "default": "api"
3561
+ },
3562
+ "createdAt": {
3563
+ "$ref": "#/definitions/datetime"
3564
+ },
3565
+ "createdBy": {
3566
+ "$ref": "#/definitions/actor"
3567
+ },
3568
+ "updatedAt": {
3569
+ "$ref": "#/definitions/datetime"
3570
+ },
3571
+ "updatedBy": {
3572
+ "$ref": "#/definitions/actor"
3573
+ }
3574
+ },
3575
+ "required": [
3576
+ "id",
3577
+ "workspaceId",
3578
+ "name",
3579
+ "externalId",
3580
+ "url",
3581
+ "createdAt",
3582
+ "createdBy",
3583
+ "updatedAt",
3584
+ "updatedBy"
3585
+ ],
3586
+ "additionalProperties": true
3587
+ },
3588
+ {
3589
+ "type": "null"
3590
+ }
3591
+ ]
3592
+ },
3593
+ "tenant": {
3594
+ "anyOf": [
3595
+ {
3596
+ "$ref": "#/definitions/threadTenantUpdatedPublicEventPayload/properties/previousTenant/anyOf/0"
3597
+ },
3598
+ {
3599
+ "type": "null"
3600
+ }
3601
+ ]
3602
+ }
3603
+ },
3604
+ "required": ["eventType", "previousThread", "thread", "previousTenant", "tenant"],
3605
+ "additionalProperties": true
3606
+ }
3607
+ },
3608
+ "$schema": "http://json-schema.org/draft-07/schema#"
3609
+ }