@scout9/admin 1.0.0-alpha.0.0.68 → 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,18 +621,42 @@ 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>}
633
651
  * @memberof Conversation
634
652
  */
635
653
  'initialContexts'?: Array<string>;
654
+ /**
655
+ *
656
+ * @type {ConversationChannel}
657
+ * @memberof Conversation
658
+ */
659
+ 'channel': ConversationChannel;
636
660
  /**
637
661
  *
638
662
  * @type {ConversationChannelProps}
@@ -640,87 +664,114 @@ export interface Conversation {
640
664
  */
641
665
  'channelProps'?: ConversationChannelProps;
642
666
  /**
643
- *
644
- * @type {ConversationBaseEnvironmentProps}
667
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
668
+ * @type {boolean}
645
669
  * @memberof Conversation
646
- * @deprecated
647
670
  */
648
- 'environmentProps'?: ConversationBaseEnvironmentProps;
671
+ 'locked'?: boolean | null;
649
672
  /**
650
- * User for this conversation
673
+ * Machine-readable lock reason.
651
674
  * @type {string}
652
675
  * @memberof Conversation
653
676
  */
654
- '$user': string;
677
+ 'lockCode'?: ConversationLockCodeEnum;
655
678
  /**
656
- * Customer this conversation is with (use $user instead)
679
+ * Human-readable locked reason.
657
680
  * @type {string}
658
681
  * @memberof Conversation
659
- * @deprecated
660
682
  */
661
- '$customer'?: string;
683
+ 'lockedReason'?: string | null;
662
684
  /**
663
- *
664
- * @type {ConversationChannel}
685
+ * Number of consecutive workflow/context no-progress attempts.
686
+ * @type {number}
665
687
  * @memberof Conversation
666
688
  */
667
- 'channel': ConversationChannel;
689
+ 'lockAttempts'?: number | null;
668
690
  /**
669
- *
670
- * @type {ConversationEnvironment}
691
+ * Contact that received a forward handoff.
692
+ * @type {string}
671
693
  * @memberof Conversation
672
- * @deprecated
673
694
  */
674
- 'environment'?: ConversationEnvironment;
695
+ 'forwardedTo'?: string | null;
675
696
  /**
676
- * Whether this conversation is a test or not
677
- * @type {boolean}
697
+ * ISO 8601 datetime string for when the conversation was forwarded.
698
+ * @type {string}
678
699
  * @memberof Conversation
679
700
  */
680
- 'test'?: boolean;
681
- }
682
-
683
-
684
- /**
685
- *
686
- * @export
687
- * @interface ConversationAllOf
688
- */
689
- export interface ConversationAllOf {
701
+ 'forwarded'?: string | null;
690
702
  /**
691
- * User for this conversation
703
+ * Operator or workflow note attached to the forward.
692
704
  * @type {string}
693
- * @memberof ConversationAllOf
705
+ * @memberof Conversation
694
706
  */
695
- '$user': string;
707
+ 'forwardNote'?: string | null;
696
708
  /**
697
- * Customer this conversation is with (use $user instead)
709
+ * ISO 8601 datetime string for when this conversation was initiated.
698
710
  * @type {string}
699
- * @memberof ConversationAllOf
700
- * @deprecated
711
+ * @memberof Conversation
701
712
  */
702
- '$customer'?: string;
713
+ 'initiated'?: string;
703
714
  /**
704
- *
705
- * @type {ConversationChannel}
706
- * @memberof ConversationAllOf
715
+ * Detected intent attached at conversation start or first customer message.
716
+ * @type {string}
717
+ * @memberof Conversation
707
718
  */
708
- 'channel': ConversationChannel;
719
+ 'intent'?: string | null;
709
720
  /**
710
- *
711
- * @type {ConversationEnvironment}
712
- * @memberof ConversationAllOf
713
- * @deprecated
721
+ * Confidence score for the detected intent.
722
+ * @type {number}
723
+ * @memberof Conversation
714
724
  */
715
- 'environment'?: ConversationEnvironment;
725
+ 'intentScore'?: number | null;
716
726
  /**
717
- * Whether this conversation is a test or not
718
- * @type {boolean}
719
- * @memberof ConversationAllOf
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
748
+ */
749
+ 'command'?: { [key: string]: any; };
750
+ /**
751
+ * Overrides the Persona Model ingress mode for this conversation.
752
+ * @type {string}
753
+ * @memberof Conversation
720
754
  */
721
- 'test'?: boolean;
755
+ 'ingress'?: ConversationIngressEnum;
722
756
  }
723
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];
724
775
 
725
776
  /**
726
777
  * Base props all conversation types will have
@@ -728,18 +779,42 @@ export interface ConversationAllOf {
728
779
  * @interface ConversationBase
729
780
  */
730
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;
731
794
  /**
732
795
  * Default agent persona id assigned to the conversation(s)
733
796
  * @type {string}
734
797
  * @memberof ConversationBase
735
798
  */
736
799
  '$agent'?: string;
800
+ /**
801
+ * Customer this conversation is with
802
+ * @type {string}
803
+ * @memberof ConversationBase
804
+ */
805
+ '$customer'?: string;
737
806
  /**
738
807
  * Initial contexts to load when starting the conversation
739
808
  * @type {Array<string>}
740
809
  * @memberof ConversationBase
741
810
  */
742
811
  'initialContexts'?: Array<string>;
812
+ /**
813
+ *
814
+ * @type {ConversationChannel}
815
+ * @memberof ConversationBase
816
+ */
817
+ 'channel'?: ConversationChannel;
743
818
  /**
744
819
  *
745
820
  * @type {ConversationChannelProps}
@@ -747,52 +822,114 @@ export interface ConversationBase {
747
822
  */
748
823
  'channelProps'?: ConversationChannelProps;
749
824
  /**
750
- *
751
- * @type {ConversationBaseEnvironmentProps}
825
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
826
+ * @type {boolean}
752
827
  * @memberof ConversationBase
753
- * @deprecated
754
828
  */
755
- 'environmentProps'?: ConversationBaseEnvironmentProps;
756
- }
757
- /**
758
- * Deprecated legacy environment properties. Use channelProps.
759
- * @export
760
- * @interface ConversationBaseEnvironmentProps
761
- */
762
- export interface ConversationBaseEnvironmentProps {
829
+ 'locked'?: boolean | null;
763
830
  /**
764
- * Subject line for email-style channels such as Gmail and Outlook.
831
+ * Machine-readable lock reason.
765
832
  * @type {string}
766
- * @memberof ConversationBaseEnvironmentProps
833
+ * @memberof ConversationBase
767
834
  */
768
- 'subject'?: string;
835
+ 'lockCode'?: ConversationBaseLockCodeEnum;
769
836
  /**
770
- * Provider thread id used to sync Gmail/Outlook channel messages with this conversation.
837
+ * Human-readable locked reason.
771
838
  * @type {string}
772
- * @memberof ConversationBaseEnvironmentProps
839
+ * @memberof ConversationBase
773
840
  */
774
- 'platformEmailThreadId'?: string;
841
+ 'lockedReason'?: string | null;
775
842
  /**
776
- * Twilio message sid that initiated this conversation.
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.
777
856
  * @type {string}
778
- * @memberof ConversationBaseEnvironmentProps
857
+ * @memberof ConversationBase
779
858
  */
780
- 'smsMessageSid'?: string;
859
+ 'forwarded'?: string | null;
781
860
  /**
782
- * Persisted channel-resolution path used for the current conversation.
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; }}
899
+ * @memberof ConversationBase
900
+ */
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.
783
910
  * @type {string}
784
- * @memberof ConversationBaseEnvironmentProps
911
+ * @memberof ConversationBase
785
912
  */
786
- 'channelResolutionPath'?: ConversationBaseEnvironmentPropsChannelResolutionPathEnum;
913
+ 'ingress'?: ConversationBaseIngressEnum;
787
914
  }
