@scout9/admin 1.0.0-alpha.0.0.67 → 1.0.0-alpha.0.0.69

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.
package/src/api.ts CHANGED
@@ -621,12 +621,30 @@ export interface ContextualizerResponse {
621
621
  * @interface Conversation
622
622
  */
623
623
  export interface Conversation {
624
+ /**
625
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
626
+ * @type {string}
627
+ * @memberof Conversation
628
+ */
629
+ '$id'?: string;
630
+ /**
631
+ * Business/organization this conversation belongs to
632
+ * @type {string}
633
+ * @memberof Conversation
634
+ */
635
+ '$business': string;
624
636
  /**
625
637
  * Default agent persona id assigned to the conversation(s)
626
638
  * @type {string}
627
639
  * @memberof Conversation
628
640
  */
629
641
  '$agent': string;
642
+ /**
643
+ * Customer this conversation is with
644
+ * @type {string}
645
+ * @memberof Conversation
646
+ */
647
+ '$customer': string;
630
648
  /**
631
649
  * Initial contexts to load when starting the conversation
632
650
  * @type {Array<string>}
@@ -635,71 +653,125 @@ export interface Conversation {
635
653
  'initialContexts'?: Array<string>;
636
654
  /**
637
655
  *
638
- * @type {ConversationBaseEnvironmentProps}
656
+ * @type {ConversationChannel}
657
+ * @memberof Conversation
658
+ */
659
+ 'channel': ConversationChannel;
660
+ /**
661
+ *
662
+ * @type {ConversationChannelProps}
663
+ * @memberof Conversation
664
+ */
665
+ 'channelProps'?: ConversationChannelProps;
666
+ /**
667
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
668
+ * @type {boolean}
639
669
  * @memberof Conversation
640
670
  */
641
- 'environmentProps'?: ConversationBaseEnvironmentProps;
671
+ 'locked'?: boolean | null;
642
672
  /**
643
- * User for this conversation
673
+ * Machine-readable lock reason.
644
674
  * @type {string}
645
675
  * @memberof Conversation
646
676
  */
647
- '$user': string;
677
+ 'lockCode'?: ConversationLockCodeEnum;
648
678
  /**
649
- * Customer this conversation is with (use $user instead)
679
+ * Human-readable locked reason.
650
680
  * @type {string}
651
681
  * @memberof Conversation
652
- * @deprecated
653
682
  */
654
- '$customer'?: string;
683
+ 'lockedReason'?: string | null;
655
684
  /**
656
- *
657
- * @type {ConversationEnvironment}
685
+ * Number of consecutive workflow/context no-progress attempts.
686
+ * @type {number}
658
687
  * @memberof Conversation
659
688
  */
660
- 'environment': ConversationEnvironment;
689
+ 'lockAttempts'?: number | null;
661
690
  /**
662
- * Whether this conversation is a test or not
663
- * @type {boolean}
691
+ * Contact that received a forward handoff.
692
+ * @type {string}
664
693
  * @memberof Conversation
665
694
  */
666
- 'test'?: boolean;
667
- }
668
-
669
-
670
- /**
671
- *
672
- * @export
673
- * @interface ConversationAllOf
674
- */
675
- export interface ConversationAllOf {
695
+ 'forwardedTo'?: string | null;
676
696
  /**
677
- * User for this conversation
697
+ * ISO 8601 datetime string for when the conversation was forwarded.
678
698
  * @type {string}
679
- * @memberof ConversationAllOf
699
+ * @memberof Conversation
680
700
  */
681
- '$user': string;
701
+ 'forwarded'?: string | null;
682
702
  /**
683
- * Customer this conversation is with (use $user instead)
703
+ * Operator or workflow note attached to the forward.
684
704
  * @type {string}
685
- * @memberof ConversationAllOf
686
- * @deprecated
705
+ * @memberof Conversation
687
706
  */
688
- '$customer'?: string;
707
+ 'forwardNote'?: string | null;
689
708
  /**
690
- *
691
- * @type {ConversationEnvironment}
692
- * @memberof ConversationAllOf
709
+ * ISO 8601 datetime string for when this conversation was initiated.
710
+ * @type {string}
711
+ * @memberof Conversation
693
712
  */
694
- 'environment': ConversationEnvironment;
713
+ 'initiated'?: string;
695
714
  /**
696
- * Whether this conversation is a test or not
697
- * @type {boolean}
698
- * @memberof ConversationAllOf
715
+ * Detected intent attached at conversation start or first customer message.
716
+ * @type {string}
717
+ * @memberof Conversation
718
+ */
719
+ 'intent'?: string | null;
720
+ /**
721
+ * Confidence score for the detected intent.
722
+ * @type {number}
723
+ * @memberof Conversation
724
+ */
725
+ 'intentScore'?: number | null;
726
+ /**
727
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
728
+ * @type {string}
729
+ * @memberof Conversation
730
+ */
731
+ 'read'?: string;
732
+ /**
733
+ * Server-assigned conversation metadata.
734
+ * @type {{ [key: string]: any; }}
735
+ * @memberof Conversation
736
+ */
737
+ 'metadata'?: { [key: string]: any; };
738
+ /**
739
+ * Metadata for anticipating a preflight response.
740
+ * @type {{ [key: string]: any; }}
741
+ * @memberof Conversation
742
+ */
743
+ 'anticipate'?: { [key: string]: any; };
744
+ /**
745
+ * Command-flow configuration attached to this conversation.
746
+ * @type {{ [key: string]: any; }}
747
+ * @memberof Conversation
699
748
  */
700
- 'test'?: boolean;
749
+ 'command'?: { [key: string]: any; };
750
+ /**
751
+ * Overrides the Persona Model ingress mode for this conversation.
752
+ * @type {string}
753
+ * @memberof Conversation
754
+ */
755
+ 'ingress'?: ConversationIngressEnum;
701
756
  }
702
757
 
758
+ export const ConversationLockCodeEnum = {
759
+ WorkflowStagnation: 'workflow_stagnation',
760
+ MaxLockAttempts: 'max_lock_attempts',
761
+ RuntimeError: 'runtime_error',
762
+ ManualMode: 'manual_mode',
763
+ PolicyBlock: 'policy_block'
764
+ } as const;
765
+
766
+ export type ConversationLockCodeEnum = typeof ConversationLockCodeEnum[keyof typeof ConversationLockCodeEnum];
767
+ export const ConversationIngressEnum = {
768
+ Auto: 'auto',
769
+ Manual: 'manual',
770
+ App: 'app',
771
+ Webhook: 'webhook'
772
+ } as const;
773
+
774
+ export type ConversationIngressEnum = typeof ConversationIngressEnum[keyof typeof ConversationIngressEnum];
703
775
 
704
776
  /**
705
777
  * Base props all conversation types will have
@@ -707,12 +779,30 @@ export interface ConversationAllOf {
707
779
  * @interface ConversationBase
708
780
  */
709
781
  export interface ConversationBase {
782
+ /**
783
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
784
+ * @type {string}
785
+ * @memberof ConversationBase
786
+ */
787
+ '$id'?: string;
788
+ /**
789
+ * Business/organization this conversation belongs to
790
+ * @type {string}
791
+ * @memberof ConversationBase
792
+ */
793
+ '$business'?: string;
710
794
  /**
711
795
  * Default agent persona id assigned to the conversation(s)
712
796
  * @type {string}
713
797
  * @memberof ConversationBase
714
798
  */
715
799
  '$agent'?: string;
800
+ /**
801
+ * Customer this conversation is with
802
+ * @type {string}
803
+ * @memberof ConversationBase
804
+ */
805
+ '$customer'?: string;
716
806
  /**
717
807
  * Initial contexts to load when starting the conversation
718
808
  * @type {Array<string>}
@@ -721,30 +811,190 @@ export interface ConversationBase {
721
811
  'initialContexts'?: Array<string>;
722
812
  /**
723
813
  *
724
- * @type {ConversationBaseEnvironmentProps}
814
+ * @type {ConversationChannel}
815
+ * @memberof ConversationBase
816
+ */
817
+ 'channel'?: ConversationChannel;
818
+ /**
819
+ *
820
+ * @type {ConversationChannelProps}
821
+ * @memberof ConversationBase
822
+ */
823
+ 'channelProps'?: ConversationChannelProps;
824
+ /**
825
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
826
+ * @type {boolean}
827
+ * @memberof ConversationBase
828
+ */
829
+ 'locked'?: boolean | null;
830
+ /**
831
+ * Machine-readable lock reason.
832
+ * @type {string}
833
+ * @memberof ConversationBase
834
+ */
835
+ 'lockCode'?: ConversationBaseLockCodeEnum;
836
+ /**
837
+ * Human-readable locked reason.
838
+ * @type {string}
839
+ * @memberof ConversationBase
840
+ */
841
+ 'lockedReason'?: string | null;
842
+ /**
843
+ * Number of consecutive workflow/context no-progress attempts.
844
+ * @type {number}
845
+ * @memberof ConversationBase
846
+ */
847
+ 'lockAttempts'?: number | null;
848
+ /**
849
+ * Contact that received a forward handoff.
850
+ * @type {string}
851
+ * @memberof ConversationBase
852
+ */
853
+ 'forwardedTo'?: string | null;
854
+ /**
855
+ * ISO 8601 datetime string for when the conversation was forwarded.
856
+ * @type {string}
857
+ * @memberof ConversationBase
858
+ */
859
+ 'forwarded'?: string | null;
860
+ /**
861
+ * Operator or workflow note attached to the forward.
862
+ * @type {string}
863
+ * @memberof ConversationBase
864
+ */
865
+ 'forwardNote'?: string | null;
866
+ /**
867
+ * ISO 8601 datetime string for when this conversation was initiated.
868
+ * @type {string}
869
+ * @memberof ConversationBase
870
+ */
871
+ 'initiated'?: string;
872
+ /**
873
+ * Detected intent attached at conversation start or first customer message.
874
+ * @type {string}
875
+ * @memberof ConversationBase
876
+ */
877
+ 'intent'?: string | null;
878
+ /**
879
+ * Confidence score for the detected intent.
880
+ * @type {number}
881
+ * @memberof ConversationBase
882
+ */
883
+ 'intentScore'?: number | null;
884
+ /**
885
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
886
+ * @type {string}
887
+ * @memberof ConversationBase
888
+ */
889
+ 'read'?: string;
890
+ /**
891
+ * Server-assigned conversation metadata.
892
+ * @type {{ [key: string]: any; }}
893
+ * @memberof ConversationBase
894
+ */
895
+ 'metadata'?: { [key: string]: any; };
896
+ /**
897
+ * Metadata for anticipating a preflight response.
898
+ * @type {{ [key: string]: any; }}
725
899
  * @memberof ConversationBase
726
900
  */
727
- 'environmentProps'?: ConversationBaseEnvironmentProps;
901
+ 'anticipate'?: { [key: string]: any; };
902
+ /**
903
+ * Command-flow configuration attached to this conversation.
904
+ * @type {{ [key: string]: any; }}
905
+ * @memberof ConversationBase
906
+ */
907
+ 'command'?: { [key: string]: any; };
908
+ /**
909
+ * Overrides the Persona Model ingress mode for this conversation.
910
+ * @type {string}
911
+ * @memberof ConversationBase
912
+ */
913
+ 'ingress'?: ConversationBaseIngressEnum;
728
914
  }
915
+
916
+ export const ConversationBaseLockCodeEnum = {
917
+ WorkflowStagnation: 'workflow_stagnation',
918
+ MaxLockAttempts: 'max_lock_attempts',
919
+ RuntimeError: 'runtime_error',
920
+ ManualMode: 'manual_mode',
921
+ PolicyBlock: 'policy_block'
922
+ } as const;
923
+
924
+ export type ConversationBaseLockCodeEnum = typeof ConversationBaseLockCodeEnum[keyof typeof ConversationBaseLockCodeEnum];
925
+ export const ConversationBaseIngressEnum = {
926
+ Auto: 'auto',
927
+ Manual: 'manual',
928
+ App: 'app',
929
+ Webhook: 'webhook'
930
+ } as const;
931
+
932
+ export type ConversationBaseIngressEnum = typeof ConversationBaseIngressEnum[keyof typeof ConversationBaseIngressEnum];
933
+
934
+ /**
935
+ * Canonical channel that initiated and should continue the customer conversation.
936
+ * @export
937
+ * @enum {string}
938
+ */
939
+
940
+ export const ConversationChannel = {
941
+ Web: 'web',
942
+ DemoPhoneTest: 'demo_phone_test',
943
+ SmsPhone: 'sms_phone',
944
+ Outlook: 'outlook',
945
+ Gmail: 'gmail',
946
+ Iphone: 'iphone',
947
+ Android: 'android',
948
+ Teams: 'teams',
949
+ Discord: 'discord',
950
+ Whatsapp: 'whatsapp'
951
+ } as const;
952
+
953
+ export type ConversationChannel = typeof ConversationChannel[keyof typeof ConversationChannel];
954
+
955
+
729
956
  /**
730
- * Environment properties for the conversation
957
+ * Channel-specific properties needed to continue a conversation on its canonical channel.
731
958
  * @export
732
- * @interface ConversationBaseEnvironmentProps
959
+ * @interface ConversationChannelProps
733
960
  */
734
- export interface ConversationBaseEnvironmentProps {
961
+ export interface ConversationChannelProps {
962
+ [key: string]: any;
963
+
735
964
  /**
736
- * HTML subject line
965
+ * Subject line for email-style channels such as Gmail and Outlook.
737
966
  * @type {string}
738
- * @memberof ConversationBaseEnvironmentProps
967
+ * @memberof ConversationChannelProps
739
968
  */
740
969
  'subject'?: string;
741
970
  /**
742
- * Used to sync email messages with the conversation
971
+ * Provider thread id used to sync Gmail/Outlook channel messages with this conversation.
743
972
  * @type {string}
744
- * @memberof ConversationBaseEnvironmentProps
973
+ * @memberof ConversationChannelProps
745
974
  */
746
975
  'platformEmailThreadId'?: string;
976
+ /**
977
+ * Twilio message sid that initiated this conversation.
978
+ * @type {string}
979
+ * @memberof ConversationChannelProps
980
+ */
981
+ 'smsMessageSid'?: string;
982
+ /**
983
+ * Persisted channel-resolution path used for the current conversation.
984
+ * @type {string}
985
+ * @memberof ConversationChannelProps
986
+ */
987
+ 'channelResolutionPath'?: ConversationChannelPropsChannelResolutionPathEnum;
747
988
  }
989
+
990
+ export const ConversationChannelPropsChannelResolutionPathEnum = {
991
+ Production: 'twilio_production',
992
+ LegacyPmt: 'twilio_legacy_pmt',
993
+ FreeBridge: 'twilio_free_bridge'
994
+ } as const;
995
+
996
+ export type ConversationChannelPropsChannelResolutionPathEnum = typeof ConversationChannelPropsChannelResolutionPathEnum[keyof typeof ConversationChannelPropsChannelResolutionPathEnum];
997
+
748
998
  /**
749
999
  *
750
1000
  * @export
@@ -787,13 +1037,6 @@ export interface ConversationContextField {
787
1037
  * @memberof ConversationContextField
788
1038
  */
789
1039
  'logic'?: Logic;
790
- /**
791
- * The conditions of the conversation
792
- * @type {Array<ConversationContextGroup>}
793
- * @memberof ConversationContextField
794
- * @deprecated
795
- */
796
- 'conditions'?: Array<ConversationContextGroup>;
797
1040
  /**
798
1041
  * The triggers of the conversation
799
1042
  * @type {Array<string>}
@@ -910,12 +1153,30 @@ export type ConversationContextValueOneOfInner = boolean | number | string;
910
1153
  * @interface ConversationCreateRequest
911
1154
  */
912
1155
  export interface ConversationCreateRequest {
1156
+ /**
1157
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
1158
+ * @type {string}
1159
+ * @memberof ConversationCreateRequest
1160
+ */
1161
+ '$id'?: string;
1162
+ /**
1163
+ * Business/organization this conversation belongs to
1164
+ * @type {string}
1165
+ * @memberof ConversationCreateRequest
1166
+ */
1167
+ '$business': string;
913
1168
  /**
914
1169
  * Default agent persona id assigned to the conversation(s)
915
1170
  * @type {string}
916
1171
  * @memberof ConversationCreateRequest
917
1172
  */
918
1173
  '$agent': string;
1174
+ /**
1175
+ * Customer this conversation is with
1176
+ * @type {string}
1177
+ * @memberof ConversationCreateRequest
1178
+ */
1179
+ '$customer': string;
919
1180
  /**
920
1181
  * Initial contexts to load when starting the conversation
921
1182
  * @type {Array<string>}
@@ -924,35 +1185,106 @@ export interface ConversationCreateRequest {
924
1185
  'initialContexts'?: Array<string>;
925
1186
  /**
926
1187
  *
927
- * @type {ConversationBaseEnvironmentProps}
1188
+ * @type {ConversationChannel}
1189
+ * @memberof ConversationCreateRequest
1190
+ */
1191
+ 'channel': ConversationChannel;
1192
+ /**
1193
+ *
1194
+ * @type {ConversationChannelProps}
1195
+ * @memberof ConversationCreateRequest
1196
+ */
1197
+ 'channelProps'?: ConversationChannelProps;
1198
+ /**
1199
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1200
+ * @type {boolean}
928
1201
  * @memberof ConversationCreateRequest
929
1202
  */
930
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1203
+ 'locked'?: boolean | null;
931
1204
  /**
932
- * User for this conversation
1205
+ * Machine-readable lock reason.
933
1206
  * @type {string}
934
1207
  * @memberof ConversationCreateRequest
935
1208
  */
936
- '$user': string;
1209
+ 'lockCode'?: ConversationCreateRequestLockCodeEnum;
937
1210
  /**
938
- * Customer this conversation is with (use $user instead)
1211
+ * Human-readable locked reason.
939
1212
  * @type {string}
940
1213
  * @memberof ConversationCreateRequest
941
- * @deprecated
942
1214
  */
943
- '$customer'?: string;
1215
+ 'lockedReason'?: string | null;
944
1216
  /**
945
- *
946
- * @type {ConversationEnvironment}
1217
+ * Number of consecutive workflow/context no-progress attempts.
1218
+ * @type {number}
947
1219
  * @memberof ConversationCreateRequest
948
1220
  */
949
- 'environment': ConversationEnvironment;
1221
+ 'lockAttempts'?: number | null;
950
1222
  /**
951
- * Whether this conversation is a test or not
952
- * @type {boolean}
1223
+ * Contact that received a forward handoff.
1224
+ * @type {string}
1225
+ * @memberof ConversationCreateRequest
1226
+ */
1227
+ 'forwardedTo'?: string | null;
1228
+ /**
1229
+ * ISO 8601 datetime string for when the conversation was forwarded.
1230
+ * @type {string}
1231
+ * @memberof ConversationCreateRequest
1232
+ */
1233
+ 'forwarded'?: string | null;
1234
+ /**
1235
+ * Operator or workflow note attached to the forward.
1236
+ * @type {string}
1237
+ * @memberof ConversationCreateRequest
1238
+ */
1239
+ 'forwardNote'?: string | null;
1240
+ /**
1241
+ * ISO 8601 datetime string for when this conversation was initiated.
1242
+ * @type {string}
1243
+ * @memberof ConversationCreateRequest
1244
+ */
1245
+ 'initiated'?: string;
1246
+ /**
1247
+ * Detected intent attached at conversation start or first customer message.
1248
+ * @type {string}
1249
+ * @memberof ConversationCreateRequest
1250
+ */
1251
+ 'intent'?: string | null;
1252
+ /**
1253
+ * Confidence score for the detected intent.
1254
+ * @type {number}
1255
+ * @memberof ConversationCreateRequest
1256
+ */
1257
+ 'intentScore'?: number | null;
1258
+ /**
1259
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
1260
+ * @type {string}
1261
+ * @memberof ConversationCreateRequest
1262
+ */
1263
+ 'read'?: string;
1264
+ /**
1265
+ * Server-assigned conversation metadata.
1266
+ * @type {{ [key: string]: any; }}
1267
+ * @memberof ConversationCreateRequest
1268
+ */
1269
+ 'metadata'?: { [key: string]: any; };
1270
+ /**
1271
+ * Metadata for anticipating a preflight response.
1272
+ * @type {{ [key: string]: any; }}
1273
+ * @memberof ConversationCreateRequest
1274
+ */
1275
+ 'anticipate'?: { [key: string]: any; };
1276
+ /**
1277
+ * Command-flow configuration attached to this conversation.
1278
+ * @type {{ [key: string]: any; }}
1279
+ * @memberof ConversationCreateRequest
1280
+ */
1281
+ 'command'?: { [key: string]: any; };
1282
+ /**
1283
+ * Overrides the Persona Model ingress mode for this conversation.
1284
+ * @type {string}
953
1285
  * @memberof ConversationCreateRequest
954
1286
  */
955
- 'test'?: boolean;
1287
+ 'ingress'?: ConversationCreateRequestIngressEnum;
956
1288
  /**
957
1289
  * Appends a prefix to the conversation id, if a conversation id is prefixed with test, or dev, it will mute text messages
958
1290
  * @type {string}
@@ -961,6 +1293,23 @@ export interface ConversationCreateRequest {
961
1293
  'idPrefix'?: string;
962
1294
  }
963
1295
 
1296
+ export const ConversationCreateRequestLockCodeEnum = {
1297
+ WorkflowStagnation: 'workflow_stagnation',
1298
+ MaxLockAttempts: 'max_lock_attempts',
1299
+ RuntimeError: 'runtime_error',
1300
+ ManualMode: 'manual_mode',
1301
+ PolicyBlock: 'policy_block'
1302
+ } as const;
1303
+
1304
+ export type ConversationCreateRequestLockCodeEnum = typeof ConversationCreateRequestLockCodeEnum[keyof typeof ConversationCreateRequestLockCodeEnum];
1305
+ export const ConversationCreateRequestIngressEnum = {
1306
+ Auto: 'auto',
1307
+ Manual: 'manual',
1308
+ App: 'app',
1309
+ Webhook: 'webhook'
1310
+ } as const;
1311
+
1312
+ export type ConversationCreateRequestIngressEnum = typeof ConversationCreateRequestIngressEnum[keyof typeof ConversationCreateRequestIngressEnum];
964
1313
 
965
1314
  /**
966
1315
  *
@@ -1038,32 +1387,35 @@ export interface ConversationCreateResponseAllOf {
1038
1387
  'initiated': string;
1039
1388
  }
1040
1389
  /**
1041
- * Environment this conversation is in (phone, web, or email) - this determines which device to send messages to
1042
- * @export
1043
- * @enum {string}
1044
- */
1045
-
1046
- export const ConversationEnvironment = {
1047
- Phone: 'phone',
1048
- Web: 'web',
1049
- Email: 'email'
1050
- } as const;
1051
-
1052
- export type ConversationEnvironment = typeof ConversationEnvironment[keyof typeof ConversationEnvironment];
1053
-
1054
-
1055
- /**
1056
- *
1390
+ *
1057
1391
  * @export
1058
1392
  * @interface ConversationGetResponse
1059
1393
  */
1060
1394
  export interface ConversationGetResponse {
1395
+ /**
1396
+ * The ID of the conversation
1397
+ * @type {string}
1398
+ * @memberof ConversationGetResponse
1399
+ */
1400
+ '$id': string;
1401
+ /**
1402
+ * Business/organization this conversation belongs to
1403
+ * @type {string}
1404
+ * @memberof ConversationGetResponse
1405
+ */
1406
+ '$business': string;
1061
1407
  /**
1062
1408
  * Default agent persona id assigned to the conversation(s)
1063
1409
  * @type {string}
1064
1410
  * @memberof ConversationGetResponse
1065
1411
  */
1066
1412
  '$agent': string;
1413
+ /**
1414
+ * Customer this conversation is with
1415
+ * @type {string}
1416
+ * @memberof ConversationGetResponse
1417
+ */
1418
+ '$customer': string;
1067
1419
  /**
1068
1420
  * Initial contexts to load when starting the conversation
1069
1421
  * @type {Array<string>}
@@ -1072,53 +1424,58 @@ export interface ConversationGetResponse {
1072
1424
  'initialContexts'?: Array<string>;
1073
1425
  /**
1074
1426
  *
1075
- * @type {ConversationBaseEnvironmentProps}
1427
+ * @type {ConversationChannel}
1076
1428
  * @memberof ConversationGetResponse
1077
1429
  */
1078
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1430
+ 'channel': ConversationChannel;
1079
1431
  /**
1080
- * User for this conversation
1081
- * @type {string}
1432
+ *
1433
+ * @type {ConversationChannelProps}
1434
+ * @memberof ConversationGetResponse
1435
+ */
1436
+ 'channelProps'?: ConversationChannelProps;
1437
+ /**
1438
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1439
+ * @type {boolean}
1082
1440
  * @memberof ConversationGetResponse
1083
1441
  */
1084
- '$user': string;
1442
+ 'locked'?: boolean | null;
1085
1443
  /**
1086
- * Customer this conversation is with (use $user instead)
1444
+ * Machine-readable lock reason.
1087
1445
  * @type {string}
1088
1446
  * @memberof ConversationGetResponse
1089
- * @deprecated
1090
1447
  */
1091
- '$customer'?: string;
1448
+ 'lockCode'?: ConversationGetResponseLockCodeEnum;
1092
1449
  /**
1093
- *
1094
- * @type {ConversationEnvironment}
1450
+ * Human-readable locked reason.
1451
+ * @type {string}
1095
1452
  * @memberof ConversationGetResponse
1096
1453
  */
1097
- 'environment': ConversationEnvironment;
1454
+ 'lockedReason'?: string | null;
1098
1455
  /**
1099
- * Whether this conversation is a test or not
1100
- * @type {boolean}
1456
+ * Number of consecutive workflow/context no-progress attempts.
1457
+ * @type {number}
1101
1458
  * @memberof ConversationGetResponse
1102
1459
  */
1103
- 'test'?: boolean;
1460
+ 'lockAttempts'?: number | null;
1104
1461
  /**
1105
- * The client web url of the conversation
1462
+ * Contact that received a forward handoff.
1106
1463
  * @type {string}
1107
1464
  * @memberof ConversationGetResponse
1108
1465
  */
1109
- 'clientWebUrl'?: string;
1466
+ 'forwardedTo'?: string | null;
1110
1467
  /**
1111
- * The agent web url of the conversation (requires phone two-factor authentication)
1468
+ * ISO 8601 datetime string for when the conversation was forwarded.
1112
1469
  * @type {string}
1113
1470
  * @memberof ConversationGetResponse
1114
1471
  */
1115
- 'agentWebUrl'?: string;
1472
+ 'forwarded'?: string | null;
1116
1473
  /**
1117
- * The agent test web url of the conversation, used for testing the conversation without notifying the customer
1474
+ * Operator or workflow note attached to the forward.
1118
1475
  * @type {string}
1119
1476
  * @memberof ConversationGetResponse
1120
1477
  */
1121
- 'agentTestWebUrl'?: string;
1478
+ 'forwardNote'?: string | null;
1122
1479
  /**
1123
1480
  * ISO 8601 date string of when the conversation was initiated
1124
1481
  * @type {string}
@@ -1126,13 +1483,84 @@ export interface ConversationGetResponse {
1126
1483
  */
1127
1484
  'initiated': string;
1128
1485
  /**
1129
- * The ID of the conversation
1486
+ * Detected intent attached at conversation start or first customer message.
1130
1487
  * @type {string}
1131
1488
  * @memberof ConversationGetResponse
1132
1489
  */
1133
- '$id': string;
1490
+ 'intent'?: string | null;
1491
+ /**
1492
+ * Confidence score for the detected intent.
1493
+ * @type {number}
1494
+ * @memberof ConversationGetResponse
1495
+ */
1496
+ 'intentScore'?: number | null;
1497
+ /**
1498
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
1499
+ * @type {string}
1500
+ * @memberof ConversationGetResponse
1501
+ */
1502
+ 'read'?: string;
1503
+ /**
1504
+ * Server-assigned conversation metadata.
1505
+ * @type {{ [key: string]: any; }}
1506
+ * @memberof ConversationGetResponse
1507
+ */
1508
+ 'metadata'?: { [key: string]: any; };
1509
+ /**
1510
+ * Metadata for anticipating a preflight response.
1511
+ * @type {{ [key: string]: any; }}
1512
+ * @memberof ConversationGetResponse
1513
+ */
1514
+ 'anticipate'?: { [key: string]: any; };
1515
+ /**
1516
+ * Command-flow configuration attached to this conversation.
1517
+ * @type {{ [key: string]: any; }}
1518
+ * @memberof ConversationGetResponse
1519
+ */
1520
+ 'command'?: { [key: string]: any; };
1521
+ /**
1522
+ * Overrides the Persona Model ingress mode for this conversation.
1523
+ * @type {string}
1524
+ * @memberof ConversationGetResponse
1525
+ */
1526
+ 'ingress'?: ConversationGetResponseIngressEnum;
1527
+ /**
1528
+ * The client web url of the conversation
1529
+ * @type {string}
1530
+ * @memberof ConversationGetResponse
1531
+ */
1532
+ 'clientWebUrl'?: string;
1533
+ /**
1534
+ * The agent web url of the conversation (requires phone two-factor authentication)
1535
+ * @type {string}
1536
+ * @memberof ConversationGetResponse
1537
+ */
1538
+ 'agentWebUrl'?: string;
1539
+ /**
1540
+ * The agent test web url of the conversation, used for testing the conversation without notifying the customer
1541
+ * @type {string}
1542
+ * @memberof ConversationGetResponse
1543
+ */
1544
+ 'agentTestWebUrl'?: string;
1134
1545
  }
1135
1546
 
1547
+ export const ConversationGetResponseLockCodeEnum = {
1548
+ WorkflowStagnation: 'workflow_stagnation',
1549
+ MaxLockAttempts: 'max_lock_attempts',
1550
+ RuntimeError: 'runtime_error',
1551
+ ManualMode: 'manual_mode',
1552
+ PolicyBlock: 'policy_block'
1553
+ } as const;
1554
+
1555
+ export type ConversationGetResponseLockCodeEnum = typeof ConversationGetResponseLockCodeEnum[keyof typeof ConversationGetResponseLockCodeEnum];
1556
+ export const ConversationGetResponseIngressEnum = {
1557
+ Auto: 'auto',
1558
+ Manual: 'manual',
1559
+ App: 'app',
1560
+ Webhook: 'webhook'
1561
+ } as const;
1562
+
1563
+ export type ConversationGetResponseIngressEnum = typeof ConversationGetResponseIngressEnum[keyof typeof ConversationGetResponseIngressEnum];
1136
1564
 
1137
1565
  /**
1138
1566
  *
@@ -1209,12 +1637,30 @@ export interface ConversationScheduleParams {
1209
1637
  * @interface ConversationUpdateRequest
1210
1638
  */
1211
1639
  export interface ConversationUpdateRequest {
1640
+ /**
1641
+ * The ID of the conversation to update
1642
+ * @type {string}
1643
+ * @memberof ConversationUpdateRequest
1644
+ */
1645
+ '$id': string;
1646
+ /**
1647
+ * Business/organization this conversation belongs to
1648
+ * @type {string}
1649
+ * @memberof ConversationUpdateRequest
1650
+ */
1651
+ '$business'?: string;
1212
1652
  /**
1213
1653
  * Default agent persona id assigned to the conversation(s)
1214
1654
  * @type {string}
1215
1655
  * @memberof ConversationUpdateRequest
1216
1656
  */
1217
1657
  '$agent'?: string;
1658
+ /**
1659
+ * Customer this conversation is with
1660
+ * @type {string}
1661
+ * @memberof ConversationUpdateRequest
1662
+ */
1663
+ '$customer'?: string;
1218
1664
  /**
1219
1665
  * Initial contexts to load when starting the conversation
1220
1666
  * @type {Array<string>}
@@ -1223,17 +1669,126 @@ export interface ConversationUpdateRequest {
1223
1669
  'initialContexts'?: Array<string>;
1224
1670
  /**
1225
1671
  *
1226
- * @type {ConversationBaseEnvironmentProps}
1672
+ * @type {ConversationChannel}
1227
1673
  * @memberof ConversationUpdateRequest
1228
1674
  */
1229
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1675
+ 'channel'?: ConversationChannel;
1230
1676
  /**
1231
- * The ID of the conversation to update
1677
+ *
1678
+ * @type {ConversationChannelProps}
1679
+ * @memberof ConversationUpdateRequest
1680
+ */
1681
+ 'channelProps'?: ConversationChannelProps;
1682
+ /**
1683
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1684
+ * @type {boolean}
1685
+ * @memberof ConversationUpdateRequest
1686
+ */
1687
+ 'locked'?: boolean | null;
1688
+ /**
1689
+ * Machine-readable lock reason.
1232
1690
  * @type {string}
1233
1691
  * @memberof ConversationUpdateRequest
1234
1692
  */
1235
- '$id': string;
1693
+ 'lockCode'?: ConversationUpdateRequestLockCodeEnum;
1694
+ /**
1695
+ * Human-readable locked reason.
1696
+ * @type {string}
1697
+ * @memberof ConversationUpdateRequest
1698
+ */
1699
+ 'lockedReason'?: string | null;
1700
+ /**
1701
+ * Number of consecutive workflow/context no-progress attempts.
1702
+ * @type {number}
1703
+ * @memberof ConversationUpdateRequest
1704
+ */
1705
+ 'lockAttempts'?: number | null;
1706
+ /**
1707
+ * Contact that received a forward handoff.
1708
+ * @type {string}
1709
+ * @memberof ConversationUpdateRequest
1710
+ */
1711
+ 'forwardedTo'?: string | null;
1712
+ /**
1713
+ * ISO 8601 datetime string for when the conversation was forwarded.
1714
+ * @type {string}
1715
+ * @memberof ConversationUpdateRequest
1716
+ */
1717
+ 'forwarded'?: string | null;
1718
+ /**
1719
+ * Operator or workflow note attached to the forward.
1720
+ * @type {string}
1721
+ * @memberof ConversationUpdateRequest
1722
+ */
1723
+ 'forwardNote'?: string | null;
1724
+ /**
1725
+ * ISO 8601 datetime string for when this conversation was initiated.
1726
+ * @type {string}
1727
+ * @memberof ConversationUpdateRequest
1728
+ */
1729
+ 'initiated'?: string;
1730
+ /**
1731
+ * Detected intent attached at conversation start or first customer message.
1732
+ * @type {string}
1733
+ * @memberof ConversationUpdateRequest
1734
+ */
1735
+ 'intent'?: string | null;
1736
+ /**
1737
+ * Confidence score for the detected intent.
1738
+ * @type {number}
1739
+ * @memberof ConversationUpdateRequest
1740
+ */
1741
+ 'intentScore'?: number | null;
1742
+ /**
1743
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
1744
+ * @type {string}
1745
+ * @memberof ConversationUpdateRequest
1746
+ */
1747
+ 'read'?: string;
1748
+ /**
1749
+ * Server-assigned conversation metadata.
1750
+ * @type {{ [key: string]: any; }}
1751
+ * @memberof ConversationUpdateRequest
1752
+ */
1753
+ 'metadata'?: { [key: string]: any; };
1754
+ /**
1755
+ * Metadata for anticipating a preflight response.
1756
+ * @type {{ [key: string]: any; }}
1757
+ * @memberof ConversationUpdateRequest
1758
+ */
1759
+ 'anticipate'?: { [key: string]: any; };
1760
+ /**
1761
+ * Command-flow configuration attached to this conversation.
1762
+ * @type {{ [key: string]: any; }}
1763
+ * @memberof ConversationUpdateRequest
1764
+ */
1765
+ 'command'?: { [key: string]: any; };
1766
+ /**
1767
+ * Overrides the Persona Model ingress mode for this conversation.
1768
+ * @type {string}
1769
+ * @memberof ConversationUpdateRequest
1770
+ */
1771
+ 'ingress'?: ConversationUpdateRequestIngressEnum;
1236
1772
  }
1773
+
1774
+ export const ConversationUpdateRequestLockCodeEnum = {
1775
+ WorkflowStagnation: 'workflow_stagnation',
1776
+ MaxLockAttempts: 'max_lock_attempts',
1777
+ RuntimeError: 'runtime_error',
1778
+ ManualMode: 'manual_mode',
1779
+ PolicyBlock: 'policy_block'
1780
+ } as const;
1781
+
1782
+ export type ConversationUpdateRequestLockCodeEnum = typeof ConversationUpdateRequestLockCodeEnum[keyof typeof ConversationUpdateRequestLockCodeEnum];
1783
+ export const ConversationUpdateRequestIngressEnum = {
1784
+ Auto: 'auto',
1785
+ Manual: 'manual',
1786
+ App: 'app',
1787
+ Webhook: 'webhook'
1788
+ } as const;
1789
+
1790
+ export type ConversationUpdateRequestIngressEnum = typeof ConversationUpdateRequestIngressEnum[keyof typeof ConversationUpdateRequestIngressEnum];
1791
+
1237
1792
  /**
1238
1793
  *
1239
1794
  * @export
@@ -1303,12 +1858,30 @@ export interface ConversationUrls {
1303
1858
  * @interface ConversationWithId
1304
1859
  */
1305
1860
  export interface ConversationWithId {
1861
+ /**
1862
+ * The ID of the conversation
1863
+ * @type {string}
1864
+ * @memberof ConversationWithId
1865
+ */
1866
+ '$id': string;
1867
+ /**
1868
+ * Business/organization this conversation belongs to
1869
+ * @type {string}
1870
+ * @memberof ConversationWithId
1871
+ */
1872
+ '$business': string;
1306
1873
  /**
1307
1874
  * Default agent persona id assigned to the conversation(s)
1308
1875
  * @type {string}
1309
1876
  * @memberof ConversationWithId
1310
1877
  */
1311
1878
  '$agent': string;
1879
+ /**
1880
+ * Customer this conversation is with
1881
+ * @type {string}
1882
+ * @memberof ConversationWithId
1883
+ */
1884
+ '$customer': string;
1312
1885
  /**
1313
1886
  * Initial contexts to load when starting the conversation
1314
1887
  * @type {Array<string>}
@@ -1317,43 +1890,125 @@ export interface ConversationWithId {
1317
1890
  'initialContexts'?: Array<string>;
1318
1891
  /**
1319
1892
  *
1320
- * @type {ConversationBaseEnvironmentProps}
1893
+ * @type {ConversationChannel}
1321
1894
  * @memberof ConversationWithId
1322
1895
  */
1323
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1896
+ 'channel': ConversationChannel;
1324
1897
  /**
1325
- * User for this conversation
1898
+ *
1899
+ * @type {ConversationChannelProps}
1900
+ * @memberof ConversationWithId
1901
+ */
1902
+ 'channelProps'?: ConversationChannelProps;
1903
+ /**
1904
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1905
+ * @type {boolean}
1906
+ * @memberof ConversationWithId
1907
+ */
1908
+ 'locked'?: boolean | null;
1909
+ /**
1910
+ * Machine-readable lock reason.
1326
1911
  * @type {string}
1327
1912
  * @memberof ConversationWithId
1328
1913
  */
1329
- '$user': string;
1914
+ 'lockCode'?: ConversationWithIdLockCodeEnum;
1330
1915
  /**
1331
- * Customer this conversation is with (use $user instead)
1916
+ * Human-readable locked reason.
1332
1917
  * @type {string}
1333
1918
  * @memberof ConversationWithId
1334
- * @deprecated
1335
1919
  */
1336
- '$customer'?: string;
1920
+ 'lockedReason'?: string | null;
1337
1921
  /**
1338
- *
1339
- * @type {ConversationEnvironment}
1922
+ * Number of consecutive workflow/context no-progress attempts.
1923
+ * @type {number}
1340
1924
  * @memberof ConversationWithId
1341
1925
  */
1342
- 'environment': ConversationEnvironment;
1926
+ 'lockAttempts'?: number | null;
1343
1927
  /**
1344
- * Whether this conversation is a test or not
1345
- * @type {boolean}
1928
+ * Contact that received a forward handoff.
1929
+ * @type {string}
1346
1930
  * @memberof ConversationWithId
1347
1931
  */
1348
- 'test'?: boolean;
1932
+ 'forwardedTo'?: string | null;
1349
1933
  /**
1350
- * The ID of the conversation
1934
+ * ISO 8601 datetime string for when the conversation was forwarded.
1351
1935
  * @type {string}
1352
1936
  * @memberof ConversationWithId
1353
1937
  */
1354
- '$id': string;
1938
+ 'forwarded'?: string | null;
1939
+ /**
1940
+ * Operator or workflow note attached to the forward.
1941
+ * @type {string}
1942
+ * @memberof ConversationWithId
1943
+ */
1944
+ 'forwardNote'?: string | null;
1945
+ /**
1946
+ * ISO 8601 datetime string for when this conversation was initiated.
1947
+ * @type {string}
1948
+ * @memberof ConversationWithId
1949
+ */
1950
+ 'initiated'?: string;
1951
+ /**
1952
+ * Detected intent attached at conversation start or first customer message.
1953
+ * @type {string}
1954
+ * @memberof ConversationWithId
1955
+ */
1956
+ 'intent'?: string | null;
1957
+ /**
1958
+ * Confidence score for the detected intent.
1959
+ * @type {number}
1960
+ * @memberof ConversationWithId
1961
+ */
1962
+ 'intentScore'?: number | null;
1963
+ /**
1964
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
1965
+ * @type {string}
1966
+ * @memberof ConversationWithId
1967
+ */
1968
+ 'read'?: string;
1969
+ /**
1970
+ * Server-assigned conversation metadata.
1971
+ * @type {{ [key: string]: any; }}
1972
+ * @memberof ConversationWithId
1973
+ */
1974
+ 'metadata'?: { [key: string]: any; };
1975
+ /**
1976
+ * Metadata for anticipating a preflight response.
1977
+ * @type {{ [key: string]: any; }}
1978
+ * @memberof ConversationWithId
1979
+ */
1980
+ 'anticipate'?: { [key: string]: any; };
1981
+ /**
1982
+ * Command-flow configuration attached to this conversation.
1983
+ * @type {{ [key: string]: any; }}
1984
+ * @memberof ConversationWithId
1985
+ */
1986
+ 'command'?: { [key: string]: any; };
1987
+ /**
1988
+ * Overrides the Persona Model ingress mode for this conversation.
1989
+ * @type {string}
1990
+ * @memberof ConversationWithId
1991
+ */
1992
+ 'ingress'?: ConversationWithIdIngressEnum;
1355
1993
  }
1356
1994
 
1995
+ export const ConversationWithIdLockCodeEnum = {
1996
+ WorkflowStagnation: 'workflow_stagnation',
1997
+ MaxLockAttempts: 'max_lock_attempts',
1998
+ RuntimeError: 'runtime_error',
1999
+ ManualMode: 'manual_mode',
2000
+ PolicyBlock: 'policy_block'
2001
+ } as const;
2002
+
2003
+ export type ConversationWithIdLockCodeEnum = typeof ConversationWithIdLockCodeEnum[keyof typeof ConversationWithIdLockCodeEnum];
2004
+ export const ConversationWithIdIngressEnum = {
2005
+ Auto: 'auto',
2006
+ Manual: 'manual',
2007
+ App: 'app',
2008
+ Webhook: 'webhook'
2009
+ } as const;
2010
+
2011
+ export type ConversationWithIdIngressEnum = typeof ConversationWithIdIngressEnum[keyof typeof ConversationWithIdIngressEnum];
1357
2012
 
1358
2013
  /**
1359
2014
  *
@@ -1928,10 +2583,10 @@ export interface CustomerGroupRecord {
1928
2583
  'id': string;
1929
2584
  /**
1930
2585
  *
1931
- * @type {ConversationEnvironment}
2586
+ * @type {ConversationChannel}
1932
2587
  * @memberof CustomerGroupRecord
1933
2588
  */
1934
- 'environment': ConversationEnvironment;
2589
+ 'channel': ConversationChannel;
1935
2590
  /**
1936
2591
  * Overrides the default $agent for this customer
1937
2592
  * @type {string}
@@ -3332,66 +3987,89 @@ export interface ListApiOperationsResponseInnerAllOf {
3332
3987
  */
3333
3988
  export interface ListConversationsResponseInner {
3334
3989
  /**
3335
- * Default agent persona id assigned to the conversation(s)
3990
+ * The ID of the conversation
3336
3991
  * @type {string}
3337
3992
  * @memberof ListConversationsResponseInner
3338
3993
  */
3339
- '$agent': string;
3994
+ '$id': string;
3340
3995
  /**
3341
- * Initial contexts to load when starting the conversation
3342
- * @type {Array<string>}
3996
+ * Business/organization this conversation belongs to
3997
+ * @type {string}
3343
3998
  * @memberof ListConversationsResponseInner
3344
3999
  */
3345
- 'initialContexts'?: Array<string>;
4000
+ '$business': string;
3346
4001
  /**
3347
- *
3348
- * @type {ConversationBaseEnvironmentProps}
4002
+ * Default agent persona id assigned to the conversation(s)
4003
+ * @type {string}
3349
4004
  * @memberof ListConversationsResponseInner
3350
4005
  */
3351
- 'environmentProps'?: ConversationBaseEnvironmentProps;
4006
+ '$agent': string;
3352
4007
  /**
3353
- * User for this conversation
4008
+ * Customer this conversation is with
3354
4009
  * @type {string}
3355
4010
  * @memberof ListConversationsResponseInner
3356
4011
  */
3357
- '$user': string;
4012
+ '$customer': string;
3358
4013
  /**
3359
- * Customer this conversation is with (use $user instead)
3360
- * @type {string}
4014
+ * Initial contexts to load when starting the conversation
4015
+ * @type {Array<string>}
3361
4016
  * @memberof ListConversationsResponseInner
3362
- * @deprecated
3363
4017
  */
3364
- '$customer'?: string;
4018
+ 'initialContexts'?: Array<string>;
4019
+ /**
4020
+ *
4021
+ * @type {ConversationChannel}
4022
+ * @memberof ListConversationsResponseInner
4023
+ */
4024
+ 'channel': ConversationChannel;
3365
4025
  /**
3366
4026
  *
3367
- * @type {ConversationEnvironment}
4027
+ * @type {ConversationChannelProps}
3368
4028
  * @memberof ListConversationsResponseInner
3369
4029
  */
3370
- 'environment': ConversationEnvironment;
4030
+ 'channelProps'?: ConversationChannelProps;
3371
4031
  /**
3372
- * Whether this conversation is a test or not
4032
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
3373
4033
  * @type {boolean}
3374
4034
  * @memberof ListConversationsResponseInner
3375
4035
  */
3376
- 'test'?: boolean;
4036
+ 'locked'?: boolean | null;
3377
4037
  /**
3378
- * The client web url of the conversation
4038
+ * Machine-readable lock reason.
3379
4039
  * @type {string}
3380
4040
  * @memberof ListConversationsResponseInner
3381
4041
  */
3382
- 'clientWebUrl'?: string;
4042
+ 'lockCode'?: ListConversationsResponseInnerLockCodeEnum;
3383
4043
  /**
3384
- * The agent web url of the conversation (requires phone two-factor authentication)
4044
+ * Human-readable locked reason.
3385
4045
  * @type {string}
3386
4046
  * @memberof ListConversationsResponseInner
3387
4047
  */
3388
- 'agentWebUrl'?: string;
4048
+ 'lockedReason'?: string | null;
3389
4049
  /**
3390
- * The agent test web url of the conversation, used for testing the conversation without notifying the customer
4050
+ * Number of consecutive workflow/context no-progress attempts.
4051
+ * @type {number}
4052
+ * @memberof ListConversationsResponseInner
4053
+ */
4054
+ 'lockAttempts'?: number | null;
4055
+ /**
4056
+ * Contact that received a forward handoff.
3391
4057
  * @type {string}
3392
4058
  * @memberof ListConversationsResponseInner
3393
4059
  */
3394
- 'agentTestWebUrl'?: string;
4060
+ 'forwardedTo'?: string | null;
4061
+ /**
4062
+ * ISO 8601 datetime string for when the conversation was forwarded.
4063
+ * @type {string}
4064
+ * @memberof ListConversationsResponseInner
4065
+ */
4066
+ 'forwarded'?: string | null;
4067
+ /**
4068
+ * Operator or workflow note attached to the forward.
4069
+ * @type {string}
4070
+ * @memberof ListConversationsResponseInner
4071
+ */
4072
+ 'forwardNote'?: string | null;
3395
4073
  /**
3396
4074
  * ISO 8601 date string of when the conversation was initiated
3397
4075
  * @type {string}
@@ -3399,13 +4077,84 @@ export interface ListConversationsResponseInner {
3399
4077
  */
3400
4078
  'initiated': string;
3401
4079
  /**
3402
- * The ID of the conversation
4080
+ * Detected intent attached at conversation start or first customer message.
3403
4081
  * @type {string}
3404
4082
  * @memberof ListConversationsResponseInner
3405
4083
  */
3406
- '$id': string;
4084
+ 'intent'?: string | null;
4085
+ /**
4086
+ * Confidence score for the detected intent.
4087
+ * @type {number}
4088
+ * @memberof ListConversationsResponseInner
4089
+ */
4090
+ 'intentScore'?: number | null;
4091
+ /**
4092
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
4093
+ * @type {string}
4094
+ * @memberof ListConversationsResponseInner
4095
+ */
4096
+ 'read'?: string;
4097
+ /**
4098
+ * Server-assigned conversation metadata.
4099
+ * @type {{ [key: string]: any; }}
4100
+ * @memberof ListConversationsResponseInner
4101
+ */
4102
+ 'metadata'?: { [key: string]: any; };
4103
+ /**
4104
+ * Metadata for anticipating a preflight response.
4105
+ * @type {{ [key: string]: any; }}
4106
+ * @memberof ListConversationsResponseInner
4107
+ */
4108
+ 'anticipate'?: { [key: string]: any; };
4109
+ /**
4110
+ * Command-flow configuration attached to this conversation.
4111
+ * @type {{ [key: string]: any; }}
4112
+ * @memberof ListConversationsResponseInner
4113
+ */
4114
+ 'command'?: { [key: string]: any; };
4115
+ /**
4116
+ * Overrides the Persona Model ingress mode for this conversation.
4117
+ * @type {string}
4118
+ * @memberof ListConversationsResponseInner
4119
+ */
4120
+ 'ingress'?: ListConversationsResponseInnerIngressEnum;
4121
+ /**
4122
+ * The client web url of the conversation
4123
+ * @type {string}
4124
+ * @memberof ListConversationsResponseInner
4125
+ */
4126
+ 'clientWebUrl'?: string;
4127
+ /**
4128
+ * The agent web url of the conversation (requires phone two-factor authentication)
4129
+ * @type {string}
4130
+ * @memberof ListConversationsResponseInner
4131
+ */
4132
+ 'agentWebUrl'?: string;
4133
+ /**
4134
+ * The agent test web url of the conversation, used for testing the conversation without notifying the customer
4135
+ * @type {string}
4136
+ * @memberof ListConversationsResponseInner
4137
+ */
4138
+ 'agentTestWebUrl'?: string;
3407
4139
  }
3408
4140
 
4141
+ export const ListConversationsResponseInnerLockCodeEnum = {
4142
+ WorkflowStagnation: 'workflow_stagnation',
4143
+ MaxLockAttempts: 'max_lock_attempts',
4144
+ RuntimeError: 'runtime_error',
4145
+ ManualMode: 'manual_mode',
4146
+ PolicyBlock: 'policy_block'
4147
+ } as const;
4148
+
4149
+ export type ListConversationsResponseInnerLockCodeEnum = typeof ListConversationsResponseInnerLockCodeEnum[keyof typeof ListConversationsResponseInnerLockCodeEnum];
4150
+ export const ListConversationsResponseInnerIngressEnum = {
4151
+ Auto: 'auto',
4152
+ Manual: 'manual',
4153
+ App: 'app',
4154
+ Webhook: 'webhook'
4155
+ } as const;
4156
+
4157
+ export type ListConversationsResponseInnerIngressEnum = typeof ListConversationsResponseInnerIngressEnum[keyof typeof ListConversationsResponseInnerIngressEnum];
3409
4158
 
3410
4159
  /**
3411
4160
  *
@@ -5412,10 +6161,10 @@ export interface MessageCreateRequestConvoOneOf {
5412
6161
  'agentIdOrPhoneOrEmail'?: string;
5413
6162
  /**
5414
6163
  *
5415
- * @type {ConversationEnvironment}
6164
+ * @type {ConversationChannel}
5416
6165
  * @memberof MessageCreateRequestConvoOneOf
5417
6166
  */
5418
- 'environment'?: ConversationEnvironment;
6167
+ 'channel'?: ConversationChannel;
5419
6168
  }
5420
6169
 
5421
6170
 
@@ -5962,7 +6711,13 @@ export interface PmtTransformResponse {
5962
6711
  * @type {string}
5963
6712
  * @memberof PmtTransformResponse
5964
6713
  */
5965
- 'message': string;
6714
+ 'message'?: string;
6715
+ /**
6716
+ * Formatted persona responses
6717
+ * @type {Array<Message>}
6718
+ * @memberof PmtTransformResponse
6719
+ */
6720
+ 'messages'?: Array<Message>;
5966
6721
  /**
5967
6722
  * How confident this message meets the persona\'s own words
5968
6723
  * @type {number}
@@ -6107,12 +6862,30 @@ export interface RegexCondition {
6107
6862
  * @interface ScheduleCreateRequest
6108
6863
  */
6109
6864
  export interface ScheduleCreateRequest {
6865
+ /**
6866
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
6867
+ * @type {string}
6868
+ * @memberof ScheduleCreateRequest
6869
+ */
6870
+ '$id'?: string;
6871
+ /**
6872
+ * Business/organization this conversation belongs to
6873
+ * @type {string}
6874
+ * @memberof ScheduleCreateRequest
6875
+ */
6876
+ '$business': string;
6110
6877
  /**
6111
6878
  * Default agent persona id assigned to the conversation(s)
6112
6879
  * @type {string}
6113
6880
  * @memberof ScheduleCreateRequest
6114
6881
  */
6115
6882
  '$agent': string;
6883
+ /**
6884
+ * Customer this conversation is with
6885
+ * @type {string}
6886
+ * @memberof ScheduleCreateRequest
6887
+ */
6888
+ '$customer': string;
6116
6889
  /**
6117
6890
  * Initial contexts to load when starting the conversation
6118
6891
  * @type {Array<string>}
@@ -6121,35 +6894,106 @@ export interface ScheduleCreateRequest {
6121
6894
  'initialContexts'?: Array<string>;
6122
6895
  /**
6123
6896
  *
6124
- * @type {ConversationBaseEnvironmentProps}
6897
+ * @type {ConversationChannel}
6898
+ * @memberof ScheduleCreateRequest
6899
+ */
6900
+ 'channel': ConversationChannel;
6901
+ /**
6902
+ *
6903
+ * @type {ConversationChannelProps}
6904
+ * @memberof ScheduleCreateRequest
6905
+ */
6906
+ 'channelProps'?: ConversationChannelProps;
6907
+ /**
6908
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
6909
+ * @type {boolean}
6125
6910
  * @memberof ScheduleCreateRequest
6126
6911
  */
6127
- 'environmentProps'?: ConversationBaseEnvironmentProps;
6912
+ 'locked'?: boolean | null;
6128
6913
  /**
6129
- * User for this conversation
6914
+ * Machine-readable lock reason.
6130
6915
  * @type {string}
6131
6916
  * @memberof ScheduleCreateRequest
6132
6917
  */
6133
- '$user': string;
6918
+ 'lockCode'?: ScheduleCreateRequestLockCodeEnum;
6134
6919
  /**
6135
- * Customer this conversation is with (use $user instead)
6920
+ * Human-readable locked reason.
6136
6921
  * @type {string}
6137
6922
  * @memberof ScheduleCreateRequest
6138
- * @deprecated
6139
6923
  */
6140
- '$customer'?: string;
6924
+ 'lockedReason'?: string | null;
6141
6925
  /**
6142
- *
6143
- * @type {ConversationEnvironment}
6926
+ * Number of consecutive workflow/context no-progress attempts.
6927
+ * @type {number}
6144
6928
  * @memberof ScheduleCreateRequest
6145
6929
  */
6146
- 'environment': ConversationEnvironment;
6930
+ 'lockAttempts'?: number | null;
6147
6931
  /**
6148
- * Whether this conversation is a test or not
6149
- * @type {boolean}
6932
+ * Contact that received a forward handoff.
6933
+ * @type {string}
6934
+ * @memberof ScheduleCreateRequest
6935
+ */
6936
+ 'forwardedTo'?: string | null;
6937
+ /**
6938
+ * ISO 8601 datetime string for when the conversation was forwarded.
6939
+ * @type {string}
6940
+ * @memberof ScheduleCreateRequest
6941
+ */
6942
+ 'forwarded'?: string | null;
6943
+ /**
6944
+ * Operator or workflow note attached to the forward.
6945
+ * @type {string}
6946
+ * @memberof ScheduleCreateRequest
6947
+ */
6948
+ 'forwardNote'?: string | null;
6949
+ /**
6950
+ * ISO 8601 datetime string for when this conversation was initiated.
6951
+ * @type {string}
6952
+ * @memberof ScheduleCreateRequest
6953
+ */
6954
+ 'initiated'?: string;
6955
+ /**
6956
+ * Detected intent attached at conversation start or first customer message.
6957
+ * @type {string}
6958
+ * @memberof ScheduleCreateRequest
6959
+ */
6960
+ 'intent'?: string | null;
6961
+ /**
6962
+ * Confidence score for the detected intent.
6963
+ * @type {number}
6964
+ * @memberof ScheduleCreateRequest
6965
+ */
6966
+ 'intentScore'?: number | null;
6967
+ /**
6968
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
6969
+ * @type {string}
6970
+ * @memberof ScheduleCreateRequest
6971
+ */
6972
+ 'read'?: string;
6973
+ /**
6974
+ * Server-assigned conversation metadata.
6975
+ * @type {{ [key: string]: any; }}
6976
+ * @memberof ScheduleCreateRequest
6977
+ */
6978
+ 'metadata'?: { [key: string]: any; };
6979
+ /**
6980
+ * Metadata for anticipating a preflight response.
6981
+ * @type {{ [key: string]: any; }}
6982
+ * @memberof ScheduleCreateRequest
6983
+ */
6984
+ 'anticipate'?: { [key: string]: any; };
6985
+ /**
6986
+ * Command-flow configuration attached to this conversation.
6987
+ * @type {{ [key: string]: any; }}
6150
6988
  * @memberof ScheduleCreateRequest
6151
6989
  */
6152
- 'test'?: boolean;
6990
+ 'command'?: { [key: string]: any; };
6991
+ /**
6992
+ * Overrides the Persona Model ingress mode for this conversation.
6993
+ * @type {string}
6994
+ * @memberof ScheduleCreateRequest
6995
+ */
6996
+ 'ingress'?: ScheduleCreateRequestIngressEnum;
6153
6997
  /**
6154
6998
  * ISO 8601 datetime string
6155
6999
  * @type {string}
@@ -6176,6 +7020,23 @@ export interface ScheduleCreateRequest {
6176
7020
  '$group'?: string;
6177
7021
  }
6178
7022
 
7023
+ export const ScheduleCreateRequestLockCodeEnum = {
7024
+ WorkflowStagnation: 'workflow_stagnation',
7025
+ MaxLockAttempts: 'max_lock_attempts',
7026
+ RuntimeError: 'runtime_error',
7027
+ ManualMode: 'manual_mode',
7028
+ PolicyBlock: 'policy_block'
7029
+ } as const;
7030
+
7031
+ export type ScheduleCreateRequestLockCodeEnum = typeof ScheduleCreateRequestLockCodeEnum[keyof typeof ScheduleCreateRequestLockCodeEnum];
7032
+ export const ScheduleCreateRequestIngressEnum = {
7033
+ Auto: 'auto',
7034
+ Manual: 'manual',
7035
+ App: 'app',
7036
+ Webhook: 'webhook'
7037
+ } as const;
7038
+
7039
+ export type ScheduleCreateRequestIngressEnum = typeof ScheduleCreateRequestIngressEnum[keyof typeof ScheduleCreateRequestIngressEnum];
6179
7040
 
6180
7041
  /**
6181
7042
  *
@@ -6227,12 +7088,30 @@ export interface ScheduleCreateResponseAllOf {
6227
7088
  * @interface ScheduleGetResponse
6228
7089
  */
6229
7090
  export interface ScheduleGetResponse {
7091
+ /**
7092
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
7093
+ * @type {string}
7094
+ * @memberof ScheduleGetResponse
7095
+ */
7096
+ '$id'?: string;
7097
+ /**
7098
+ * Business/organization this conversation belongs to
7099
+ * @type {string}
7100
+ * @memberof ScheduleGetResponse
7101
+ */
7102
+ '$business': string;
6230
7103
  /**
6231
7104
  * Default agent persona id assigned to the conversation(s)
6232
7105
  * @type {string}
6233
7106
  * @memberof ScheduleGetResponse
6234
7107
  */
6235
7108
  '$agent': string;
7109
+ /**
7110
+ * Customer this conversation is with
7111
+ * @type {string}
7112
+ * @memberof ScheduleGetResponse
7113
+ */
7114
+ '$customer': string;
6236
7115
  /**
6237
7116
  * Initial contexts to load when starting the conversation
6238
7117
  * @type {Array<string>}
@@ -6241,35 +7120,106 @@ export interface ScheduleGetResponse {
6241
7120
  'initialContexts'?: Array<string>;
6242
7121
  /**
6243
7122
  *
6244
- * @type {ConversationBaseEnvironmentProps}
7123
+ * @type {ConversationChannel}
7124
+ * @memberof ScheduleGetResponse
7125
+ */
7126
+ 'channel': ConversationChannel;
7127
+ /**
7128
+ *
7129
+ * @type {ConversationChannelProps}
7130
+ * @memberof ScheduleGetResponse
7131
+ */
7132
+ 'channelProps'?: ConversationChannelProps;
7133
+ /**
7134
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
7135
+ * @type {boolean}
6245
7136
  * @memberof ScheduleGetResponse
6246
7137
  */
6247
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7138
+ 'locked'?: boolean | null;
6248
7139
  /**
6249
- * User for this conversation
7140
+ * Machine-readable lock reason.
6250
7141
  * @type {string}
6251
7142
  * @memberof ScheduleGetResponse
6252
7143
  */
6253
- '$user': string;
7144
+ 'lockCode'?: ScheduleGetResponseLockCodeEnum;
6254
7145
  /**
6255
- * Customer this conversation is with (use $user instead)
7146
+ * Human-readable locked reason.
6256
7147
  * @type {string}
6257
7148
  * @memberof ScheduleGetResponse
6258
- * @deprecated
6259
7149
  */
6260
- '$customer'?: string;
7150
+ 'lockedReason'?: string | null;
6261
7151
  /**
6262
- *
6263
- * @type {ConversationEnvironment}
7152
+ * Number of consecutive workflow/context no-progress attempts.
7153
+ * @type {number}
6264
7154
  * @memberof ScheduleGetResponse
6265
7155
  */
6266
- 'environment': ConversationEnvironment;
7156
+ 'lockAttempts'?: number | null;
6267
7157
  /**
6268
- * Whether this conversation is a test or not
6269
- * @type {boolean}
7158
+ * Contact that received a forward handoff.
7159
+ * @type {string}
7160
+ * @memberof ScheduleGetResponse
7161
+ */
7162
+ 'forwardedTo'?: string | null;
7163
+ /**
7164
+ * ISO 8601 datetime string for when the conversation was forwarded.
7165
+ * @type {string}
7166
+ * @memberof ScheduleGetResponse
7167
+ */
7168
+ 'forwarded'?: string | null;
7169
+ /**
7170
+ * Operator or workflow note attached to the forward.
7171
+ * @type {string}
7172
+ * @memberof ScheduleGetResponse
7173
+ */
7174
+ 'forwardNote'?: string | null;
7175
+ /**
7176
+ * ISO 8601 datetime string for when this conversation was initiated.
7177
+ * @type {string}
7178
+ * @memberof ScheduleGetResponse
7179
+ */
7180
+ 'initiated'?: string;
7181
+ /**
7182
+ * Detected intent attached at conversation start or first customer message.
7183
+ * @type {string}
7184
+ * @memberof ScheduleGetResponse
7185
+ */
7186
+ 'intent'?: string | null;
7187
+ /**
7188
+ * Confidence score for the detected intent.
7189
+ * @type {number}
7190
+ * @memberof ScheduleGetResponse
7191
+ */
7192
+ 'intentScore'?: number | null;
7193
+ /**
7194
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
7195
+ * @type {string}
7196
+ * @memberof ScheduleGetResponse
7197
+ */
7198
+ 'read'?: string;
7199
+ /**
7200
+ * Server-assigned conversation metadata.
7201
+ * @type {{ [key: string]: any; }}
7202
+ * @memberof ScheduleGetResponse
7203
+ */
7204
+ 'metadata'?: { [key: string]: any; };
7205
+ /**
7206
+ * Metadata for anticipating a preflight response.
7207
+ * @type {{ [key: string]: any; }}
7208
+ * @memberof ScheduleGetResponse
7209
+ */
7210
+ 'anticipate'?: { [key: string]: any; };
7211
+ /**
7212
+ * Command-flow configuration attached to this conversation.
7213
+ * @type {{ [key: string]: any; }}
6270
7214
  * @memberof ScheduleGetResponse
6271
7215
  */
6272
- 'test'?: boolean;
7216
+ 'command'?: { [key: string]: any; };
7217
+ /**
7218
+ * Overrides the Persona Model ingress mode for this conversation.
7219
+ * @type {string}
7220
+ * @memberof ScheduleGetResponse
7221
+ */
7222
+ 'ingress'?: ScheduleGetResponseIngressEnum;
6273
7223
  /**
6274
7224
  * ISO 8601 datetime string
6275
7225
  * @type {string}
@@ -6314,6 +7264,23 @@ export interface ScheduleGetResponse {
6314
7264
  'agentTestWebUrl'?: string;
6315
7265
  }
6316
7266
 
7267
+ export const ScheduleGetResponseLockCodeEnum = {
7268
+ WorkflowStagnation: 'workflow_stagnation',
7269
+ MaxLockAttempts: 'max_lock_attempts',
7270
+ RuntimeError: 'runtime_error',
7271
+ ManualMode: 'manual_mode',
7272
+ PolicyBlock: 'policy_block'
7273
+ } as const;
7274
+
7275
+ export type ScheduleGetResponseLockCodeEnum = typeof ScheduleGetResponseLockCodeEnum[keyof typeof ScheduleGetResponseLockCodeEnum];
7276
+ export const ScheduleGetResponseIngressEnum = {
7277
+ Auto: 'auto',
7278
+ Manual: 'manual',
7279
+ App: 'app',
7280
+ Webhook: 'webhook'
7281
+ } as const;
7282
+
7283
+ export type ScheduleGetResponseIngressEnum = typeof ScheduleGetResponseIngressEnum[keyof typeof ScheduleGetResponseIngressEnum];
6317
7284
 
6318
7285
  /**
6319
7286
  *
@@ -6321,12 +7288,30 @@ export interface ScheduleGetResponse {
6321
7288
  * @interface ScheduleGroupCreateRequest
6322
7289
  */
6323
7290
  export interface ScheduleGroupCreateRequest {
7291
+ /**
7292
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
7293
+ * @type {string}
7294
+ * @memberof ScheduleGroupCreateRequest
7295
+ */
7296
+ '$id'?: string;
7297
+ /**
7298
+ * Business/organization this conversation belongs to
7299
+ * @type {string}
7300
+ * @memberof ScheduleGroupCreateRequest
7301
+ */
7302
+ '$business'?: string;
6324
7303
  /**
6325
7304
  * Default agent persona id assigned to the conversation(s)
6326
7305
  * @type {string}
6327
7306
  * @memberof ScheduleGroupCreateRequest
6328
7307
  */
6329
7308
  '$agent'?: string;
7309
+ /**
7310
+ * Customer this conversation is with
7311
+ * @type {string}
7312
+ * @memberof ScheduleGroupCreateRequest
7313
+ */
7314
+ '$customer'?: string;
6330
7315
  /**
6331
7316
  * Initial contexts to load when starting the conversation
6332
7317
  * @type {Array<string>}
@@ -6335,24 +7320,120 @@ export interface ScheduleGroupCreateRequest {
6335
7320
  'initialContexts'?: Array<string>;
6336
7321
  /**
6337
7322
  *
6338
- * @type {ConversationBaseEnvironmentProps}
7323
+ * @type {ConversationChannel}
6339
7324
  * @memberof ScheduleGroupCreateRequest
6340
7325
  */
6341
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7326
+ 'channel'?: ConversationChannel;
6342
7327
  /**
6343
- * ISO 8601 datetime string
6344
- * @type {string}
7328
+ *
7329
+ * @type {ConversationChannelProps}
6345
7330
  * @memberof ScheduleGroupCreateRequest
6346
7331
  */
6347
- 'scheduled': string;
7332
+ 'channelProps'?: ConversationChannelProps;
6348
7333
  /**
6349
- * The initial message to send to the customer
6350
- * @type {string}
7334
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
7335
+ * @type {boolean}
6351
7336
  * @memberof ScheduleGroupCreateRequest
6352
7337
  */
6353
- 'initialMessage': string;
7338
+ 'locked'?: boolean | null;
6354
7339
  /**
6355
- * The initial message to send to the customer in HTML
7340
+ * Machine-readable lock reason.
7341
+ * @type {string}
7342
+ * @memberof ScheduleGroupCreateRequest
7343
+ */
7344
+ 'lockCode'?: ScheduleGroupCreateRequestLockCodeEnum;
7345
+ /**
7346
+ * Human-readable locked reason.
7347
+ * @type {string}
7348
+ * @memberof ScheduleGroupCreateRequest
7349
+ */
7350
+ 'lockedReason'?: string | null;
7351
+ /**
7352
+ * Number of consecutive workflow/context no-progress attempts.
7353
+ * @type {number}
7354
+ * @memberof ScheduleGroupCreateRequest
7355
+ */
7356
+ 'lockAttempts'?: number | null;
7357
+ /**
7358
+ * Contact that received a forward handoff.
7359
+ * @type {string}
7360
+ * @memberof ScheduleGroupCreateRequest
7361
+ */
7362
+ 'forwardedTo'?: string | null;
7363
+ /**
7364
+ * ISO 8601 datetime string for when the conversation was forwarded.
7365
+ * @type {string}
7366
+ * @memberof ScheduleGroupCreateRequest
7367
+ */
7368
+ 'forwarded'?: string | null;
7369
+ /**
7370
+ * Operator or workflow note attached to the forward.
7371
+ * @type {string}
7372
+ * @memberof ScheduleGroupCreateRequest
7373
+ */
7374
+ 'forwardNote'?: string | null;
7375
+ /**
7376
+ * ISO 8601 datetime string for when this conversation was initiated.
7377
+ * @type {string}
7378
+ * @memberof ScheduleGroupCreateRequest
7379
+ */
7380
+ 'initiated'?: string;
7381
+ /**
7382
+ * Detected intent attached at conversation start or first customer message.
7383
+ * @type {string}
7384
+ * @memberof ScheduleGroupCreateRequest
7385
+ */
7386
+ 'intent'?: string | null;
7387
+ /**
7388
+ * Confidence score for the detected intent.
7389
+ * @type {number}
7390
+ * @memberof ScheduleGroupCreateRequest
7391
+ */
7392
+ 'intentScore'?: number | null;
7393
+ /**
7394
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
7395
+ * @type {string}
7396
+ * @memberof ScheduleGroupCreateRequest
7397
+ */
7398
+ 'read'?: string;
7399
+ /**
7400
+ * Server-assigned conversation metadata.
7401
+ * @type {{ [key: string]: any; }}
7402
+ * @memberof ScheduleGroupCreateRequest
7403
+ */
7404
+ 'metadata'?: { [key: string]: any; };
7405
+ /**
7406
+ * Metadata for anticipating a preflight response.
7407
+ * @type {{ [key: string]: any; }}
7408
+ * @memberof ScheduleGroupCreateRequest
7409
+ */
7410
+ 'anticipate'?: { [key: string]: any; };
7411
+ /**
7412
+ * Command-flow configuration attached to this conversation.
7413
+ * @type {{ [key: string]: any; }}
7414
+ * @memberof ScheduleGroupCreateRequest
7415
+ */
7416
+ 'command'?: { [key: string]: any; };
7417
+ /**
7418
+ * Overrides the Persona Model ingress mode for this conversation.
7419
+ * @type {string}
7420
+ * @memberof ScheduleGroupCreateRequest
7421
+ */
7422
+ 'ingress'?: ScheduleGroupCreateRequestIngressEnum;
7423
+ /**
7424
+ * ISO 8601 datetime string
7425
+ * @type {string}
7426
+ * @memberof ScheduleGroupCreateRequest
7427
+ */
7428
+ 'scheduled': string;
7429
+ /**
7430
+ * The initial message to send to the customer
7431
+ * @type {string}
7432
+ * @memberof ScheduleGroupCreateRequest
7433
+ */
7434
+ 'initialMessage': string;
7435
+ /**
7436
+ * The initial message to send to the customer in HTML
6356
7437
  * @type {string}
6357
7438
  * @memberof ScheduleGroupCreateRequest
6358
7439
  */
@@ -6370,6 +7451,25 @@ export interface ScheduleGroupCreateRequest {
6370
7451
  */
6371
7452
  '$cGroup': ScheduleGroupCreateRequestAllOfCGroup;
6372
7453
  }
7454
+
7455
+ export const ScheduleGroupCreateRequestLockCodeEnum = {
7456
+ WorkflowStagnation: 'workflow_stagnation',
7457
+ MaxLockAttempts: 'max_lock_attempts',
7458
+ RuntimeError: 'runtime_error',
7459
+ ManualMode: 'manual_mode',
7460
+ PolicyBlock: 'policy_block'
7461
+ } as const;
7462
+
7463
+ export type ScheduleGroupCreateRequestLockCodeEnum = typeof ScheduleGroupCreateRequestLockCodeEnum[keyof typeof ScheduleGroupCreateRequestLockCodeEnum];
7464
+ export const ScheduleGroupCreateRequestIngressEnum = {
7465
+ Auto: 'auto',
7466
+ Manual: 'manual',
7467
+ App: 'app',
7468
+ Webhook: 'webhook'
7469
+ } as const;
7470
+
7471
+ export type ScheduleGroupCreateRequestIngressEnum = typeof ScheduleGroupCreateRequestIngressEnum[keyof typeof ScheduleGroupCreateRequestIngressEnum];
7472
+
6373
7473
  /**
6374
7474
  *
6375
7475
  * @export
@@ -6420,12 +7520,30 @@ export interface ScheduleGroupCreateResponse {
6420
7520
  * @interface ScheduleGroupGetResponse
6421
7521
  */
6422
7522
  export interface ScheduleGroupGetResponse {
7523
+ /**
7524
+ * The ID of the scheduled conversation group
7525
+ * @type {string}
7526
+ * @memberof ScheduleGroupGetResponse
7527
+ */
7528
+ '$id': string;
7529
+ /**
7530
+ * Business/organization this conversation belongs to
7531
+ * @type {string}
7532
+ * @memberof ScheduleGroupGetResponse
7533
+ */
7534
+ '$business'?: string;
6423
7535
  /**
6424
7536
  * Default agent persona id assigned to the conversation(s)
6425
7537
  * @type {string}
6426
7538
  * @memberof ScheduleGroupGetResponse
6427
7539
  */
6428
7540
  '$agent'?: string;
7541
+ /**
7542
+ * Customer this conversation is with
7543
+ * @type {string}
7544
+ * @memberof ScheduleGroupGetResponse
7545
+ */
7546
+ '$customer'?: string;
6429
7547
  /**
6430
7548
  * Initial contexts to load when starting the conversation
6431
7549
  * @type {Array<string>}
@@ -6434,10 +7552,106 @@ export interface ScheduleGroupGetResponse {
6434
7552
  'initialContexts'?: Array<string>;
6435
7553
  /**
6436
7554
  *
6437
- * @type {ConversationBaseEnvironmentProps}
7555
+ * @type {ConversationChannel}
7556
+ * @memberof ScheduleGroupGetResponse
7557
+ */
7558
+ 'channel'?: ConversationChannel;
7559
+ /**
7560
+ *
7561
+ * @type {ConversationChannelProps}
7562
+ * @memberof ScheduleGroupGetResponse
7563
+ */
7564
+ 'channelProps'?: ConversationChannelProps;
7565
+ /**
7566
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
7567
+ * @type {boolean}
7568
+ * @memberof ScheduleGroupGetResponse
7569
+ */
7570
+ 'locked'?: boolean | null;
7571
+ /**
7572
+ * Machine-readable lock reason.
7573
+ * @type {string}
7574
+ * @memberof ScheduleGroupGetResponse
7575
+ */
7576
+ 'lockCode'?: ScheduleGroupGetResponseLockCodeEnum;
7577
+ /**
7578
+ * Human-readable locked reason.
7579
+ * @type {string}
7580
+ * @memberof ScheduleGroupGetResponse
7581
+ */
7582
+ 'lockedReason'?: string | null;
7583
+ /**
7584
+ * Number of consecutive workflow/context no-progress attempts.
7585
+ * @type {number}
7586
+ * @memberof ScheduleGroupGetResponse
7587
+ */
7588
+ 'lockAttempts'?: number | null;
7589
+ /**
7590
+ * Contact that received a forward handoff.
7591
+ * @type {string}
7592
+ * @memberof ScheduleGroupGetResponse
7593
+ */
7594
+ 'forwardedTo'?: string | null;
7595
+ /**
7596
+ * ISO 8601 datetime string for when the conversation was forwarded.
7597
+ * @type {string}
7598
+ * @memberof ScheduleGroupGetResponse
7599
+ */
7600
+ 'forwarded'?: string | null;
7601
+ /**
7602
+ * Operator or workflow note attached to the forward.
7603
+ * @type {string}
7604
+ * @memberof ScheduleGroupGetResponse
7605
+ */
7606
+ 'forwardNote'?: string | null;
7607
+ /**
7608
+ * ISO 8601 datetime string for when this conversation was initiated.
7609
+ * @type {string}
7610
+ * @memberof ScheduleGroupGetResponse
7611
+ */
7612
+ 'initiated'?: string;
7613
+ /**
7614
+ * Detected intent attached at conversation start or first customer message.
7615
+ * @type {string}
7616
+ * @memberof ScheduleGroupGetResponse
7617
+ */
7618
+ 'intent'?: string | null;
7619
+ /**
7620
+ * Confidence score for the detected intent.
7621
+ * @type {number}
7622
+ * @memberof ScheduleGroupGetResponse
7623
+ */
7624
+ 'intentScore'?: number | null;
7625
+ /**
7626
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
7627
+ * @type {string}
7628
+ * @memberof ScheduleGroupGetResponse
7629
+ */
7630
+ 'read'?: string;
7631
+ /**
7632
+ * Server-assigned conversation metadata.
7633
+ * @type {{ [key: string]: any; }}
7634
+ * @memberof ScheduleGroupGetResponse
7635
+ */
7636
+ 'metadata'?: { [key: string]: any; };
7637
+ /**
7638
+ * Metadata for anticipating a preflight response.
7639
+ * @type {{ [key: string]: any; }}
7640
+ * @memberof ScheduleGroupGetResponse
7641
+ */
7642
+ 'anticipate'?: { [key: string]: any; };
7643
+ /**
7644
+ * Command-flow configuration attached to this conversation.
7645
+ * @type {{ [key: string]: any; }}
7646
+ * @memberof ScheduleGroupGetResponse
7647
+ */
7648
+ 'command'?: { [key: string]: any; };
7649
+ /**
7650
+ * Overrides the Persona Model ingress mode for this conversation.
7651
+ * @type {string}
6438
7652
  * @memberof ScheduleGroupGetResponse
6439
7653
  */
6440
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7654
+ 'ingress'?: ScheduleGroupGetResponseIngressEnum;
6441
7655
  /**
6442
7656
  * ISO 8601 datetime string
6443
7657
  * @type {string}
@@ -6462,12 +7676,6 @@ export interface ScheduleGroupGetResponse {
6462
7676
  * @memberof ScheduleGroupGetResponse
6463
7677
  */
6464
7678
  'delay'?: number;
6465
- /**
6466
- * The ID of the scheduled conversation group
6467
- * @type {string}
6468
- * @memberof ScheduleGroupGetResponse
6469
- */
6470
- '$id': string;
6471
7679
  /**
6472
7680
  * ISO Time the initial message has been sent
6473
7681
  * @type {boolean}
@@ -6481,6 +7689,25 @@ export interface ScheduleGroupGetResponse {
6481
7689
  */
6482
7690
  '$cGroup'?: string;
6483
7691
  }
7692
+
7693
+ export const ScheduleGroupGetResponseLockCodeEnum = {
7694
+ WorkflowStagnation: 'workflow_stagnation',
7695
+ MaxLockAttempts: 'max_lock_attempts',
7696
+ RuntimeError: 'runtime_error',
7697
+ ManualMode: 'manual_mode',
7698
+ PolicyBlock: 'policy_block'
7699
+ } as const;
7700
+
7701
+ export type ScheduleGroupGetResponseLockCodeEnum = typeof ScheduleGroupGetResponseLockCodeEnum[keyof typeof ScheduleGroupGetResponseLockCodeEnum];
7702
+ export const ScheduleGroupGetResponseIngressEnum = {
7703
+ Auto: 'auto',
7704
+ Manual: 'manual',
7705
+ App: 'app',
7706
+ Webhook: 'webhook'
7707
+ } as const;
7708
+
7709
+ export type ScheduleGroupGetResponseIngressEnum = typeof ScheduleGroupGetResponseIngressEnum[keyof typeof ScheduleGroupGetResponseIngressEnum];
7710
+
6484
7711
  /**
6485
7712
  *
6486
7713
  * @export
@@ -6537,12 +7764,30 @@ export interface ScheduleGroupRemoveResponse {
6537
7764
  * @interface ScheduleGroupUpdateRequest
6538
7765
  */
6539
7766
  export interface ScheduleGroupUpdateRequest {
7767
+ /**
7768
+ * The ID of the scheduled conversation group to update
7769
+ * @type {string}
7770
+ * @memberof ScheduleGroupUpdateRequest
7771
+ */
7772
+ '$id': string;
7773
+ /**
7774
+ * Business/organization this conversation belongs to
7775
+ * @type {string}
7776
+ * @memberof ScheduleGroupUpdateRequest
7777
+ */
7778
+ '$business'?: string;
6540
7779
  /**
6541
7780
  * Default agent persona id assigned to the conversation(s)
6542
7781
  * @type {string}
6543
7782
  * @memberof ScheduleGroupUpdateRequest
6544
7783
  */
6545
7784
  '$agent'?: string;
7785
+ /**
7786
+ * Customer this conversation is with
7787
+ * @type {string}
7788
+ * @memberof ScheduleGroupUpdateRequest
7789
+ */
7790
+ '$customer'?: string;
6546
7791
  /**
6547
7792
  * Initial contexts to load when starting the conversation
6548
7793
  * @type {Array<string>}
@@ -6551,10 +7796,106 @@ export interface ScheduleGroupUpdateRequest {
6551
7796
  'initialContexts'?: Array<string>;
6552
7797
  /**
6553
7798
  *
6554
- * @type {ConversationBaseEnvironmentProps}
7799
+ * @type {ConversationChannel}
7800
+ * @memberof ScheduleGroupUpdateRequest
7801
+ */
7802
+ 'channel'?: ConversationChannel;
7803
+ /**
7804
+ *
7805
+ * @type {ConversationChannelProps}
7806
+ * @memberof ScheduleGroupUpdateRequest
7807
+ */
7808
+ 'channelProps'?: ConversationChannelProps;
7809
+ /**
7810
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
7811
+ * @type {boolean}
7812
+ * @memberof ScheduleGroupUpdateRequest
7813
+ */
7814
+ 'locked'?: boolean | null;
7815
+ /**
7816
+ * Machine-readable lock reason.
7817
+ * @type {string}
7818
+ * @memberof ScheduleGroupUpdateRequest
7819
+ */
7820
+ 'lockCode'?: ScheduleGroupUpdateRequestLockCodeEnum;
7821
+ /**
7822
+ * Human-readable locked reason.
7823
+ * @type {string}
7824
+ * @memberof ScheduleGroupUpdateRequest
7825
+ */
7826
+ 'lockedReason'?: string | null;
7827
+ /**
7828
+ * Number of consecutive workflow/context no-progress attempts.
7829
+ * @type {number}
7830
+ * @memberof ScheduleGroupUpdateRequest
7831
+ */
7832
+ 'lockAttempts'?: number | null;
7833
+ /**
7834
+ * Contact that received a forward handoff.
7835
+ * @type {string}
7836
+ * @memberof ScheduleGroupUpdateRequest
7837
+ */
7838
+ 'forwardedTo'?: string | null;
7839
+ /**
7840
+ * ISO 8601 datetime string for when the conversation was forwarded.
7841
+ * @type {string}
7842
+ * @memberof ScheduleGroupUpdateRequest
7843
+ */
7844
+ 'forwarded'?: string | null;
7845
+ /**
7846
+ * Operator or workflow note attached to the forward.
7847
+ * @type {string}
7848
+ * @memberof ScheduleGroupUpdateRequest
7849
+ */
7850
+ 'forwardNote'?: string | null;
7851
+ /**
7852
+ * ISO 8601 datetime string for when this conversation was initiated.
7853
+ * @type {string}
7854
+ * @memberof ScheduleGroupUpdateRequest
7855
+ */
7856
+ 'initiated'?: string;
7857
+ /**
7858
+ * Detected intent attached at conversation start or first customer message.
7859
+ * @type {string}
7860
+ * @memberof ScheduleGroupUpdateRequest
7861
+ */
7862
+ 'intent'?: string | null;
7863
+ /**
7864
+ * Confidence score for the detected intent.
7865
+ * @type {number}
7866
+ * @memberof ScheduleGroupUpdateRequest
7867
+ */
7868
+ 'intentScore'?: number | null;
7869
+ /**
7870
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
7871
+ * @type {string}
7872
+ * @memberof ScheduleGroupUpdateRequest
7873
+ */
7874
+ 'read'?: string;
7875
+ /**
7876
+ * Server-assigned conversation metadata.
7877
+ * @type {{ [key: string]: any; }}
7878
+ * @memberof ScheduleGroupUpdateRequest
7879
+ */
7880
+ 'metadata'?: { [key: string]: any; };
7881
+ /**
7882
+ * Metadata for anticipating a preflight response.
7883
+ * @type {{ [key: string]: any; }}
7884
+ * @memberof ScheduleGroupUpdateRequest
7885
+ */
7886
+ 'anticipate'?: { [key: string]: any; };
7887
+ /**
7888
+ * Command-flow configuration attached to this conversation.
7889
+ * @type {{ [key: string]: any; }}
7890
+ * @memberof ScheduleGroupUpdateRequest
7891
+ */
7892
+ 'command'?: { [key: string]: any; };
7893
+ /**
7894
+ * Overrides the Persona Model ingress mode for this conversation.
7895
+ * @type {string}
6555
7896
  * @memberof ScheduleGroupUpdateRequest
6556
7897
  */
6557
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7898
+ 'ingress'?: ScheduleGroupUpdateRequestIngressEnum;
6558
7899
  /**
6559
7900
  * ISO 8601 datetime string
6560
7901
  * @type {string}
@@ -6585,13 +7926,26 @@ export interface ScheduleGroupUpdateRequest {
6585
7926
  * @memberof ScheduleGroupUpdateRequest
6586
7927
  */
6587
7928
  '$cGroup'?: ScheduleGroupCreateRequestAllOfCGroup;
6588
- /**
6589
- * The ID of the scheduled conversation group to update
6590
- * @type {string}
6591
- * @memberof ScheduleGroupUpdateRequest
6592
- */
6593
- '$id': string;
6594
7929
  }
7930
+
7931
+ export const ScheduleGroupUpdateRequestLockCodeEnum = {
7932
+ WorkflowStagnation: 'workflow_stagnation',
7933
+ MaxLockAttempts: 'max_lock_attempts',
7934
+ RuntimeError: 'runtime_error',
7935
+ ManualMode: 'manual_mode',
7936
+ PolicyBlock: 'policy_block'
7937
+ } as const;
7938
+
7939
+ export type ScheduleGroupUpdateRequestLockCodeEnum = typeof ScheduleGroupUpdateRequestLockCodeEnum[keyof typeof ScheduleGroupUpdateRequestLockCodeEnum];
7940
+ export const ScheduleGroupUpdateRequestIngressEnum = {
7941
+ Auto: 'auto',
7942
+ Manual: 'manual',
7943
+ App: 'app',
7944
+ Webhook: 'webhook'
7945
+ } as const;
7946
+
7947
+ export type ScheduleGroupUpdateRequestIngressEnum = typeof ScheduleGroupUpdateRequestIngressEnum[keyof typeof ScheduleGroupUpdateRequestIngressEnum];
7948
+
6595
7949
  /**
6596
7950
  *
6597
7951
  * @export
@@ -6667,12 +8021,30 @@ export interface ScheduleRemoveResponse {
6667
8021
  * @interface ScheduleUpdateRequest
6668
8022
  */
6669
8023
  export interface ScheduleUpdateRequest {
8024
+ /**
8025
+ * The ID of the scheduled conversation to update
8026
+ * @type {string}
8027
+ * @memberof ScheduleUpdateRequest
8028
+ */
8029
+ '$id'?: string;
8030
+ /**
8031
+ * Business/organization this conversation belongs to
8032
+ * @type {string}
8033
+ * @memberof ScheduleUpdateRequest
8034
+ */
8035
+ '$business': string;
6670
8036
  /**
6671
8037
  * Default agent persona id assigned to the conversation(s)
6672
8038
  * @type {string}
6673
8039
  * @memberof ScheduleUpdateRequest
6674
8040
  */
6675
8041
  '$agent': string;
8042
+ /**
8043
+ * Customer this conversation is with
8044
+ * @type {string}
8045
+ * @memberof ScheduleUpdateRequest
8046
+ */
8047
+ '$customer': string;
6676
8048
  /**
6677
8049
  * Initial contexts to load when starting the conversation
6678
8050
  * @type {Array<string>}
@@ -6681,35 +8053,106 @@ export interface ScheduleUpdateRequest {
6681
8053
  'initialContexts'?: Array<string>;
6682
8054
  /**
6683
8055
  *
6684
- * @type {ConversationBaseEnvironmentProps}
8056
+ * @type {ConversationChannel}
8057
+ * @memberof ScheduleUpdateRequest
8058
+ */
8059
+ 'channel': ConversationChannel;
8060
+ /**
8061
+ *
8062
+ * @type {ConversationChannelProps}
6685
8063
  * @memberof ScheduleUpdateRequest
6686
8064
  */
6687
- 'environmentProps'?: ConversationBaseEnvironmentProps;
8065
+ 'channelProps'?: ConversationChannelProps;
6688
8066
  /**
6689
- * User for this conversation
8067
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
8068
+ * @type {boolean}
8069
+ * @memberof ScheduleUpdateRequest
8070
+ */
8071
+ 'locked'?: boolean | null;
8072
+ /**
8073
+ * Machine-readable lock reason.
6690
8074
  * @type {string}
6691
8075
  * @memberof ScheduleUpdateRequest
6692
8076
  */
6693
- '$user': string;
8077
+ 'lockCode'?: ScheduleUpdateRequestLockCodeEnum;
6694
8078
  /**
6695
- * Customer this conversation is with (use $user instead)
8079
+ * Human-readable locked reason.
6696
8080
  * @type {string}
6697
8081
  * @memberof ScheduleUpdateRequest
6698
- * @deprecated
6699
8082
  */
6700
- '$customer'?: string;
8083
+ 'lockedReason'?: string | null;
6701
8084
  /**
6702
- *
6703
- * @type {ConversationEnvironment}
8085
+ * Number of consecutive workflow/context no-progress attempts.
8086
+ * @type {number}
6704
8087
  * @memberof ScheduleUpdateRequest
6705
8088
  */
6706
- 'environment': ConversationEnvironment;
8089
+ 'lockAttempts'?: number | null;
6707
8090
  /**
6708
- * Whether this conversation is a test or not
6709
- * @type {boolean}
8091
+ * Contact that received a forward handoff.
8092
+ * @type {string}
8093
+ * @memberof ScheduleUpdateRequest
8094
+ */
8095
+ 'forwardedTo'?: string | null;
8096
+ /**
8097
+ * ISO 8601 datetime string for when the conversation was forwarded.
8098
+ * @type {string}
8099
+ * @memberof ScheduleUpdateRequest
8100
+ */
8101
+ 'forwarded'?: string | null;
8102
+ /**
8103
+ * Operator or workflow note attached to the forward.
8104
+ * @type {string}
6710
8105
  * @memberof ScheduleUpdateRequest
6711
8106
  */
6712
- 'test'?: boolean;
8107
+ 'forwardNote'?: string | null;
8108
+ /**
8109
+ * ISO 8601 datetime string for when this conversation was initiated.
8110
+ * @type {string}
8111
+ * @memberof ScheduleUpdateRequest
8112
+ */
8113
+ 'initiated'?: string;
8114
+ /**
8115
+ * Detected intent attached at conversation start or first customer message.
8116
+ * @type {string}
8117
+ * @memberof ScheduleUpdateRequest
8118
+ */
8119
+ 'intent'?: string | null;
8120
+ /**
8121
+ * Confidence score for the detected intent.
8122
+ * @type {number}
8123
+ * @memberof ScheduleUpdateRequest
8124
+ */
8125
+ 'intentScore'?: number | null;
8126
+ /**
8127
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
8128
+ * @type {string}
8129
+ * @memberof ScheduleUpdateRequest
8130
+ */
8131
+ 'read'?: string;
8132
+ /**
8133
+ * Server-assigned conversation metadata.
8134
+ * @type {{ [key: string]: any; }}
8135
+ * @memberof ScheduleUpdateRequest
8136
+ */
8137
+ 'metadata'?: { [key: string]: any; };
8138
+ /**
8139
+ * Metadata for anticipating a preflight response.
8140
+ * @type {{ [key: string]: any; }}
8141
+ * @memberof ScheduleUpdateRequest
8142
+ */
8143
+ 'anticipate'?: { [key: string]: any; };
8144
+ /**
8145
+ * Command-flow configuration attached to this conversation.
8146
+ * @type {{ [key: string]: any; }}
8147
+ * @memberof ScheduleUpdateRequest
8148
+ */
8149
+ 'command'?: { [key: string]: any; };
8150
+ /**
8151
+ * Overrides the Persona Model ingress mode for this conversation.
8152
+ * @type {string}
8153
+ * @memberof ScheduleUpdateRequest
8154
+ */
8155
+ 'ingress'?: ScheduleUpdateRequestIngressEnum;
6713
8156
  /**
6714
8157
  * ISO 8601 datetime string
6715
8158
  * @type {string}
@@ -6734,14 +8177,25 @@ export interface ScheduleUpdateRequest {
6734
8177
  * @memberof ScheduleUpdateRequest
6735
8178
  */
6736
8179
  '$group'?: string;
6737
- /**
6738
- * The ID of the scheduled conversation to update
6739
- * @type {string}
6740
- * @memberof ScheduleUpdateRequest
6741
- */
6742
- '$id'?: string;
6743
8180
  }
6744
8181
 
8182
+ export const ScheduleUpdateRequestLockCodeEnum = {
8183
+ WorkflowStagnation: 'workflow_stagnation',
8184
+ MaxLockAttempts: 'max_lock_attempts',
8185
+ RuntimeError: 'runtime_error',
8186
+ ManualMode: 'manual_mode',
8187
+ PolicyBlock: 'policy_block'
8188
+ } as const;
8189
+
8190
+ export type ScheduleUpdateRequestLockCodeEnum = typeof ScheduleUpdateRequestLockCodeEnum[keyof typeof ScheduleUpdateRequestLockCodeEnum];
8191
+ export const ScheduleUpdateRequestIngressEnum = {
8192
+ Auto: 'auto',
8193
+ Manual: 'manual',
8194
+ App: 'app',
8195
+ Webhook: 'webhook'
8196
+ } as const;
8197
+
8198
+ export type ScheduleUpdateRequestIngressEnum = typeof ScheduleUpdateRequestIngressEnum[keyof typeof ScheduleUpdateRequestIngressEnum];
6745
8199
 
6746
8200
  /**
6747
8201
  *
@@ -6787,12 +8241,30 @@ export interface ScheduleUpdateResponse {
6787
8241
  * @interface ScheduledConversation
6788
8242
  */
6789
8243
  export interface ScheduledConversation {
8244
+ /**
8245
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
8246
+ * @type {string}
8247
+ * @memberof ScheduledConversation
8248
+ */
8249
+ '$id'?: string;
8250
+ /**
8251
+ * Business/organization this conversation belongs to
8252
+ * @type {string}
8253
+ * @memberof ScheduledConversation
8254
+ */
8255
+ '$business': string;
6790
8256
  /**
6791
8257
  * Default agent persona id assigned to the conversation(s)
6792
8258
  * @type {string}
6793
8259
  * @memberof ScheduledConversation
6794
8260
  */
6795
8261
  '$agent': string;
8262
+ /**
8263
+ * Customer this conversation is with
8264
+ * @type {string}
8265
+ * @memberof ScheduledConversation
8266
+ */
8267
+ '$customer': string;
6796
8268
  /**
6797
8269
  * Initial contexts to load when starting the conversation
6798
8270
  * @type {Array<string>}
@@ -6801,35 +8273,106 @@ export interface ScheduledConversation {
6801
8273
  'initialContexts'?: Array<string>;
6802
8274
  /**
6803
8275
  *
6804
- * @type {ConversationBaseEnvironmentProps}
8276
+ * @type {ConversationChannel}
8277
+ * @memberof ScheduledConversation
8278
+ */
8279
+ 'channel': ConversationChannel;
8280
+ /**
8281
+ *
8282
+ * @type {ConversationChannelProps}
6805
8283
  * @memberof ScheduledConversation
6806
8284
  */
6807
- 'environmentProps'?: ConversationBaseEnvironmentProps;
8285
+ 'channelProps'?: ConversationChannelProps;
6808
8286
  /**
6809
- * User for this conversation
8287
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
8288
+ * @type {boolean}
8289
+ * @memberof ScheduledConversation
8290
+ */
8291
+ 'locked'?: boolean | null;
8292
+ /**
8293
+ * Machine-readable lock reason.
6810
8294
  * @type {string}
6811
8295
  * @memberof ScheduledConversation
6812
8296
  */
6813
- '$user': string;
8297
+ 'lockCode'?: ScheduledConversationLockCodeEnum;
6814
8298
  /**
6815
- * Customer this conversation is with (use $user instead)
8299
+ * Human-readable locked reason.
6816
8300
  * @type {string}
6817
8301
  * @memberof ScheduledConversation
6818
- * @deprecated
6819
8302
  */
6820
- '$customer'?: string;
8303
+ 'lockedReason'?: string | null;
6821
8304
  /**
6822
- *
6823
- * @type {ConversationEnvironment}
8305
+ * Number of consecutive workflow/context no-progress attempts.
8306
+ * @type {number}
6824
8307
  * @memberof ScheduledConversation
6825
8308
  */
6826
- 'environment': ConversationEnvironment;
8309
+ 'lockAttempts'?: number | null;
6827
8310
  /**
6828
- * Whether this conversation is a test or not
6829
- * @type {boolean}
8311
+ * Contact that received a forward handoff.
8312
+ * @type {string}
6830
8313
  * @memberof ScheduledConversation
6831
8314
  */
6832
- 'test'?: boolean;
8315
+ 'forwardedTo'?: string | null;
8316
+ /**
8317
+ * ISO 8601 datetime string for when the conversation was forwarded.
8318
+ * @type {string}
8319
+ * @memberof ScheduledConversation
8320
+ */
8321
+ 'forwarded'?: string | null;
8322
+ /**
8323
+ * Operator or workflow note attached to the forward.
8324
+ * @type {string}
8325
+ * @memberof ScheduledConversation
8326
+ */
8327
+ 'forwardNote'?: string | null;
8328
+ /**
8329
+ * ISO 8601 datetime string for when this conversation was initiated.
8330
+ * @type {string}
8331
+ * @memberof ScheduledConversation
8332
+ */
8333
+ 'initiated'?: string;
8334
+ /**
8335
+ * Detected intent attached at conversation start or first customer message.
8336
+ * @type {string}
8337
+ * @memberof ScheduledConversation
8338
+ */
8339
+ 'intent'?: string | null;
8340
+ /**
8341
+ * Confidence score for the detected intent.
8342
+ * @type {number}
8343
+ * @memberof ScheduledConversation
8344
+ */
8345
+ 'intentScore'?: number | null;
8346
+ /**
8347
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
8348
+ * @type {string}
8349
+ * @memberof ScheduledConversation
8350
+ */
8351
+ 'read'?: string;
8352
+ /**
8353
+ * Server-assigned conversation metadata.
8354
+ * @type {{ [key: string]: any; }}
8355
+ * @memberof ScheduledConversation
8356
+ */
8357
+ 'metadata'?: { [key: string]: any; };
8358
+ /**
8359
+ * Metadata for anticipating a preflight response.
8360
+ * @type {{ [key: string]: any; }}
8361
+ * @memberof ScheduledConversation
8362
+ */
8363
+ 'anticipate'?: { [key: string]: any; };
8364
+ /**
8365
+ * Command-flow configuration attached to this conversation.
8366
+ * @type {{ [key: string]: any; }}
8367
+ * @memberof ScheduledConversation
8368
+ */
8369
+ 'command'?: { [key: string]: any; };
8370
+ /**
8371
+ * Overrides the Persona Model ingress mode for this conversation.
8372
+ * @type {string}
8373
+ * @memberof ScheduledConversation
8374
+ */
8375
+ 'ingress'?: ScheduledConversationIngressEnum;
6833
8376
  /**
6834
8377
  * ISO 8601 datetime string
6835
8378
  * @type {string}
@@ -6856,6 +8399,23 @@ export interface ScheduledConversation {
6856
8399
  '$group'?: string;
6857
8400
  }
6858
8401
 
8402
+ export const ScheduledConversationLockCodeEnum = {
8403
+ WorkflowStagnation: 'workflow_stagnation',
8404
+ MaxLockAttempts: 'max_lock_attempts',
8405
+ RuntimeError: 'runtime_error',
8406
+ ManualMode: 'manual_mode',
8407
+ PolicyBlock: 'policy_block'
8408
+ } as const;
8409
+
8410
+ export type ScheduledConversationLockCodeEnum = typeof ScheduledConversationLockCodeEnum[keyof typeof ScheduledConversationLockCodeEnum];
8411
+ export const ScheduledConversationIngressEnum = {
8412
+ Auto: 'auto',
8413
+ Manual: 'manual',
8414
+ App: 'app',
8415
+ Webhook: 'webhook'
8416
+ } as const;
8417
+
8418
+ export type ScheduledConversationIngressEnum = typeof ScheduledConversationIngressEnum[keyof typeof ScheduledConversationIngressEnum];
6859
8419
 
6860
8420
  /**
6861
8421
  *
@@ -6876,12 +8436,30 @@ export interface ScheduledConversationAllOf {
6876
8436
  * @interface ScheduledConversationGroup
6877
8437
  */
6878
8438
  export interface ScheduledConversationGroup {
8439
+ /**
8440
+ * Conversation document id. Public/admin clients may receive this field; middleware does not store it inside the Firestore document body.
8441
+ * @type {string}
8442
+ * @memberof ScheduledConversationGroup
8443
+ */
8444
+ '$id'?: string;
8445
+ /**
8446
+ * Business/organization this conversation belongs to
8447
+ * @type {string}
8448
+ * @memberof ScheduledConversationGroup
8449
+ */
8450
+ '$business'?: string;
6879
8451
  /**
6880
8452
  * Default agent persona id assigned to the conversation(s)
6881
8453
  * @type {string}
6882
8454
  * @memberof ScheduledConversationGroup
6883
8455
  */
6884
8456
  '$agent'?: string;
8457
+ /**
8458
+ * Customer this conversation is with
8459
+ * @type {string}
8460
+ * @memberof ScheduledConversationGroup
8461
+ */
8462
+ '$customer'?: string;
6885
8463
  /**
6886
8464
  * Initial contexts to load when starting the conversation
6887
8465
  * @type {Array<string>}
@@ -6890,10 +8468,106 @@ export interface ScheduledConversationGroup {
6890
8468
  'initialContexts'?: Array<string>;
6891
8469
  /**
6892
8470
  *
6893
- * @type {ConversationBaseEnvironmentProps}
8471
+ * @type {ConversationChannel}
8472
+ * @memberof ScheduledConversationGroup
8473
+ */
8474
+ 'channel'?: ConversationChannel;
8475
+ /**
8476
+ *
8477
+ * @type {ConversationChannelProps}
8478
+ * @memberof ScheduledConversationGroup
8479
+ */
8480
+ 'channelProps'?: ConversationChannelProps;
8481
+ /**
8482
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
8483
+ * @type {boolean}
8484
+ * @memberof ScheduledConversationGroup
8485
+ */
8486
+ 'locked'?: boolean | null;
8487
+ /**
8488
+ * Machine-readable lock reason.
8489
+ * @type {string}
8490
+ * @memberof ScheduledConversationGroup
8491
+ */
8492
+ 'lockCode'?: ScheduledConversationGroupLockCodeEnum;
8493
+ /**
8494
+ * Human-readable locked reason.
8495
+ * @type {string}
8496
+ * @memberof ScheduledConversationGroup
8497
+ */
8498
+ 'lockedReason'?: string | null;
8499
+ /**
8500
+ * Number of consecutive workflow/context no-progress attempts.
8501
+ * @type {number}
8502
+ * @memberof ScheduledConversationGroup
8503
+ */
8504
+ 'lockAttempts'?: number | null;
8505
+ /**
8506
+ * Contact that received a forward handoff.
8507
+ * @type {string}
8508
+ * @memberof ScheduledConversationGroup
8509
+ */
8510
+ 'forwardedTo'?: string | null;
8511
+ /**
8512
+ * ISO 8601 datetime string for when the conversation was forwarded.
8513
+ * @type {string}
8514
+ * @memberof ScheduledConversationGroup
8515
+ */
8516
+ 'forwarded'?: string | null;
8517
+ /**
8518
+ * Operator or workflow note attached to the forward.
8519
+ * @type {string}
8520
+ * @memberof ScheduledConversationGroup
8521
+ */
8522
+ 'forwardNote'?: string | null;
8523
+ /**
8524
+ * ISO 8601 datetime string for when this conversation was initiated.
8525
+ * @type {string}
8526
+ * @memberof ScheduledConversationGroup
8527
+ */
8528
+ 'initiated'?: string;
8529
+ /**
8530
+ * Detected intent attached at conversation start or first customer message.
8531
+ * @type {string}
6894
8532
  * @memberof ScheduledConversationGroup
6895
8533
  */
6896
- 'environmentProps'?: ConversationBaseEnvironmentProps;
8534
+ 'intent'?: string | null;
8535
+ /**
8536
+ * Confidence score for the detected intent.
8537
+ * @type {number}
8538
+ * @memberof ScheduledConversationGroup
8539
+ */
8540
+ 'intentScore'?: number | null;
8541
+ /**
8542
+ * ISO 8601 datetime string for when the account user read this conversation in the app.
8543
+ * @type {string}
8544
+ * @memberof ScheduledConversationGroup
8545
+ */
8546
+ 'read'?: string;
8547
+ /**
8548
+ * Server-assigned conversation metadata.
8549
+ * @type {{ [key: string]: any; }}
8550
+ * @memberof ScheduledConversationGroup
8551
+ */
8552
+ 'metadata'?: { [key: string]: any; };
8553
+ /**
8554
+ * Metadata for anticipating a preflight response.
8555
+ * @type {{ [key: string]: any; }}
8556
+ * @memberof ScheduledConversationGroup
8557
+ */
8558
+ 'anticipate'?: { [key: string]: any; };
8559
+ /**
8560
+ * Command-flow configuration attached to this conversation.
8561
+ * @type {{ [key: string]: any; }}
8562
+ * @memberof ScheduledConversationGroup
8563
+ */
8564
+ 'command'?: { [key: string]: any; };
8565
+ /**
8566
+ * Overrides the Persona Model ingress mode for this conversation.
8567
+ * @type {string}
8568
+ * @memberof ScheduledConversationGroup
8569
+ */
8570
+ 'ingress'?: ScheduledConversationGroupIngressEnum;
6897
8571
  /**
6898
8572
  * ISO 8601 datetime string
6899
8573
  * @type {string}
@@ -6919,6 +8593,25 @@ export interface ScheduledConversationGroup {
6919
8593
  */
6920
8594
  'delay'?: number;
6921
8595
  }
8596
+
8597
+ export const ScheduledConversationGroupLockCodeEnum = {
8598
+ WorkflowStagnation: 'workflow_stagnation',
8599
+ MaxLockAttempts: 'max_lock_attempts',
8600
+ RuntimeError: 'runtime_error',
8601
+ ManualMode: 'manual_mode',
8602
+ PolicyBlock: 'policy_block'
8603
+ } as const;
8604
+
8605
+ export type ScheduledConversationGroupLockCodeEnum = typeof ScheduledConversationGroupLockCodeEnum[keyof typeof ScheduledConversationGroupLockCodeEnum];
8606
+ export const ScheduledConversationGroupIngressEnum = {
8607
+ Auto: 'auto',
8608
+ Manual: 'manual',
8609
+ App: 'app',
8610
+ Webhook: 'webhook'
8611
+ } as const;
8612
+
8613
+ export type ScheduledConversationGroupIngressEnum = typeof ScheduledConversationGroupIngressEnum[keyof typeof ScheduledConversationGroupIngressEnum];
8614
+
6922
8615
  /**
6923
8616
  *
6924
8617
  * @export