retell-sdk 4.7.0 → 4.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +4 -0
  3. package/_shims/node-types.d.ts +1 -1
  4. package/core.d.ts +6 -3
  5. package/core.d.ts.map +1 -1
  6. package/core.js +25 -9
  7. package/core.js.map +1 -1
  8. package/core.mjs +22 -7
  9. package/core.mjs.map +1 -1
  10. package/index.d.mts +5 -0
  11. package/index.d.ts +5 -0
  12. package/index.d.ts.map +1 -1
  13. package/index.js +2 -0
  14. package/index.js.map +1 -1
  15. package/index.mjs +2 -0
  16. package/index.mjs.map +1 -1
  17. package/package.json +3 -3
  18. package/resources/agent.d.ts +18 -0
  19. package/resources/agent.d.ts.map +1 -1
  20. package/resources/agent.js.map +1 -1
  21. package/resources/agent.mjs.map +1 -1
  22. package/resources/call.d.ts +1 -1
  23. package/resources/call.js +1 -1
  24. package/resources/call.mjs +1 -1
  25. package/resources/index.d.ts +1 -0
  26. package/resources/index.d.ts.map +1 -1
  27. package/resources/index.js +3 -1
  28. package/resources/index.js.map +1 -1
  29. package/resources/index.mjs +1 -0
  30. package/resources/index.mjs.map +1 -1
  31. package/resources/knowledge-base.d.ts +147 -0
  32. package/resources/knowledge-base.d.ts.map +1 -0
  33. package/resources/knowledge-base.js +62 -0
  34. package/resources/knowledge-base.js.map +1 -0
  35. package/resources/knowledge-base.mjs +35 -0
  36. package/resources/knowledge-base.mjs.map +1 -0
  37. package/resources/llm.d.ts +243 -18
  38. package/resources/llm.d.ts.map +1 -1
  39. package/resources/llm.js.map +1 -1
  40. package/resources/llm.mjs.map +1 -1
  41. package/shims/node.d.ts +1 -0
  42. package/shims/node.d.ts.map +1 -1
  43. package/src/_shims/node-types.d.ts +1 -1
  44. package/src/core.ts +34 -8
  45. package/src/index.ts +6 -0
  46. package/src/resources/agent.ts +21 -0
  47. package/src/resources/call.ts +1 -1
  48. package/src/resources/index.ts +6 -0
  49. package/src/resources/knowledge-base.ts +199 -0
  50. package/src/resources/llm.ts +306 -18
  51. package/src/version.ts +1 -1
  52. package/version.d.ts +1 -1
  53. package/version.js +1 -1
  54. package/version.mjs +1 -1