788
915
 
789
- export const ConversationBaseEnvironmentPropsChannelResolutionPathEnum = {
790
- Production: 'twilio_production',
791
- LegacyPmt: 'twilio_legacy_pmt',
792
- FreeBridge: 'twilio_free_bridge'
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'
793
930
  } as const;
794
931
 
795
- export type ConversationBaseEnvironmentPropsChannelResolutionPathEnum = typeof ConversationBaseEnvironmentPropsChannelResolutionPathEnum[keyof typeof ConversationBaseEnvironmentPropsChannelResolutionPathEnum];
932
+ export type ConversationBaseIngressEnum = typeof ConversationBaseIngressEnum[keyof typeof ConversationBaseIngressEnum];
796
933
 
797
934
  /**
798
935
  * Canonical channel that initiated and should continue the customer conversation.
@@ -900,13 +1037,6 @@ export interface ConversationContextField {
900
1037
  * @memberof ConversationContextField
901
1038
  */
902
1039
  'logic'?: Logic;
903
- /**
904
- * The conditions of the conversation
905
- * @type {Array<ConversationContextGroup>}
906
- * @memberof ConversationContextField
907
- * @deprecated
908
- */
909
- 'conditions'?: Array<ConversationContextGroup>;
910
1040
  /**
911
1041
  * The triggers of the conversation
912
1042
  * @type {Array<string>}
@@ -1023,18 +1153,42 @@ export type ConversationContextValueOneOfInner = boolean | number | string;
1023
1153
  * @interface ConversationCreateRequest
1024
1154
  */
1025
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;
1026
1168
  /**
1027
1169
  * Default agent persona id assigned to the conversation(s)
1028
1170
  * @type {string}
1029
1171
  * @memberof ConversationCreateRequest
1030
1172
  */
1031
1173
  '$agent': string;
1174
+ /**
1175
+ * Customer this conversation is with
1176
+ * @type {string}
1177
+ * @memberof ConversationCreateRequest
1178
+ */
1179
+ '$customer': string;
1032
1180
  /**
1033
1181
  * Initial contexts to load when starting the conversation
1034
1182
  * @type {Array<string>}
1035
1183
  * @memberof ConversationCreateRequest
1036
1184
  */
1037
1185
  'initialContexts'?: Array<string>;
1186
+ /**
1187
+ *
1188
+ * @type {ConversationChannel}
1189
+ * @memberof ConversationCreateRequest
1190
+ */
1191
+ 'channel': ConversationChannel;
1038
1192
  /**
1039
1193
  *
1040
1194
  * @type {ConversationChannelProps}
@@ -1042,44 +1196,95 @@ export interface ConversationCreateRequest {
1042
1196
  */
1043
1197
  'channelProps'?: ConversationChannelProps;
1044
1198
  /**
1045
- *
1046
- * @type {ConversationBaseEnvironmentProps}
1199
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1200
+ * @type {boolean}
1047
1201
  * @memberof ConversationCreateRequest
1048
- * @deprecated
1049
1202
  */
1050
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1203
+ 'locked'?: boolean | null;
1051
1204
  /**
1052
- * User for this conversation
1205
+ * Machine-readable lock reason.
1053
1206
  * @type {string}
1054
1207
  * @memberof ConversationCreateRequest
1055
1208
  */
1056
- '$user': string;
1209
+ 'lockCode'?: ConversationCreateRequestLockCodeEnum;
1057
1210
  /**
1058
- * Customer this conversation is with (use $user instead)
1211
+ * Human-readable locked reason.
1059
1212
  * @type {string}
1060
1213
  * @memberof ConversationCreateRequest
1061
- * @deprecated
1062
1214
  */
1063
- '$customer'?: string;
1215
+ 'lockedReason'?: string | null;
1064
1216
  /**
1065
- *
1066
- * @type {ConversationChannel}
1217
+ * Number of consecutive workflow/context no-progress attempts.
1218
+ * @type {number}
1067
1219
  * @memberof ConversationCreateRequest
1068
1220
  */
1069
- 'channel': ConversationChannel;
1221
+ 'lockAttempts'?: number | null;
1070
1222
  /**
1071
- *
1072
- * @type {ConversationEnvironment}
1223
+ * Contact that received a forward handoff.
1224
+ * @type {string}
1073
1225
  * @memberof ConversationCreateRequest
1074
- * @deprecated
1075
1226
  */
1076
- 'environment'?: ConversationEnvironment;
1227
+ 'forwardedTo'?: string | null;
1077
1228
  /**
1078
- * Whether this conversation is a test or not
1079
- * @type {boolean}
1229
+ * ISO 8601 datetime string for when the conversation was forwarded.
1230
+ * @type {string}
1080
1231
  * @memberof ConversationCreateRequest
1081
1232
  */
1082
- 'test'?: boolean;
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}
1285
+ * @memberof ConversationCreateRequest
1286
+ */
1287
+ 'ingress'?: ConversationCreateRequestIngressEnum;
1083
1288
  /**
1084
1289
  * Appends a prefix to the conversation id, if a conversation id is prefixed with test, or dev, it will mute text messages
1085
1290
  * @type {string}
@@ -1088,6 +1293,23 @@ export interface ConversationCreateRequest {
1088
1293
  'idPrefix'?: string;
1089
1294
  }
1090
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];
1091
1313
 
1092
1314
  /**
1093
1315
  *
@@ -1164,21 +1386,6 @@ export interface ConversationCreateResponseAllOf {
1164
1386
  */
1165
1387
  'initiated': string;
1166
1388
  }
1167
- /**
1168
- * Deprecated broad environment bucket (phone, web, or email). Use ConversationChannel for routing.
1169
- * @export
1170
- * @enum {string}
1171
- */
1172
-
1173
- export const ConversationEnvironment = {
1174
- Phone: 'phone',
1175
- Web: 'web',
1176
- Email: 'email'
1177
- } as const;
1178
-
1179
- export type ConversationEnvironment = typeof ConversationEnvironment[keyof typeof ConversationEnvironment];
1180
-
1181
-
1182
1389
  /**
1183
1390
  *
1184
1391
  * @export
@@ -1186,43 +1393,35 @@ export type ConversationEnvironment = typeof ConversationEnvironment[keyof typeo
1186
1393
  */
1187
1394
  export interface ConversationGetResponse {
1188
1395
  /**
1189
- * Default agent persona id assigned to the conversation(s)
1396
+ * The ID of the conversation
1190
1397
  * @type {string}
1191
1398
  * @memberof ConversationGetResponse
1192
1399
  */
1193
- '$agent': string;
1400
+ '$id': string;
1194
1401
  /**
1195
- * Initial contexts to load when starting the conversation
1196
- * @type {Array<string>}
1402
+ * Business/organization this conversation belongs to
1403
+ * @type {string}
1197
1404
  * @memberof ConversationGetResponse
1198
1405
  */
1199
- 'initialContexts'?: Array<string>;
1406
+ '$business': string;
1200
1407
  /**
1201
- *
1202
- * @type {ConversationChannelProps}
1408
+ * Default agent persona id assigned to the conversation(s)
1409
+ * @type {string}
1203
1410
  * @memberof ConversationGetResponse
1204
1411
  */
1205
- 'channelProps'?: ConversationChannelProps;
1206
- /**
1207
- *
1208
- * @type {ConversationBaseEnvironmentProps}
1209
- * @memberof ConversationGetResponse
1210
- * @deprecated
1211
- */
1212
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1412
+ '$agent': string;
1213
1413
  /**
1214
- * User for this conversation
1414
+ * Customer this conversation is with
1215
1415
  * @type {string}
1216
1416
  * @memberof ConversationGetResponse
1217
1417
  */
1218
- '$user': string;
1418
+ '$customer': string;
1219
1419
  /**
1220
- * Customer this conversation is with (use $user instead)
1221
- * @type {string}
1420
+ * Initial contexts to load when starting the conversation
1421
+ * @type {Array<string>}
1222
1422
  * @memberof ConversationGetResponse
1223
- * @deprecated
1224
1423
  */
1225
- '$customer'?: string;
1424
+ 'initialContexts'?: Array<string>;
1226
1425
  /**
1227
1426
  *
1228
1427
  * @type {ConversationChannel}
@@ -1231,35 +1430,52 @@ export interface ConversationGetResponse {
1231
1430
  'channel': ConversationChannel;
1232
1431
  /**
1233
1432
  *
1234
- * @type {ConversationEnvironment}
1433
+ * @type {ConversationChannelProps}
1235
1434
  * @memberof ConversationGetResponse
1236
- * @deprecated
1237
1435
  */
1238
- 'environment'?: ConversationEnvironment;
1436
+ 'channelProps'?: ConversationChannelProps;
1239
1437
  /**
1240
- * Whether this conversation is a test or not
1438
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1241
1439
  * @type {boolean}
1242
1440
  * @memberof ConversationGetResponse
1243
1441
  */
1244
- 'test'?: boolean;
1442
+ 'locked'?: boolean | null;
1245
1443
  /**
1246
- * The client web url of the conversation
1444
+ * Machine-readable lock reason.
1247
1445
  * @type {string}
1248
1446
  * @memberof ConversationGetResponse
1249
1447
  */
1250
- 'clientWebUrl'?: string;
1448
+ 'lockCode'?: ConversationGetResponseLockCodeEnum;
1251
1449
  /**
1252
- * The agent web url of the conversation (requires phone two-factor authentication)
1450
+ * Human-readable locked reason.
1253
1451
  * @type {string}
1254
1452
  * @memberof ConversationGetResponse
1255
1453
  */
1256
- 'agentWebUrl'?: string;
1454
+ 'lockedReason'?: string | null;
1257
1455
  /**
1258
- * The agent test web url of the conversation, used for testing the conversation without notifying the customer
1456
+ * Number of consecutive workflow/context no-progress attempts.
1457
+ * @type {number}
1458
+ * @memberof ConversationGetResponse
1459
+ */
1460
+ 'lockAttempts'?: number | null;
1461
+ /**
1462
+ * Contact that received a forward handoff.
1259
1463
  * @type {string}
1260
1464
  * @memberof ConversationGetResponse
1261
1465
  */
1262
- 'agentTestWebUrl'?: string;
1466
+ 'forwardedTo'?: string | null;
1467
+ /**
1468
+ * ISO 8601 datetime string for when the conversation was forwarded.
1469
+ * @type {string}
1470
+ * @memberof ConversationGetResponse
1471
+ */
1472
+ 'forwarded'?: string | null;
1473
+ /**
1474
+ * Operator or workflow note attached to the forward.
1475
+ * @type {string}
1476
+ * @memberof ConversationGetResponse
1477
+ */
1478
+ 'forwardNote'?: string | null;
1263
1479
  /**
1264
1480
  * ISO 8601 date string of when the conversation was initiated
1265
1481
  * @type {string}
@@ -1267,13 +1483,84 @@ export interface ConversationGetResponse {
1267
1483
  */
1268
1484
  'initiated': string;
1269
1485
  /**
1270
- * The ID of the conversation
1486
+ * Detected intent attached at conversation start or first customer message.
1271
1487
  * @type {string}
1272
1488
  * @memberof ConversationGetResponse
1273
1489
  */
1274
- '$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;
1275
1545
  }
1276
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];
1277
1564
 
1278
1565
  /**
1279
1566
  *
@@ -1350,18 +1637,42 @@ export interface ConversationScheduleParams {
1350
1637
  * @interface ConversationUpdateRequest
1351
1638
  */
1352
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;
1353
1652
  /**
1354
1653
  * Default agent persona id assigned to the conversation(s)
1355
1654
  * @type {string}
1356
1655
  * @memberof ConversationUpdateRequest
1357
1656
  */
1358
1657
  '$agent'?: string;
1658
+ /**
1659
+ * Customer this conversation is with
1660
+ * @type {string}
1661
+ * @memberof ConversationUpdateRequest
1662
+ */
1663
+ '$customer'?: string;
1359
1664
  /**
1360
1665
  * Initial contexts to load when starting the conversation
1361
1666
  * @type {Array<string>}
1362
1667
  * @memberof ConversationUpdateRequest
1363
1668
  */
1364
1669
  'initialContexts'?: Array<string>;
1670
+ /**
1671
+ *
1672
+ * @type {ConversationChannel}
1673
+ * @memberof ConversationUpdateRequest
1674
+ */
1675
+ 'channel'?: ConversationChannel;
1365
1676
  /**
1366
1677
  *
1367
1678
  * @type {ConversationChannelProps}
@@ -1369,19 +1680,115 @@ export interface ConversationUpdateRequest {
1369
1680
  */
1370
1681
  'channelProps'?: ConversationChannelProps;
1371
1682
  /**
1372
- *
1373
- * @type {ConversationBaseEnvironmentProps}
1683
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1684
+ * @type {boolean}
1374
1685
  * @memberof ConversationUpdateRequest
1375
- * @deprecated
1376
1686
  */
1377
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1687
+ 'locked'?: boolean | null;
1378
1688
  /**
1379
- * The ID of the conversation to update
1689
+ * Machine-readable lock reason.
1380
1690
  * @type {string}
1381
1691
  * @memberof ConversationUpdateRequest
1382
1692
  */
1383
- '$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;
1384
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
+
1385
1792
  /**
1386
1793
  *
1387
1794
  * @export
@@ -1451,18 +1858,42 @@ export interface ConversationUrls {
1451
1858
  * @interface ConversationWithId
1452
1859
  */
1453
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;
1454
1873
  /**
1455
1874
  * Default agent persona id assigned to the conversation(s)
1456
1875
  * @type {string}
1457
1876
  * @memberof ConversationWithId
1458
1877
  */
1459
1878
  '$agent': string;
1879
+ /**
1880
+ * Customer this conversation is with
1881
+ * @type {string}
1882
+ * @memberof ConversationWithId
1883
+ */
1884
+ '$customer': string;
1460
1885
  /**
1461
1886
  * Initial contexts to load when starting the conversation
1462
1887
  * @type {Array<string>}
1463
1888
  * @memberof ConversationWithId
1464
1889
  */
1465
1890
  'initialContexts'?: Array<string>;