@@ -103,9 +103,15 @@ export interface LlmResponse {
103
103
  inbound_dynamic_variables_webhook_url?: string | null;
104
104
 
105
105
  /**
106
- * Select the underlying LLM. If not set, would default to gpt-4o.
106
+ * A list of knowledge base ids to use for this resource. Set to null to remove all
107
+ * knowledge bases.
107
108
  */
108
- model?: 'gpt-4o' | 'gpt-4o-mini' | 'claude-3.5-sonnet' | 'claude-3-haiku';
109
+ knowledge_base_ids?: Array<string> | null;
110
+
111
+ /**
112
+ * Select the underlying text LLM. If not set, would default to gpt-4o.
113
+ */
114
+ model?: 'gpt-4o' | 'gpt-4o-mini' | 'claude-3.5-sonnet' | 'claude-3-haiku' | null;
109
115
 
110
116
  /**
111
117
  * If set, will control the randomness of the response. Value ranging from [0,1].
@@ -115,6 +121,12 @@ export interface LlmResponse {
115
121
  */
116
122
  model_temperature?: number;
117
123
 
124
+ /**
125
+ * Select the underlying speech to speech model. Can only set this or model, not
126
+ * both.
127
+ */
128
+ s2s_model?: 'gpt-4o-realtime' | null;
129
+
118
130
  /**
119
131
  * Name of the starting state. Required if states is not empty.
120
132
  */
@@ -128,6 +140,14 @@ export interface LlmResponse {
128
140
  * tools (essentially one state).
129
141
  */
130
142
  states?: Array<LlmResponse.State> | null;
143
+
144
+ /**
145
+ * Only applicable when model is gpt-4o or gpt-4o mini. If set to true, will use
146
+ * structured output to make sure tool call arguments follow the json schema. The
147
+ * time to save a new tool or change to a tool will be longer as additional
148
+ * processing is needed. Default to false.
149
+ */
150
+ tool_call_strict_mode?: boolean;
131
151
  }
132
152
 
133
153
  export namespace LlmResponse {
@@ -157,8 +177,8 @@ export namespace LlmResponse {
157
177
  name: string;
158
178
 
159
179
  /**
160
- * The number to transfer to in E.164 format (a + and country code, then the phone
161
- * number with no space or other special characters). For example, +16175551212.
180
+ * The number to transfer to in E.164 format or a dynamic variable like
181
+ * {{transfer_number}}.
162
182
  */
163
183
  number: string;
164
184
 
@@ -169,6 +189,44 @@ export namespace LlmResponse {
169
189
  * to call the tool.
170
190
  */
171
191
  description?: string;
192
+
193
+ /**
194
+ * If set to true, will show transferee (the user, not the AI agent) as caller when
195
+ * transferring, requires the telephony side to support SIP REFER to PSTN. This is
196
+ * only applicable for cold transfer, so if warm transfer option is specified, this
197
+ * field will be ignored. Default to false (default to show AI agent as caller).
198
+ */
199
+ show_transferee_as_caller?: boolean | null;
200
+
201
+ /**
202
+ * If set, when transfer is successful, will perform a warm handoff. Can leave
203
+ * either a static message or a dynamic one based on prompt. Set to null to disable
204
+ * warm handoff.
205
+ */
206
+ warm_transfer_option?:
207
+ | TransferCallTool.WarmTransferPrompt
208
+ | TransferCallTool.WarmTransferStaticMessage
209
+ | null;
210
+ }
211
+
212
+ export namespace TransferCallTool {
213
+ export interface WarmTransferPrompt {
214
+ /**
215
+ * The prompt to be used for warm handoff. Can contain dynamic variables.
216
+ */
217
+ prompt?: string;
218
+
219
+ type?: 'prompt';
220
+ }
221
+
222
+ export interface WarmTransferStaticMessage {
223
+ /**
224
+ * The static message to be used for warm handoff. Can contain dynamic variables.
225
+ */
226
+ message?: string;
227
+
228
+ type?: 'static_message';
229
+ }
172
230
  }
173
231
 
174
232
  export interface CheckAvailabilityCalTool {
@@ -475,8 +533,8 @@ export namespace LlmResponse {
475
533
  name: string;
476
534
 
477
535
  /**
478
- * The number to transfer to in E.164 format (a + and country code, then the phone
479
- * number with no space or other special characters). For example, +16175551212.
536
+ * The number to transfer to in E.164 format or a dynamic variable like
537
+ * {{transfer_number}}.
480
538
  */
481
539
  number: string;
482
540
 
@@ -487,6 +545,44 @@ export namespace LlmResponse {
487
545
  * to call the tool.
488
546
  */
489
547
  description?: string;
548
+
549
+ /**
550
+ * If set to true, will show transferee (the user, not the AI agent) as caller when
551
+ * transferring, requires the telephony side to support SIP REFER to PSTN. This is
552
+ * only applicable for cold transfer, so if warm transfer option is specified, this
553
+ * field will be ignored. Default to false (default to show AI agent as caller).
554
+ */
555
+ show_transferee_as_caller?: boolean | null;
556
+
557
+ /**
558
+ * If set, when transfer is successful, will perform a warm handoff. Can leave
559
+ * either a static message or a dynamic one based on prompt. Set to null to disable
560
+ * warm handoff.
561
+ */
562
+ warm_transfer_option?:
563
+ | TransferCallTool.WarmTransferPrompt
564
+ | TransferCallTool.WarmTransferStaticMessage
565
+ | null;
566
+ }
567
+
568
+ export namespace TransferCallTool {
569
+ export interface WarmTransferPrompt {
570
+ /**
571
+ * The prompt to be used for warm handoff. Can contain dynamic variables.
572
+ */
573
+ prompt?: string;
574
+
575
+ type?: 'prompt';
576
+ }
577
+
578
+ export interface WarmTransferStaticMessage {
579
+ /**
580
+ * The static message to be used for warm handoff. Can contain dynamic variables.
581
+ */
582
+ message?: string;
583
+
584
+ type?: 'static_message';
585
+ }
490
586
  }
491
587
 
492
588
  export interface CheckAvailabilityCalTool {
@@ -718,9 +814,15 @@ export interface LlmCreateParams {
718
814
  inbound_dynamic_variables_webhook_url?: string | null;
719
815
 
720
816
  /**
721
- * Select the underlying LLM. If not set, would default to gpt-4o.
817
+ * A list of knowledge base ids to use for this resource. Set to null to remove all
818
+ * knowledge bases.
819
+ */
820
+ knowledge_base_ids?: Array<string> | null;
821
+
822
+ /**
823
+ * Select the underlying text LLM. If not set, would default to gpt-4o.
722
824
  */
723
- model?: 'gpt-4o' | 'gpt-4o-mini' | 'claude-3.5-sonnet' | 'claude-3-haiku';
825
+ model?: 'gpt-4o' | 'gpt-4o-mini' | 'claude-3.5-sonnet' | 'claude-3-haiku' | null;
724
826
 
725
827
  /**
726
828
  * If set, will control the randomness of the response. Value ranging from [0,1].
@@ -730,6 +832,12 @@ export interface LlmCreateParams {
730
832
  */
731
833
  model_temperature?: number;
732
834
 
835
+ /**
836
+ * Select the underlying speech to speech model. Can only set this or model, not
837
+ * both.
838
+ */
839
+ s2s_model?: 'gpt-4o-realtime' | null;
840
+
733
841
  /**
734
842
  * Name of the starting state. Required if states is not empty.
735
843
  */
@@ -743,6 +851,14 @@ export interface LlmCreateParams {
743
851
  * tools (essentially one state).
744
852
  */
745
853
  states?: Array<LlmCreateParams.State> | null;
854
+
855
+ /**
856
+ * Only applicable when model is gpt-4o or gpt-4o mini. If set to true, will use
857
+ * structured output to make sure tool call arguments follow the json schema. The
858
+ * time to save a new tool or change to a tool will be longer as additional
859
+ * processing is needed. Default to false.
860
+ */
861
+ tool_call_strict_mode?: boolean;
746
862
  }
747
863
 
748
864
  export namespace LlmCreateParams {
@@ -772,8 +888,8 @@ export namespace LlmCreateParams {
772
888
  name: string;
773
889
 
774
890
  /**
775
- * The number to transfer to in E.164 format (a + and country code, then the phone
776
- * number with no space or other special characters). For example, +16175551212.
891
+ * The number to transfer to in E.164 format or a dynamic variable like
892
+ * {{transfer_number}}.
777
893
  */
778
894
  number: string;
779
895
 
@@ -784,6 +900,44 @@ export namespace LlmCreateParams {
784
900
  * to call the tool.
785
901
  */
786
902
  description?: string;
903
+
904
+ /**
905
+ * If set to true, will show transferee (the user, not the AI agent) as caller when
906
+ * transferring, requires the telephony side to support SIP REFER to PSTN. This is
907
+ * only applicable for cold transfer, so if warm transfer option is specified, this
908
+ * field will be ignored. Default to false (default to show AI agent as caller).
909
+ */
910
+ show_transferee_as_caller?: boolean | null;
911
+
912
+ /**
913
+ * If set, when transfer is successful, will perform a warm handoff. Can leave
914
+ * either a static message or a dynamic one based on prompt. Set to null to disable
915
+ * warm handoff.
916
+ */
917
+ warm_transfer_option?:
918
+ | TransferCallTool.WarmTransferPrompt
919
+ | TransferCallTool.WarmTransferStaticMessage
920
+ | null;
921
+ }
922
+
923
+ export namespace TransferCallTool {
924
+ export interface WarmTransferPrompt {
925
+ /**
926
+ * The prompt to be used for warm handoff. Can contain dynamic variables.
927
+ */
928
+ prompt?: string;
929
+
930
+ type?: 'prompt';
931
+ }
932
+
933
+ export interface WarmTransferStaticMessage {
934
+ /**
935
+ * The static message to be used for warm handoff. Can contain dynamic variables.
936
+ */
937
+ message?: string;
938
+
939
+ type?: 'static_message';
940
+ }
787
941
  }
788
942
 
789
943
  export interface CheckAvailabilityCalTool {
@@ -1090,8 +1244,8 @@ export namespace LlmCreateParams {
1090
1244
  name: string;
1091
1245
 
1092
1246
  /**
1093
- * The number to transfer to in E.164 format (a + and country code, then the phone
1094
- * number with no space or other special characters). For example, +16175551212.
1247
+ * The number to transfer to in E.164 format or a dynamic variable like
1248
+ * {{transfer_number}}.
1095
1249
  */
1096
1250
  number: string;
1097
1251
 
@@ -1102,6 +1256,44 @@ export namespace LlmCreateParams {
1102
1256
  * to call the tool.
1103
1257
  */
1104
1258
  description?: string;
1259
+
1260
+ /**
1261
+ * If set to true, will show transferee (the user, not the AI agent) as caller when
1262
+ * transferring, requires the telephony side to support SIP REFER to PSTN. This is
1263
+ * only applicable for cold transfer, so if warm transfer option is specified, this
1264
+ * field will be ignored. Default to false (default to show AI agent as caller).
1265
+ */
1266
+ show_transferee_as_caller?: boolean | null;
1267
+
1268
+ /**
1269
+ * If set, when transfer is successful, will perform a warm handoff. Can leave
1270
+ * either a static message or a dynamic one based on prompt. Set to null to disable
1271
+ * warm handoff.
1272
+ */
1273
+ warm_transfer_option?:
1274
+ | TransferCallTool.WarmTransferPrompt
1275
+ | TransferCallTool.WarmTransferStaticMessage
1276
+ | null;
1277
+ }
1278
+
1279
+ export namespace TransferCallTool {
1280
+ export interface WarmTransferPrompt {
1281
+ /**
1282
+ * The prompt to be used for warm handoff. Can contain dynamic variables.
1283
+ */
1284
+ prompt?: string;
1285
+
1286
+ type?: 'prompt';
1287
+ }
1288
+
1289
+ export interface WarmTransferStaticMessage {
1290
+ /**
1291
+ * The static message to be used for warm handoff. Can contain dynamic variables.
1292
+ */
1293
+ message?: string;
1294
+
1295
+ type?: 'static_message';
1296
+ }
1105
1297
  }
1106
1298
 
1107
1299
  export interface CheckAvailabilityCalTool {
@@ -1331,9 +1523,15 @@ export interface LlmUpdateParams {
1331
1523
  inbound_dynamic_variables_webhook_url?: string | null;
1332
1524
 
1333
1525
  /**
1334
- * Select the underlying LLM. If not set, would default to gpt-4o.
1526
+ * A list of knowledge base ids to use for this resource. Set to null to remove all
1527
+ * knowledge bases.
1528
+ */
1529
+ knowledge_base_ids?: Array<string> | null;
1530
+
1531
+ /**
1532
+ * Select the underlying text LLM. If not set, would default to gpt-4o.
1335
1533
  */
1336
- model?: 'gpt-4o' | 'gpt-4o-mini' | 'claude-3.5-sonnet' | 'claude-3-haiku';
1534
+ model?: 'gpt-4o' | 'gpt-4o-mini' | 'claude-3.5-sonnet' | 'claude-3-haiku' | null;
1337
1535
 
1338
1536
  /**
1339
1537
  * If set, will control the randomness of the response. Value ranging from [0,1].
@@ -1343,6 +1541,12 @@ export interface LlmUpdateParams {
1343
1541
  */
1344
1542
  model_temperature?: number;
1345
1543
 
1544
+ /**
1545
+ * Select the underlying speech to speech model. Can only set this or model, not
1546
+ * both.
1547
+ */
1548
+ s2s_model?: 'gpt-4o-realtime' | null;
1549
+
1346
1550
  /**
1347
1551
  * Name of the starting state. Required if states is not empty.
1348
1552
  */
@@ -1356,6 +1560,14 @@ export interface LlmUpdateParams {
1356
1560
  * tools (essentially one state).
1357
1561
  */
1358
1562
  states?: Array<LlmUpdateParams.State> | null;
1563
+
1564
+ /**
1565
+ * Only applicable when model is gpt-4o or gpt-4o mini. If set to true, will use
1566
+ * structured output to make sure tool call arguments follow the json schema. The
1567
+ * time to save a new tool or change to a tool will be longer as additional
1568
+ * processing is needed. Default to false.
1569
+ */
1570
+ tool_call_strict_mode?: boolean;
1359
1571
  }
1360
1572
 
1361
1573
  export namespace LlmUpdateParams {
@@ -1385,8 +1597,8 @@ export namespace LlmUpdateParams {
1385
1597
  name: string;
1386
1598
 
1387
1599
  /**
1388
- * The number to transfer to in E.164 format (a + and country code, then the phone
1389
- * number with no space or other special characters). For example, +16175551212.
1600
+ * The number to transfer to in E.164 format or a dynamic variable like
1601
+ * {{transfer_number}}.
1390
1602
  */
1391
1603
  number: string;
1392
1604
 
@@ -1397,6 +1609,44 @@ export namespace LlmUpdateParams {
1397
1609
  * to call the tool.
1398
1610
  */
1399
1611
  description?: string;
1612
+
1613
+ /**
1614
+ * If set to true, will show transferee (the user, not the AI agent) as caller when
1615
+ * transferring, requires the telephony side to support SIP REFER to PSTN. This is
1616
+ * only applicable for cold transfer, so if warm transfer option is specified, this
1617
+ * field will be ignored. Default to false (default to show AI agent as caller).
1618
+ */
1619
+ show_transferee_as_caller?: boolean | null;
1620
+
1621
+ /**
1622
+ * If set, when transfer is successful, will perform a warm handoff. Can leave
1623
+ * either a static message or a dynamic one based on prompt. Set to null to disable
1624
+ * warm handoff.
1625
+ */
1626
+ warm_transfer_option?:
1627
+ | TransferCallTool.WarmTransferPrompt
1628
+ | TransferCallTool.WarmTransferStaticMessage
1629
+ | null;
1630
+ }
1631
+
1632
+ export namespace TransferCallTool {
1633
+ export interface WarmTransferPrompt {
1634
+ /**
1635
+ * The prompt to be used for warm handoff. Can contain dynamic variables.
1636
+ */
1637
+ prompt?: string;
1638
+
1639
+ type?: 'prompt';
1640
+ }
1641
+
1642
+ export interface WarmTransferStaticMessage {
1643
+ /**
1644
+ * The static message to be used for warm handoff. Can contain dynamic variables.
1645
+ */
1646
+ message?: string;
1647
+
1648
+ type?: 'static_message';
1649
+ }
1400
1650
  }
1401
1651
 
1402
1652
  export interface CheckAvailabilityCalTool {
@@ -1703,8 +1953,8 @@ export namespace LlmUpdateParams {
1703
1953
  name: string;
1704
1954
 
1705
1955
  /**
1706
- * The number to transfer to in E.164 format (a + and country code, then the phone
1707
- * number with no space or other special characters). For example, +16175551212.
1956
+ * The number to transfer to in E.164 format or a dynamic variable like
1957
+ * {{transfer_number}}.
1708
1958
  */
1709
1959
  number: string;
1710
1960
 
@@ -1715,6 +1965,44 @@ export namespace LlmUpdateParams {
1715
1965
  * to call the tool.
1716
1966
  */
1717
1967
  description?: string;
1968
+
1969
+ /**
1970
+ * If set to true, will show transferee (the user, not the AI agent) as caller when
1971
+ * transferring, requires the telephony side to support SIP REFER to PSTN. This is
1972
+ * only applicable for cold transfer, so if warm transfer option is specified, this
1973
+ * field will be ignored. Default to false (default to show AI agent as caller).
1974
+ */
1975
+ show_transferee_as_caller?: boolean | null;
1976
+
1977
+ /**
1978
+ * If set, when transfer is successful, will perform a warm handoff. Can leave
1979
+ * either a static message or a dynamic one based on prompt. Set to null to disable
1980
+ * warm handoff.
1981
+ */
1982
+ warm_transfer_option?:
1983
+ | TransferCallTool.WarmTransferPrompt
1984
+ | TransferCallTool.WarmTransferStaticMessage
1985
+ | null;
1986
+ }
1987
+
1988
+ export namespace TransferCallTool {
1989
+ export interface WarmTransferPrompt {
1990
+ /**
1991
+ * The prompt to be used for warm handoff. Can contain dynamic variables.
1992
+ */
1993
+ prompt?: string;
1994
+
1995
+ type?: 'prompt';
1996
+ }
1997
+
1998
+ export interface WarmTransferStaticMessage {
1999
+ /**
2000
+ * The static message to be used for warm handoff. Can contain dynamic variables.
2001
+ */
2002
+ message?: string;
2003
+
2004
+ type?: 'static_message';
2005
+ }
1718
2006
  }
1719
2007
 
1720
2008
  export interface CheckAvailabilityCalTool {
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '4.7.0'; // x-release-please-version
1
+ export const VERSION = '4.8.0'; // x-release-please-version
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "4.7.0";
1
+ export declare const VERSION = "4.8.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '4.7.0'; // x-release-please-version
4
+ exports.VERSION = '4.8.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '4.7.0'; // x-release-please-version
1
+ export const VERSION = '4.8.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map