1891
+ /**
1892
+ *
1893
+ * @type {ConversationChannel}
1894
+ * @memberof ConversationWithId
1895
+ */
1896
+ 'channel': ConversationChannel;
1466
1897
  /**
1467
1898
  *
1468
1899
  * @type {ConversationChannelProps}
@@ -1470,52 +1901,114 @@ export interface ConversationWithId {
1470
1901
  */
1471
1902
  'channelProps'?: ConversationChannelProps;
1472
1903
  /**
1473
- *
1474
- * @type {ConversationBaseEnvironmentProps}
1904
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
1905
+ * @type {boolean}
1475
1906
  * @memberof ConversationWithId
1476
- * @deprecated
1477
1907
  */
1478
- 'environmentProps'?: ConversationBaseEnvironmentProps;
1908
+ 'locked'?: boolean | null;
1479
1909
  /**
1480
- * User for this conversation
1910
+ * Machine-readable lock reason.
1481
1911
  * @type {string}
1482
1912
  * @memberof ConversationWithId
1483
1913
  */
1484
- '$user': string;
1914
+ 'lockCode'?: ConversationWithIdLockCodeEnum;
1485
1915
  /**
1486
- * Customer this conversation is with (use $user instead)
1916
+ * Human-readable locked reason.
1487
1917
  * @type {string}
1488
1918
  * @memberof ConversationWithId
1489
- * @deprecated
1490
1919
  */
1491
- '$customer'?: string;
1920
+ 'lockedReason'?: string | null;
1492
1921
  /**
1493
- *
1494
- * @type {ConversationChannel}
1922
+ * Number of consecutive workflow/context no-progress attempts.
1923
+ * @type {number}
1495
1924
  * @memberof ConversationWithId
1496
1925
  */
1497
- 'channel': ConversationChannel;
1926
+ 'lockAttempts'?: number | null;
1498
1927
  /**
1499
- *
1500
- * @type {ConversationEnvironment}
1928
+ * Contact that received a forward handoff.
1929
+ * @type {string}
1501
1930
  * @memberof ConversationWithId
1502
- * @deprecated
1503
1931
  */
1504
- 'environment'?: ConversationEnvironment;
1932
+ 'forwardedTo'?: string | null;
1505
1933
  /**
1506
- * Whether this conversation is a test or not
1507
- * @type {boolean}
1934
+ * ISO 8601 datetime string for when the conversation was forwarded.
1935
+ * @type {string}
1508
1936
  * @memberof ConversationWithId
1509
1937
  */
1510
- 'test'?: boolean;
1938
+ 'forwarded'?: string | null;
1511
1939
  /**
1512
- * The ID of the conversation
1940
+ * Operator or workflow note attached to the forward.
1513
1941
  * @type {string}
1514
1942
  * @memberof ConversationWithId
1515
1943
  */
1516
- '$id': string;
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;
1517
1993
  }
1518
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];
1519
2012
 
1520
2013
  /**
1521
2014
  *
@@ -2094,13 +2587,6 @@ export interface CustomerGroupRecord {
2094
2587
  * @memberof CustomerGroupRecord
2095
2588
  */
2096
2589
  'channel': ConversationChannel;
2097
- /**
2098
- *
2099
- * @type {ConversationEnvironment}
2100
- * @memberof CustomerGroupRecord
2101
- * @deprecated
2102
- */
2103
- 'environment'?: ConversationEnvironment;
2104
2590
  /**
2105
2591
  * Overrides the default $agent for this customer
2106
2592
  * @type {string}
@@ -3500,12 +3986,30 @@ export interface ListApiOperationsResponseInnerAllOf {
3500
3986
  * @interface ListConversationsResponseInner
3501
3987
  */
3502
3988
  export interface ListConversationsResponseInner {
3989
+ /**
3990
+ * The ID of the conversation
3991
+ * @type {string}
3992
+ * @memberof ListConversationsResponseInner
3993
+ */
3994
+ '$id': string;
3995
+ /**
3996
+ * Business/organization this conversation belongs to
3997
+ * @type {string}
3998
+ * @memberof ListConversationsResponseInner
3999
+ */
4000
+ '$business': string;
3503
4001
  /**
3504
4002
  * Default agent persona id assigned to the conversation(s)
3505
4003
  * @type {string}
3506
4004
  * @memberof ListConversationsResponseInner
3507
4005
  */
3508
4006
  '$agent': string;
4007
+ /**
4008
+ * Customer this conversation is with
4009
+ * @type {string}
4010
+ * @memberof ListConversationsResponseInner
4011
+ */
4012
+ '$customer': string;
3509
4013
  /**
3510
4014
  * Initial contexts to load when starting the conversation
3511
4015
  * @type {Array<string>}
@@ -3514,81 +4018,143 @@ export interface ListConversationsResponseInner {
3514
4018
  'initialContexts'?: Array<string>;
3515
4019
  /**
3516
4020
  *
3517
- * @type {ConversationChannelProps}
4021
+ * @type {ConversationChannel}
3518
4022
  * @memberof ListConversationsResponseInner
3519
4023
  */
3520
- 'channelProps'?: ConversationChannelProps;
4024
+ 'channel': ConversationChannel;
3521
4025
  /**
3522
4026
  *
3523
- * @type {ConversationBaseEnvironmentProps}
4027
+ * @type {ConversationChannelProps}
4028
+ * @memberof ListConversationsResponseInner
4029
+ */
4030
+ 'channelProps'?: ConversationChannelProps;
4031
+ /**
4032
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
4033
+ * @type {boolean}
3524
4034
  * @memberof ListConversationsResponseInner
3525
- * @deprecated
3526
4035
  */
3527
- 'environmentProps'?: ConversationBaseEnvironmentProps;
4036
+ 'locked'?: boolean | null;
3528
4037
  /**
3529
- * User for this conversation
4038
+ * Machine-readable lock reason.
3530
4039
  * @type {string}
3531
4040
  * @memberof ListConversationsResponseInner
3532
4041
  */
3533
- '$user': string;
4042
+ 'lockCode'?: ListConversationsResponseInnerLockCodeEnum;
3534
4043
  /**
3535
- * Customer this conversation is with (use $user instead)
4044
+ * Human-readable locked reason.
3536
4045
  * @type {string}
3537
4046
  * @memberof ListConversationsResponseInner
3538
- * @deprecated
3539
4047
  */
3540
- '$customer'?: string;
4048
+ 'lockedReason'?: string | null;
3541
4049
  /**
3542
- *
3543
- * @type {ConversationChannel}
4050
+ * Number of consecutive workflow/context no-progress attempts.
4051
+ * @type {number}
3544
4052
  * @memberof ListConversationsResponseInner
3545
4053
  */
3546
- 'channel': ConversationChannel;
4054
+ 'lockAttempts'?: number | null;
3547
4055
  /**
3548
- *
3549
- * @type {ConversationEnvironment}
4056
+ * Contact that received a forward handoff.
4057
+ * @type {string}
3550
4058
  * @memberof ListConversationsResponseInner
3551
- * @deprecated
3552
4059
  */
3553
- 'environment'?: ConversationEnvironment;
4060
+ 'forwardedTo'?: string | null;
3554
4061
  /**
3555
- * Whether this conversation is a test or not
3556
- * @type {boolean}
4062
+ * ISO 8601 datetime string for when the conversation was forwarded.
4063
+ * @type {string}
3557
4064
  * @memberof ListConversationsResponseInner
3558
4065
  */
3559
- 'test'?: boolean;
4066
+ 'forwarded'?: string | null;
3560
4067
  /**
3561
- * The client web url of the conversation
4068
+ * Operator or workflow note attached to the forward.
3562
4069
  * @type {string}
3563
4070
  * @memberof ListConversationsResponseInner
3564
4071
  */
3565
- 'clientWebUrl'?: string;
4072
+ 'forwardNote'?: string | null;
3566
4073
  /**
3567
- * The agent web url of the conversation (requires phone two-factor authentication)
4074
+ * ISO 8601 date string of when the conversation was initiated
3568
4075
  * @type {string}
3569
4076
  * @memberof ListConversationsResponseInner
3570
4077
  */
3571
- 'agentWebUrl'?: string;
4078
+ 'initiated': string;
3572
4079
  /**
3573
- * The agent test web url of the conversation, used for testing the conversation without notifying the customer
4080
+ * Detected intent attached at conversation start or first customer message.
3574
4081
  * @type {string}
3575
4082
  * @memberof ListConversationsResponseInner
3576
4083
  */
3577
- 'agentTestWebUrl'?: string;
4084
+ 'intent'?: string | null;
3578
4085
  /**
3579
- * ISO 8601 date string of when the conversation was initiated
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.
3580
4093
  * @type {string}
3581
4094
  * @memberof ListConversationsResponseInner
3582
4095
  */
3583
- 'initiated': string;
4096
+ 'read'?: string;
3584
4097
  /**
3585
- * The ID of the conversation
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.
3586
4117
  * @type {string}
3587
4118
  * @memberof ListConversationsResponseInner
3588
4119
  */
3589
- '$id': string;
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;
3590
4139
  }
3591
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];
3592
4158
 
3593
4159
  /**
3594
4160
  *
@@ -5599,13 +6165,6 @@ export interface MessageCreateRequestConvoOneOf {
5599
6165
  * @memberof MessageCreateRequestConvoOneOf
5600
6166
  */
5601
6167
  'channel'?: ConversationChannel;
5602
- /**
5603
- *
5604
- * @type {ConversationEnvironment}
5605
- * @memberof MessageCreateRequestConvoOneOf
5606
- * @deprecated
5607
- */
5608
- 'environment'?: ConversationEnvironment;
5609
6168
  }
5610
6169
 
5611
6170
 
@@ -6303,18 +6862,42 @@ export interface RegexCondition {
6303
6862
  * @interface ScheduleCreateRequest
6304
6863
  */
6305
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;
6306
6877
  /**
6307
6878
  * Default agent persona id assigned to the conversation(s)
6308
6879
  * @type {string}
6309
6880
  * @memberof ScheduleCreateRequest
6310
6881
  */
6311
6882
  '$agent': string;
6883
+ /**
6884
+ * Customer this conversation is with
6885
+ * @type {string}
6886
+ * @memberof ScheduleCreateRequest
6887
+ */
6888
+ '$customer': string;
6312
6889
  /**
6313
6890
  * Initial contexts to load when starting the conversation
6314
6891
  * @type {Array<string>}
6315
6892
  * @memberof ScheduleCreateRequest
6316
6893
  */
6317
6894
  'initialContexts'?: Array<string>;
6895
+ /**
6896
+ *
6897
+ * @type {ConversationChannel}
6898
+ * @memberof ScheduleCreateRequest
6899
+ */
6900
+ 'channel': ConversationChannel;
6318
6901
  /**
6319
6902
  *
6320
6903
  * @type {ConversationChannelProps}
@@ -6322,44 +6905,95 @@ export interface ScheduleCreateRequest {
6322
6905
  */
6323
6906
  'channelProps'?: ConversationChannelProps;
6324
6907
  /**
6325
- *
6326
- * @type {ConversationBaseEnvironmentProps}
6908
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
6909
+ * @type {boolean}
6327
6910
  * @memberof ScheduleCreateRequest
6328
- * @deprecated
6329
6911
  */
6330
- 'environmentProps'?: ConversationBaseEnvironmentProps;
6912
+ 'locked'?: boolean | null;
6331
6913
  /**
6332
- * User for this conversation
6914
+ * Machine-readable lock reason.
6333
6915
  * @type {string}
6334
6916
  * @memberof ScheduleCreateRequest
6335
6917
  */
6336
- '$user': string;
6918
+ 'lockCode'?: ScheduleCreateRequestLockCodeEnum;
6337
6919
  /**
6338
- * Customer this conversation is with (use $user instead)
6920
+ * Human-readable locked reason.
6339
6921
  * @type {string}
6340
6922
  * @memberof ScheduleCreateRequest
6341
- * @deprecated
6342
6923
  */
6343
- '$customer'?: string;
6924
+ 'lockedReason'?: string | null;
6344
6925
  /**
6345
- *
6346
- * @type {ConversationChannel}
6926
+ * Number of consecutive workflow/context no-progress attempts.
6927
+ * @type {number}
6347
6928
  * @memberof ScheduleCreateRequest
6348
6929
  */
6349
- 'channel': ConversationChannel;
6930
+ 'lockAttempts'?: number | null;
6350
6931
  /**
6351
- *
6352
- * @type {ConversationEnvironment}
6932
+ * Contact that received a forward handoff.
6933
+ * @type {string}
6353
6934
  * @memberof ScheduleCreateRequest
6354
- * @deprecated
6355
6935
  */
6356
- 'environment'?: ConversationEnvironment;
6936
+ 'forwardedTo'?: string | null;
6357
6937
  /**
6358
- * Whether this conversation is a test or not
6359
- * @type {boolean}
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; }}
6360
6976
  * @memberof ScheduleCreateRequest
6361
6977
  */
6362
- 'test'?: boolean;
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; }}
6988
+ * @memberof ScheduleCreateRequest
6989
+ */
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;
6363
6997
  /**
6364
6998
  * ISO 8601 datetime string
6365
6999
  * @type {string}
@@ -6386,6 +7020,23 @@ export interface ScheduleCreateRequest {
6386
7020
  '$group'?: string;
6387
7021
  }
6388
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];
6389
7040
 
6390
7041
  /**
6391
7042
  *
@@ -6437,18 +7088,42 @@ export interface ScheduleCreateResponseAllOf {
6437
7088
  * @interface ScheduleGetResponse
6438
7089
  */
6439
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;
6440
7103
  /**
6441
7104
  * Default agent persona id assigned to the conversation(s)
6442
7105
  * @type {string}
6443
7106
  * @memberof ScheduleGetResponse
6444
7107
  */
6445
7108
  '$agent': string;
7109
+ /**
7110
+ * Customer this conversation is with
7111
+ * @type {string}
7112
+ * @memberof ScheduleGetResponse
7113
+ */
7114
+ '$customer': string;
6446
7115
  /**
6447
7116
  * Initial contexts to load when starting the conversation
6448
7117
  * @type {Array<string>}
6449
7118
  * @memberof ScheduleGetResponse
6450
7119
  */
6451
7120
  'initialContexts'?: Array<string>;
7121
+ /**
7122
+ *
7123
+ * @type {ConversationChannel}
7124
+ * @memberof ScheduleGetResponse
7125
+ */
7126
+ 'channel': ConversationChannel;
6452
7127
  /**
6453
7128
  *
6454
7129
  * @type {ConversationChannelProps}
@@ -6456,44 +7131,95 @@ export interface ScheduleGetResponse {
6456
7131
  */
6457
7132
  'channelProps'?: ConversationChannelProps;
6458
7133
  /**
6459
- *
6460
- * @type {ConversationBaseEnvironmentProps}
7134
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
7135
+ * @type {boolean}
6461
7136
  * @memberof ScheduleGetResponse
6462
- * @deprecated
6463
7137
  */
6464
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7138
+ 'locked'?: boolean | null;
6465
7139
  /**
6466
- * User for this conversation
7140
+ * Machine-readable lock reason.
6467
7141
  * @type {string}
6468
7142
  * @memberof ScheduleGetResponse
6469
7143
  */
6470
- '$user': string;
7144
+ 'lockCode'?: ScheduleGetResponseLockCodeEnum;
6471
7145
  /**
6472
- * Customer this conversation is with (use $user instead)
7146
+ * Human-readable locked reason.
6473
7147
  * @type {string}
6474
7148
  * @memberof ScheduleGetResponse
6475
- * @deprecated
6476
7149
  */
6477
- '$customer'?: string;
7150
+ 'lockedReason'?: string | null;
6478
7151
  /**
6479
- *
6480
- * @type {ConversationChannel}
7152
+ * Number of consecutive workflow/context no-progress attempts.
7153
+ * @type {number}
6481
7154
  * @memberof ScheduleGetResponse
6482
7155
  */
6483
- 'channel': ConversationChannel;
7156
+ 'lockAttempts'?: number | null;
6484
7157
  /**
6485
- *
6486
- * @type {ConversationEnvironment}
7158
+ * Contact that received a forward handoff.
7159
+ * @type {string}
6487
7160
  * @memberof ScheduleGetResponse
6488
- * @deprecated
6489
7161
  */
6490
- 'environment'?: ConversationEnvironment;
7162
+ 'forwardedTo'?: string | null;
6491
7163
  /**
6492
- * Whether this conversation is a test or not
6493
- * @type {boolean}
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}
6494
7190
  * @memberof ScheduleGetResponse
6495
7191
  */
6496
- 'test'?: boolean;
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; }}
7214
+ * @memberof ScheduleGetResponse
7215
+ */
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;
6497
7223
  /**
6498
7224
  * ISO 8601 datetime string
6499
7225
  * @type {string}
@@ -6538,6 +7264,23 @@ export interface ScheduleGetResponse {
6538
7264
  'agentTestWebUrl'?: string;
6539
7265
  }
6540
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];
6541
7284
 
6542
7285
  /**
6543
7286
  *
@@ -6545,12 +7288,30 @@ export interface ScheduleGetResponse {
6545
7288
  * @interface ScheduleGroupCreateRequest
6546
7289
  */
6547
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;
6548
7303
  /**
6549
7304
  * Default agent persona id assigned to the conversation(s)
6550
7305
  * @type {string}
6551
7306
  * @memberof ScheduleGroupCreateRequest
6552
7307
  */
6553
7308
  '$agent'?: string;
7309
+ /**
7310
+ * Customer this conversation is with
7311
+ * @type {string}
7312
+ * @memberof ScheduleGroupCreateRequest
7313
+ */
7314
+ '$customer'?: string;
6554
7315
  /**
6555
7316
  * Initial contexts to load when starting the conversation
6556
7317
  * @type {Array<string>}
@@ -6559,51 +7320,159 @@ export interface ScheduleGroupCreateRequest {
6559
7320
  'initialContexts'?: Array<string>;
6560
7321
  /**
6561
7322
  *
6562
- * @type {ConversationChannelProps}
7323
+ * @type {ConversationChannel}
6563
7324
  * @memberof ScheduleGroupCreateRequest
6564
7325
  */
6565
- 'channelProps'?: ConversationChannelProps;
7326
+ 'channel'?: ConversationChannel;
6566
7327
  /**
6567
7328
  *
6568
- * @type {ConversationBaseEnvironmentProps}
7329
+ * @type {ConversationChannelProps}
6569
7330
  * @memberof ScheduleGroupCreateRequest
6570
- * @deprecated
6571
7331
  */
6572
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7332
+ 'channelProps'?: ConversationChannelProps;
6573
7333
  /**
6574
- * ISO 8601 datetime string
6575
- * @type {string}
7334
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
7335
+ * @type {boolean}
6576
7336
  * @memberof ScheduleGroupCreateRequest
6577
7337
  */
6578
- 'scheduled': string;
7338
+ 'locked'?: boolean | null;
6579
7339
  /**
6580
- * The initial message to send to the customer
7340
+ * Machine-readable lock reason.
6581
7341
  * @type {string}
6582
7342
  * @memberof ScheduleGroupCreateRequest
6583
7343
  */
6584
- 'initialMessage': string;
7344
+ 'lockCode'?: ScheduleGroupCreateRequestLockCodeEnum;
6585
7345
  /**
6586
- * The initial message to send to the customer in HTML
7346
+ * Human-readable locked reason.
6587
7347
  * @type {string}
6588
7348
  * @memberof ScheduleGroupCreateRequest
6589
7349
  */
6590
- 'initialMessageHtml'?: string | null;
7350
+ 'lockedReason'?: string | null;
6591
7351
  /**
6592
- * The delay in milliseconds between each customer, defaults to 15000 (15 seconds)
7352
+ * Number of consecutive workflow/context no-progress attempts.
6593
7353
  * @type {number}
6594
7354
  * @memberof ScheduleGroupCreateRequest
6595
7355
  */
6596
- 'delay'?: number;
7356
+ 'lockAttempts'?: number | null;
6597
7357
  /**
6598
- *
6599
- * @type {ScheduleGroupCreateRequestAllOfCGroup}
7358
+ * Contact that received a forward handoff.
7359
+ * @type {string}
6600
7360
  * @memberof ScheduleGroupCreateRequest
6601
7361
  */
6602
- '$cGroup': ScheduleGroupCreateRequestAllOfCGroup;
6603
- }
6604
- /**
6605
- *
6606
- * @export
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
7437
+ * @type {string}
7438
+ * @memberof ScheduleGroupCreateRequest
7439
+ */
7440
+ 'initialMessageHtml'?: string | null;
7441
+ /**
7442
+ * The delay in milliseconds between each customer, defaults to 15000 (15 seconds)
7443
+ * @type {number}
7444
+ * @memberof ScheduleGroupCreateRequest
7445
+ */
7446
+ 'delay'?: number;
7447
+ /**
7448
+ *
7449
+ * @type {ScheduleGroupCreateRequestAllOfCGroup}
7450
+ * @memberof ScheduleGroupCreateRequest
7451
+ */
7452
+ '$cGroup': ScheduleGroupCreateRequestAllOfCGroup;
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
+
7473
+ /**
7474
+ *
7475
+ * @export
6607
7476
  * @interface ScheduleGroupCreateRequestAllOf
6608
7477
  */
6609
7478
  export interface ScheduleGroupCreateRequestAllOf {
@@ -6651,18 +7520,42 @@ export interface ScheduleGroupCreateResponse {
6651
7520
  * @interface ScheduleGroupGetResponse
6652
7521
  */
6653
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;
6654
7535
  /**
6655
7536
  * Default agent persona id assigned to the conversation(s)
6656
7537
  * @type {string}
6657
7538
  * @memberof ScheduleGroupGetResponse
6658
7539
  */
6659
7540
  '$agent'?: string;
7541
+ /**
7542
+ * Customer this conversation is with
7543
+ * @type {string}
7544
+ * @memberof ScheduleGroupGetResponse
7545
+ */
7546
+ '$customer'?: string;
6660
7547
  /**
6661
7548
  * Initial contexts to load when starting the conversation
6662
7549
  * @type {Array<string>}
6663
7550
  * @memberof ScheduleGroupGetResponse
6664
7551
  */
6665
7552
  'initialContexts'?: Array<string>;
7553
+ /**
7554
+ *
7555
+ * @type {ConversationChannel}
7556
+ * @memberof ScheduleGroupGetResponse
7557
+ */
7558
+ 'channel'?: ConversationChannel;
6666
7559
  /**
6667
7560
  *
6668
7561
  * @type {ConversationChannelProps}
@@ -6670,12 +7563,95 @@ export interface ScheduleGroupGetResponse {
6670
7563
  */
6671
7564
  'channelProps'?: ConversationChannelProps;
6672
7565
  /**
6673
- *
6674
- * @type {ConversationBaseEnvironmentProps}
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; }}
6675
7646
  * @memberof ScheduleGroupGetResponse
6676
- * @deprecated
6677
7647
  */
6678
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7648
+ 'command'?: { [key: string]: any; };
7649
+ /**
7650
+ * Overrides the Persona Model ingress mode for this conversation.
7651
+ * @type {string}
7652
+ * @memberof ScheduleGroupGetResponse
7653
+ */
7654
+ 'ingress'?: ScheduleGroupGetResponseIngressEnum;
6679
7655
  /**
6680
7656
  * ISO 8601 datetime string
6681
7657
  * @type {string}
@@ -6700,12 +7676,6 @@ export interface ScheduleGroupGetResponse {
6700
7676
  * @memberof ScheduleGroupGetResponse
6701
7677
  */
6702
7678
  'delay'?: number;
6703
- /**
6704
- * The ID of the scheduled conversation group
6705
- * @type {string}
6706
- * @memberof ScheduleGroupGetResponse
6707
- */
6708
- '$id': string;
6709
7679
  /**
6710
7680
  * ISO Time the initial message has been sent
6711
7681
  * @type {boolean}
@@ -6719,6 +7689,25 @@ export interface ScheduleGroupGetResponse {
6719
7689
  */
6720
7690
  '$cGroup'?: string;
6721
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
+
6722
7711
  /**
6723
7712
  *
6724
7713
  * @export
@@ -6775,18 +7764,42 @@ export interface ScheduleGroupRemoveResponse {
6775
7764
  * @interface ScheduleGroupUpdateRequest
6776
7765
  */
6777
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;
6778
7779
  /**
6779
7780
  * Default agent persona id assigned to the conversation(s)
6780
7781
  * @type {string}
6781
7782
  * @memberof ScheduleGroupUpdateRequest
6782
7783
  */
6783
7784
  '$agent'?: string;
7785
+ /**
7786
+ * Customer this conversation is with
7787
+ * @type {string}
7788
+ * @memberof ScheduleGroupUpdateRequest
7789
+ */
7790
+ '$customer'?: string;
6784
7791
  /**
6785
7792
  * Initial contexts to load when starting the conversation
6786
7793
  * @type {Array<string>}
6787
7794
  * @memberof ScheduleGroupUpdateRequest
6788
7795
  */
6789
7796
  'initialContexts'?: Array<string>;
7797
+ /**
7798
+ *
7799
+ * @type {ConversationChannel}
7800
+ * @memberof ScheduleGroupUpdateRequest
7801
+ */
7802
+ 'channel'?: ConversationChannel;
6790
7803
  /**
6791
7804
  *
6792
7805
  * @type {ConversationChannelProps}
@@ -6794,12 +7807,95 @@ export interface ScheduleGroupUpdateRequest {
6794
7807
  */
6795
7808
  'channelProps'?: ConversationChannelProps;
6796
7809
  /**
6797
- *
6798
- * @type {ConversationBaseEnvironmentProps}
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}
6799
7896
  * @memberof ScheduleGroupUpdateRequest
6800
- * @deprecated
6801
7897
  */
6802
- 'environmentProps'?: ConversationBaseEnvironmentProps;
7898
+ 'ingress'?: ScheduleGroupUpdateRequestIngressEnum;
6803
7899
  /**
6804
7900
  * ISO 8601 datetime string
6805
7901
  * @type {string}
@@ -6830,13 +7926,26 @@ export interface ScheduleGroupUpdateRequest {
6830
7926
  * @memberof ScheduleGroupUpdateRequest
6831
7927
  */
6832
7928
  '$cGroup'?: ScheduleGroupCreateRequestAllOfCGroup;
6833
- /**
6834
- * The ID of the scheduled conversation group to update
6835
- * @type {string}
6836
- * @memberof ScheduleGroupUpdateRequest
6837
- */
6838
- '$id': string;
6839
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
+
6840
7949
  /**
6841
7950
  *
6842
7951
  * @export
@@ -6912,18 +8021,42 @@ export interface ScheduleRemoveResponse {
6912
8021
  * @interface ScheduleUpdateRequest
6913
8022
  */
6914
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;
6915
8036
  /**
6916
8037
  * Default agent persona id assigned to the conversation(s)
6917
8038
  * @type {string}
6918
8039
  * @memberof ScheduleUpdateRequest
6919
8040
  */
6920
8041
  '$agent': string;
8042
+ /**
8043
+ * Customer this conversation is with
8044
+ * @type {string}
8045
+ * @memberof ScheduleUpdateRequest
8046
+ */
8047
+ '$customer': string;
6921
8048
  /**
6922
8049
  * Initial contexts to load when starting the conversation
6923
8050
  * @type {Array<string>}
6924
8051
  * @memberof ScheduleUpdateRequest
6925
8052
  */
6926
8053
  'initialContexts'?: Array<string>;
8054
+ /**
8055
+ *
8056
+ * @type {ConversationChannel}
8057
+ * @memberof ScheduleUpdateRequest
8058
+ */
8059
+ 'channel': ConversationChannel;
6927
8060
  /**
6928
8061
  *
6929
8062
  * @type {ConversationChannelProps}
@@ -6931,44 +8064,95 @@ export interface ScheduleUpdateRequest {
6931
8064
  */
6932
8065
  'channelProps'?: ConversationChannelProps;
6933
8066
  /**
6934
- *
6935
- * @type {ConversationBaseEnvironmentProps}
8067
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
8068
+ * @type {boolean}
6936
8069
  * @memberof ScheduleUpdateRequest
6937
- * @deprecated
6938
8070
  */
6939
- 'environmentProps'?: ConversationBaseEnvironmentProps;
8071
+ 'locked'?: boolean | null;
6940
8072
  /**
6941
- * User for this conversation
8073
+ * Machine-readable lock reason.
6942
8074
  * @type {string}
6943
8075
  * @memberof ScheduleUpdateRequest
6944
8076
  */
6945
- '$user': string;
8077
+ 'lockCode'?: ScheduleUpdateRequestLockCodeEnum;
6946
8078
  /**
6947
- * Customer this conversation is with (use $user instead)
8079
+ * Human-readable locked reason.
6948
8080
  * @type {string}
6949
8081
  * @memberof ScheduleUpdateRequest
6950
- * @deprecated
6951
8082
  */
6952
- '$customer'?: string;
8083
+ 'lockedReason'?: string | null;
6953
8084
  /**
6954
- *
6955
- * @type {ConversationChannel}
8085
+ * Number of consecutive workflow/context no-progress attempts.
8086
+ * @type {number}
6956
8087
  * @memberof ScheduleUpdateRequest
6957
8088
  */
6958
- 'channel': ConversationChannel;
8089
+ 'lockAttempts'?: number | null;
6959
8090
  /**
6960
- *
6961
- * @type {ConversationEnvironment}
8091
+ * Contact that received a forward handoff.
8092
+ * @type {string}
6962
8093
  * @memberof ScheduleUpdateRequest
6963
- * @deprecated
6964
8094
  */
6965
- 'environment'?: ConversationEnvironment;
8095
+ 'forwardedTo'?: string | null;
6966
8096
  /**
6967
- * Whether this conversation is a test or not
6968
- * @type {boolean}
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}
8105
+ * @memberof ScheduleUpdateRequest
8106
+ */
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}
6969
8123
  * @memberof ScheduleUpdateRequest
6970
8124
  */
6971
- 'test'?: boolean;
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;
6972
8156
  /**
6973
8157
  * ISO 8601 datetime string
6974
8158
  * @type {string}
@@ -6993,14 +8177,25 @@ export interface ScheduleUpdateRequest {
6993
8177
  * @memberof ScheduleUpdateRequest
6994
8178
  */
6995
8179
  '$group'?: string;
6996
- /**
6997
- * The ID of the scheduled conversation to update
6998
- * @type {string}
6999
- * @memberof ScheduleUpdateRequest
7000
- */
7001
- '$id'?: string;
7002
8180
  }
7003
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];
7004
8199
 
7005
8200
  /**
7006
8201
  *
@@ -7046,18 +8241,42 @@ export interface ScheduleUpdateResponse {
7046
8241
  * @interface ScheduledConversation
7047
8242
  */
7048
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;
7049
8256
  /**
7050
8257
  * Default agent persona id assigned to the conversation(s)
7051
8258
  * @type {string}
7052
8259
  * @memberof ScheduledConversation
7053
8260
  */
7054
8261
  '$agent': string;
8262
+ /**
8263
+ * Customer this conversation is with
8264
+ * @type {string}
8265
+ * @memberof ScheduledConversation
8266
+ */
8267
+ '$customer': string;
7055
8268
  /**
7056
8269
  * Initial contexts to load when starting the conversation
7057
8270
  * @type {Array<string>}
7058
8271
  * @memberof ScheduledConversation
7059
8272
  */
7060
8273
  'initialContexts'?: Array<string>;
8274
+ /**
8275
+ *
8276
+ * @type {ConversationChannel}
8277
+ * @memberof ScheduledConversation
8278
+ */
8279
+ 'channel': ConversationChannel;
7061
8280
  /**
7062
8281
  *
7063
8282
  * @type {ConversationChannelProps}
@@ -7065,44 +8284,95 @@ export interface ScheduledConversation {
7065
8284
  */
7066
8285
  'channelProps'?: ConversationChannelProps;
7067
8286
  /**
7068
- *
7069
- * @type {ConversationBaseEnvironmentProps}
8287
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
8288
+ * @type {boolean}
7070
8289
  * @memberof ScheduledConversation
7071
- * @deprecated
7072
8290
  */
7073
- 'environmentProps'?: ConversationBaseEnvironmentProps;
8291
+ 'locked'?: boolean | null;
7074
8292
  /**
7075
- * User for this conversation
8293
+ * Machine-readable lock reason.
7076
8294
  * @type {string}
7077
8295
  * @memberof ScheduledConversation
7078
8296
  */
7079
- '$user': string;
8297
+ 'lockCode'?: ScheduledConversationLockCodeEnum;
7080
8298
  /**
7081
- * Customer this conversation is with (use $user instead)
8299
+ * Human-readable locked reason.
7082
8300
  * @type {string}
7083
8301
  * @memberof ScheduledConversation
7084
- * @deprecated
7085
8302
  */
7086
- '$customer'?: string;
8303
+ 'lockedReason'?: string | null;
7087
8304
  /**
7088
- *
7089
- * @type {ConversationChannel}
8305
+ * Number of consecutive workflow/context no-progress attempts.
8306
+ * @type {number}
7090
8307
  * @memberof ScheduledConversation
7091
8308
  */
7092
- 'channel': ConversationChannel;
8309
+ 'lockAttempts'?: number | null;
7093
8310
  /**
7094
- *
7095
- * @type {ConversationEnvironment}
8311
+ * Contact that received a forward handoff.
8312
+ * @type {string}
7096
8313
  * @memberof ScheduledConversation
7097
- * @deprecated
7098
8314
  */
7099
- 'environment'?: ConversationEnvironment;
8315
+ 'forwardedTo'?: string | null;
7100
8316
  /**
7101
- * Whether this conversation is a test or not
7102
- * @type {boolean}
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; }}
7103
8367
  * @memberof ScheduledConversation
7104
8368
  */
7105
- 'test'?: boolean;
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;
7106
8376
  /**
7107
8377
  * ISO 8601 datetime string
7108
8378
  * @type {string}
@@ -7129,6 +8399,23 @@ export interface ScheduledConversation {
7129
8399
  '$group'?: string;
7130
8400
  }
7131
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];
7132
8419
 
7133
8420
  /**
7134
8421
  *
@@ -7149,18 +8436,42 @@ export interface ScheduledConversationAllOf {
7149
8436
  * @interface ScheduledConversationGroup
7150
8437
  */
7151
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;
7152
8451
  /**
7153
8452
  * Default agent persona id assigned to the conversation(s)
7154
8453
  * @type {string}
7155
8454
  * @memberof ScheduledConversationGroup
7156
8455
  */
7157
8456
  '$agent'?: string;
8457
+ /**
8458
+ * Customer this conversation is with
8459
+ * @type {string}
8460
+ * @memberof ScheduledConversationGroup
8461
+ */
8462
+ '$customer'?: string;
7158
8463
  /**
7159
8464
  * Initial contexts to load when starting the conversation
7160
8465
  * @type {Array<string>}
7161
8466
  * @memberof ScheduledConversationGroup
7162
8467
  */
7163
8468
  'initialContexts'?: Array<string>;
8469
+ /**
8470
+ *
8471
+ * @type {ConversationChannel}
8472
+ * @memberof ScheduledConversationGroup
8473
+ */
8474
+ 'channel'?: ConversationChannel;
7164
8475
  /**
7165
8476
  *
7166
8477
  * @type {ConversationChannelProps}
@@ -7168,12 +8479,95 @@ export interface ScheduledConversationGroup {
7168
8479
  */
7169
8480
  'channelProps'?: ConversationChannelProps;
7170
8481
  /**
7171
- *
7172
- * @type {ConversationBaseEnvironmentProps}
8482
+ * Whether automated replies are locked and the conversation requires a policy outcome or manual intervention.
8483
+ * @type {boolean}
7173
8484
  * @memberof ScheduledConversationGroup
7174
- * @deprecated
7175
8485
  */
7176
- 'environmentProps'?: ConversationBaseEnvironmentProps;
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}
8532
+ * @memberof ScheduledConversationGroup
8533
+ */
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;
7177
8571
  /**
7178
8572
  * ISO 8601 datetime string
7179
8573
  * @type {string}
@@ -7199,6 +8593,25 @@ export interface ScheduledConversationGroup {
7199
8593
  */
7200
8594
  'delay'?: number;
7201
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
+
7202
8615
  /**
7203
8616
  *
7204
8617
  * @export