retell-sdk 4.57.0 → 4.59.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.
@@ -32,6 +32,34 @@ export class Chat extends APIResource {
32
32
  return this._client.get(`/get-chat/${chatId}`, options);
33
33
  }
34
34
 
35
+ /**
36
+ * Update metadata and sensitive data storage settings for an existing chat.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * const chatResponse = await client.chat.update(
41
+ * 'chat_98c1a2157aa0559144d67bb0729',
42
+ * {
43
+ * data_storage_setting: 'everything',
44
+ * metadata: {
45
+ * customer_id: 'cust_123',
46
+ * notes: 'Follow-up required',
47
+ * },
48
+ * override_dynamic_variables: {
49
+ * additional_discount: '15%',
50
+ * },
51
+ * },
52
+ * );
53
+ * ```
54
+ */
55
+ update(
56
+ chatId: string,
57
+ body: ChatUpdateParams,
58
+ options?: Core.RequestOptions,
59
+ ): Core.APIPromise<ChatResponse> {
60
+ return this._client.patch(`/update-chat/${chatId}`, { body, ...options });
61
+ }
62
+
35
63
  /**
36
64
  * List all chats
37
65
  *
@@ -572,6 +600,31 @@ export interface ChatCreateParams {
572
600
  retell_llm_dynamic_variables?: { [key: string]: unknown };
573
601
  }
574
602
 
603
+ export interface ChatUpdateParams {
604
+ /**
605
+ * Data storage setting for this chat. Overrides the agent's default setting.
606
+ * "everything" stores all data, "basic_attributes_only" stores only metadata.
607
+ * Cannot be downgraded from more restrictive to less restrictive settings.
608
+ */
609
+ data_storage_setting?: 'everything' | 'basic_attributes_only';
610
+
611
+ /**
612
+ * An arbitrary object for storage purpose only. You can put anything here like
613
+ * your internal customer id associated with the chat. Not used for processing. You
614
+ * can later get this field from the chat object. Size limited to 50kB max.
615
+ */
616
+ metadata?: unknown;
617
+
618
+ /**
619
+ * Override dynamic varaibles represented as key-value pairs of strings. Setting
620
+ * this will override or add the dynamic variables set in the agent during the
621
+ * call. Only need to set the delta where you want to override, no need to set the
622
+ * entire dynamic variables object. Setting this to null will remove any existing
623
+ * override.
624
+ */
625
+ override_dynamic_variables?: { [key: string]: string } | null;
626
+ }
627
+
575
628
  export interface ChatCreateChatCompletionParams {
576
629
  /**
577
630
  * Unique id of the chat to create completion.
@@ -630,6 +683,7 @@ export declare namespace Chat {
630
683
  type ChatListResponse as ChatListResponse,
631
684
  type ChatCreateChatCompletionResponse as ChatCreateChatCompletionResponse,
632
685
  type ChatCreateParams as ChatCreateParams,
686
+ type ChatUpdateParams as ChatUpdateParams,
633
687
  type ChatCreateChatCompletionParams as ChatCreateChatCompletionParams,
634
688
  type ChatCreateSMSChatParams as ChatCreateSMSChatParams,
635
689
  };
@@ -172,6 +172,11 @@ export interface ConversationFlowResponse {
172
172
  */
173
173
  global_prompt?: string | null;
174
174
 
175
+ /**
176
+ * Whether this conversation flow is used for transfer LLM.
177
+ */
178
+ is_transfer_llm?: boolean | null;
179
+
175
180
  /**
176
181
  * Knowledge base configuration for RAG retrieval.
177
182
  */
@@ -226,8 +231,8 @@ export interface ConversationFlowResponse {
226
231
  start_speaker?: 'user' | 'agent';
227
232
 
228
233
  /**
229
- * Whether to use strict mode for tool calls. Only applicable when using structured
230
- * output models.
234
+ * Whether to use strict mode for tool calls. Only applicable when using certain
235
+ * supported models.
231
236
  */
232
237
  tool_call_strict_mode?: boolean | null;
233
238
 
@@ -7539,6 +7544,11 @@ export interface ConversationFlowCreateParams {
7539
7544
  */
7540
7545
  global_prompt?: string | null;
7541
7546
 
7547
+ /**
7548
+ * Whether this conversation flow is used for transfer LLM.
7549
+ */
7550
+ is_transfer_llm?: boolean | null;
7551
+
7542
7552
  /**
7543
7553
  * Knowledge base configuration for RAG retrieval.
7544
7554
  */
@@ -7566,8 +7576,8 @@ export interface ConversationFlowCreateParams {
7566
7576
  start_node_id?: string | null;
7567
7577
 
7568
7578
  /**
7569
- * Whether to use strict mode for tool calls. Only applicable when using structured
7570
- * output models.
7579
+ * Whether to use strict mode for tool calls. Only applicable when using certain
7580
+ * supported models.
7571
7581
  */
7572
7582
  tool_call_strict_mode?: boolean | null;
7573
7583
 
@@ -14859,6 +14869,11 @@ export interface ConversationFlowUpdateParams {
14859
14869
  */
14860
14870
  global_prompt?: string | null;
14861
14871
 
14872
+ /**
14873
+ * Body param: Whether this conversation flow is used for transfer LLM.
14874
+ */
14875
+ is_transfer_llm?: boolean | null;
14876
+
14862
14877
  /**
14863
14878
  * Body param: Knowledge base configuration for RAG retrieval.
14864
14879
  */
@@ -14915,7 +14930,7 @@ export interface ConversationFlowUpdateParams {
14915
14930
 
14916
14931
  /**
14917
14932
  * Body param: Whether to use strict mode for tool calls. Only applicable when
14918
- * using structured output models.
14933
+ * using certain supported models.
14919
14934
  */
14920
14935
  tool_call_strict_mode?: boolean | null;
14921
14936
 
@@ -29,6 +29,7 @@ export {
29
29
  type ChatListResponse,
30
30
  type ChatCreateChatCompletionResponse,
31
31
  type ChatCreateParams,
32
+ type ChatUpdateParams,
32
33
  type ChatCreateChatCompletionParams,
33
34
  type ChatCreateSMSChatParams,
34
35
  } from './chat';
@@ -11,9 +11,7 @@ export class Llm extends APIResource {
11
11
  *
12
12
  * @example
13
13
  * ```ts
14
- * const llmResponse = await client.llm.create({
15
- * start_speaker: 'user',
16
- * });
14
+ * const llmResponse = await client.llm.create();
17
15
  * ```
18
16
  */
19
17
  create(body: LlmCreateParams, options?: Core.RequestOptions): Core.APIPromise<LlmResponse> {
@@ -55,7 +53,6 @@ export class Llm extends APIResource {
55
53
  * const llmResponse = await client.llm.update(
56
54
  * '16b980523634a6dc504898cda492e939',
57
55
  * {
58
- * start_speaker: 'user',
59
56
  * begin_message:
60
57
  * 'Hey I am a virtual assistant calling from Retell Hospital.',
61
58
  * },
@@ -123,12 +120,6 @@ export interface LlmResponse {
123
120
  */
124
121
  llm_id: string;
125
122
 
126
- /**
127
- * The speaker who starts the conversation. Required. Must be either 'user' or
128
- * 'agent'.
129
- */
130
- start_speaker: 'user' | 'agent';
131
-
132
123
  /**
133
124
  * If set, the AI will begin the conversation after waiting for the user for the
134
125
  * duration (in milliseconds) specified by this attribute. This only applies if the
@@ -192,11 +183,15 @@ export interface LlmResponse {
192
183
  kb_config?: LlmResponse.KBConfig | null;
193
184
 
194
185
  /**
195
- * A list of knowledge base ids to use for this resource. Set to null to remove all
196
- * knowledge bases.
186
+ * A list of knowledge base ids to use for this resource.
197
187
  */
198
188
  knowledge_base_ids?: Array<string> | null;
199
189
 
190
+ /**
191
+ * A list of MCPs to use for this LLM.
192
+ */
193
+ mcps?: Array<LlmResponse.Mcp> | null;
194
+
200
195
  /**
201
196
  * Select the underlying text LLM. If not set, would default to gpt-4.1.
202
197
  */
@@ -218,11 +213,11 @@ export interface LlmResponse {
218
213
  | null;
219
214
 
220
215
  /**
221
- * If set to true, will enable fast tier, which uses high priority pool with more
222
- * dedicated resource to ensure lower and more consistent latency, default to
223
- * false. This feature usually comes with a higher cost.
216
+ * If set to true, will use high priority pool with more dedicated resource to
217
+ * ensure lower and more consistent latency, default to false. This feature usually
218
+ * comes with a higher cost.
224
219
  */
225
- model_high_priority?: boolean;
220
+ model_high_priority?: boolean | null;
226
221
 
227
222
  /**
228
223
  * If set, will control the randomness of the response. Value ranging from [0,1].
@@ -238,6 +233,12 @@ export interface LlmResponse {
238
233
  */
239
234
  s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
240
235
 
236
+ /**
237
+ * The speaker who starts the conversation. Required. Must be either 'user' or
238
+ * 'agent'.
239
+ */
240
+ start_speaker?: 'user' | 'agent';
241
+
241
242
  /**
242
243
  * Name of the starting state. Required if states is not empty.
243
244
  */
@@ -253,17 +254,15 @@ export interface LlmResponse {
253
254
  states?: Array<LlmResponse.State> | null;
254
255
 
255
256
  /**
256
- * Only applicable when model is gpt-4o or gpt-4o mini. If set to true, will use
257
- * structured output to make sure tool call arguments follow the json schema. The
258
- * time to save a new tool or change to a tool will be longer as additional
259
- * processing is needed. Default to false.
257
+ * Whether to use strict mode for tool calls. Only applicable when using certain
258
+ * supported models.
260
259
  */
261
- tool_call_strict_mode?: boolean;
260
+ tool_call_strict_mode?: boolean | null;
262
261
 
263
262
  /**
264
- * Version of the Retell LLM.
263
+ * The version of the LLM.
265
264
  */
266
- version?: unknown;
265
+ version?: number | null;
267
266
  }
268
267
 
269
268
  export namespace LlmResponse {
@@ -949,6 +948,31 @@ export namespace LlmResponse {
949
948
  top_k?: number;
950
949
  }
951
950
 
951
+ export interface Mcp {
952
+ name: string;
953
+
954
+ /**
955
+ * The URL of the MCP server.
956
+ */
957
+ url: string;
958
+
959
+ /**
960
+ * Headers to add to the MCP connection request.
961
+ */
962
+ headers?: { [key: string]: string };
963
+
964
+ /**
965
+ * Query parameters to append to the MCP connection request URL.
966
+ */
967
+ query_params?: { [key: string]: string };
968
+
969
+ /**
970
+ * Maximum time to wait for a connection to be established (in milliseconds).
971
+ * Default to 120,000 ms (2 minutes).
972
+ */
973
+ timeout_ms?: number;
974
+ }
975
+
952
976
  export interface State {
953
977
  /**
954
978
  * Name of the state, must be unique for each state. Must be consisted of a-z, A-Z,
@@ -1720,12 +1744,6 @@ export namespace LlmResponse {
1720
1744
  export type LlmListResponse = Array<LlmResponse>;
1721
1745
 
1722
1746
  export interface LlmCreateParams {
1723
- /**
1724
- * The speaker who starts the conversation. Required. Must be either 'user' or
1725
- * 'agent'.
1726
- */
1727
- start_speaker: 'user' | 'agent';
1728
-
1729
1747
  /**
1730
1748
  * If set, the AI will begin the conversation after waiting for the user for the
1731
1749
  * duration (in milliseconds) specified by this attribute. This only applies if the
@@ -1784,11 +1802,15 @@ export interface LlmCreateParams {
1784
1802
  kb_config?: LlmCreateParams.KBConfig | null;
1785
1803
 
1786
1804
  /**
1787
- * A list of knowledge base ids to use for this resource. Set to null to remove all
1788
- * knowledge bases.
1805
+ * A list of knowledge base ids to use for this resource.
1789
1806
  */
1790
1807
  knowledge_base_ids?: Array<string> | null;
1791
1808
 
1809
+ /**
1810
+ * A list of MCPs to use for this LLM.
1811
+ */
1812
+ mcps?: Array<LlmCreateParams.Mcp> | null;
1813
+
1792
1814
  /**
1793
1815
  * Select the underlying text LLM. If not set, would default to gpt-4.1.
1794
1816
  */
@@ -1810,11 +1832,11 @@ export interface LlmCreateParams {
1810
1832
  | null;
1811
1833
 
1812
1834
  /**
1813
- * If set to true, will enable fast tier, which uses high priority pool with more
1814
- * dedicated resource to ensure lower and more consistent latency, default to
1815
- * false. This feature usually comes with a higher cost.
1835
+ * If set to true, will use high priority pool with more dedicated resource to
1836
+ * ensure lower and more consistent latency, default to false. This feature usually
1837
+ * comes with a higher cost.
1816
1838
  */
1817
- model_high_priority?: boolean;
1839
+ model_high_priority?: boolean | null;
1818
1840
 
1819
1841
  /**
1820
1842
  * If set, will control the randomness of the response. Value ranging from [0,1].
@@ -1830,6 +1852,12 @@ export interface LlmCreateParams {
1830
1852
  */
1831
1853
  s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
1832
1854
 
1855
+ /**
1856
+ * The speaker who starts the conversation. Required. Must be either 'user' or
1857
+ * 'agent'.
1858
+ */
1859
+ start_speaker?: 'user' | 'agent';
1860
+
1833
1861
  /**
1834
1862
  * Name of the starting state. Required if states is not empty.
1835
1863
  */
@@ -1845,15 +1873,13 @@ export interface LlmCreateParams {
1845
1873
  states?: Array<LlmCreateParams.State> | null;
1846
1874
 
1847
1875
  /**
1848
- * Only applicable when model is gpt-4o or gpt-4o mini. If set to true, will use
1849
- * structured output to make sure tool call arguments follow the json schema. The
1850
- * time to save a new tool or change to a tool will be longer as additional
1851
- * processing is needed. Default to false.
1876
+ * Whether to use strict mode for tool calls. Only applicable when using certain
1877
+ * supported models.
1852
1878
  */
1853
- tool_call_strict_mode?: boolean;
1879
+ tool_call_strict_mode?: boolean | null;
1854
1880
 
1855
1881
  /**
1856
- * Version of the Retell LLM.
1882
+ * The version of the LLM.
1857
1883
  */
1858
1884
  version?: number | null;
1859
1885
  }
@@ -2541,6 +2567,31 @@ export namespace LlmCreateParams {
2541
2567
  top_k?: number;
2542
2568
  }
2543
2569
 
2570
+ export interface Mcp {
2571
+ name: string;
2572
+
2573
+ /**
2574
+ * The URL of the MCP server.
2575
+ */
2576
+ url: string;
2577
+
2578
+ /**
2579
+ * Headers to add to the MCP connection request.
2580
+ */
2581
+ headers?: { [key: string]: string };
2582
+
2583
+ /**
2584
+ * Query parameters to append to the MCP connection request URL.
2585
+ */
2586
+ query_params?: { [key: string]: string };
2587
+
2588
+ /**
2589
+ * Maximum time to wait for a connection to be established (in milliseconds).
2590
+ * Default to 120,000 ms (2 minutes).
2591
+ */
2592
+ timeout_ms?: number;
2593
+ }
2594
+
2544
2595
  export interface State {
2545
2596
  /**
2546
2597
  * Name of the state, must be unique for each state. Must be consisted of a-z, A-Z,
@@ -3317,12 +3368,6 @@ export interface LlmRetrieveParams {
3317
3368
  }
3318
3369
 
3319
3370
  export interface LlmUpdateParams {
3320
- /**
3321
- * Body param: The speaker who starts the conversation. Required. Must be either
3322
- * 'user' or 'agent'.
3323
- */
3324
- start_speaker: 'user' | 'agent';
3325
-
3326
3371
  /**
3327
3372
  * Query param: Optional version of the API to use for this request. Default to
3328
3373
  * latest version.
@@ -3390,11 +3435,15 @@ export interface LlmUpdateParams {
3390
3435
  kb_config?: LlmUpdateParams.KBConfig | null;
3391
3436
 
3392
3437
  /**
3393
- * Body param: A list of knowledge base ids to use for this resource. Set to null
3394
- * to remove all knowledge bases.
3438
+ * Body param: A list of knowledge base ids to use for this resource.
3395
3439
  */
3396
3440
  knowledge_base_ids?: Array<string> | null;
3397
3441
 
3442
+ /**
3443
+ * Body param: A list of MCPs to use for this LLM.
3444
+ */
3445
+ mcps?: Array<LlmUpdateParams.Mcp> | null;
3446
+
3398
3447
  /**
3399
3448
  * Body param: Select the underlying text LLM. If not set, would default to
3400
3449
  * gpt-4.1.
@@ -3417,11 +3466,11 @@ export interface LlmUpdateParams {
3417
3466
  | null;
3418
3467
 
3419
3468
  /**
3420
- * Body param: If set to true, will enable fast tier, which uses high priority pool
3421
- * with more dedicated resource to ensure lower and more consistent latency,
3422
- * default to false. This feature usually comes with a higher cost.
3469
+ * Body param: If set to true, will use high priority pool with more dedicated
3470
+ * resource to ensure lower and more consistent latency, default to false. This
3471
+ * feature usually comes with a higher cost.
3423
3472
  */
3424
- model_high_priority?: boolean;
3473
+ model_high_priority?: boolean | null;
3425
3474
 
3426
3475
  /**
3427
3476
  * Body param: If set, will control the randomness of the response. Value ranging
@@ -3437,6 +3486,12 @@ export interface LlmUpdateParams {
3437
3486
  */
3438
3487
  s2s_model?: 'gpt-4o-realtime' | 'gpt-4o-mini-realtime' | 'gpt-realtime' | null;
3439
3488
 
3489
+ /**
3490
+ * Body param: The speaker who starts the conversation. Required. Must be either
3491
+ * 'user' or 'agent'.
3492
+ */
3493
+ start_speaker?: 'user' | 'agent';
3494
+
3440
3495
  /**
3441
3496
  * Body param: Name of the starting state. Required if states is not empty.
3442
3497
  */
@@ -3452,15 +3507,13 @@ export interface LlmUpdateParams {
3452
3507
  states?: Array<LlmUpdateParams.State> | null;
3453
3508
 
3454
3509
  /**
3455
- * Body param: Only applicable when model is gpt-4o or gpt-4o mini. If set to true,
3456
- * will use structured output to make sure tool call arguments follow the json
3457
- * schema. The time to save a new tool or change to a tool will be longer as
3458
- * additional processing is needed. Default to false.
3510
+ * Body param: Whether to use strict mode for tool calls. Only applicable when
3511
+ * using certain supported models.
3459
3512
  */
3460
- tool_call_strict_mode?: boolean;
3513
+ tool_call_strict_mode?: boolean | null;
3461
3514
 
3462
3515
  /**
3463
- * Body param: Version of the Retell LLM.
3516
+ * Body param: The version of the LLM.
3464
3517
  */
3465
3518
  body_version?: number | null;
3466
3519
  }
@@ -4148,6 +4201,31 @@ export namespace LlmUpdateParams {
4148
4201
  top_k?: number;
4149
4202
  }
4150
4203
 
4204
+ export interface Mcp {
4205
+ name: string;
4206
+
4207
+ /**
4208
+ * The URL of the MCP server.
4209
+ */
4210
+ url: string;
4211
+
4212
+ /**
4213
+ * Headers to add to the MCP connection request.
4214
+ */
4215
+ headers?: { [key: string]: string };
4216
+
4217
+ /**
4218
+ * Query parameters to append to the MCP connection request URL.
4219
+ */
4220
+ query_params?: { [key: string]: string };
4221
+
4222
+ /**
4223
+ * Maximum time to wait for a connection to be established (in milliseconds).
4224
+ * Default to 120,000 ms (2 minutes).
4225
+ */
4226
+ timeout_ms?: number;
4227
+ }
4228
+
4151
4229
  export interface State {
4152
4230
  /**
4153
4231
  * Name of the state, must be unique for each state. Must be consisted of a-z, A-Z,
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '4.57.0'; // x-release-please-version
1
+ export const VERSION = '4.59.0'; // x-release-please-version
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "4.57.0";
1
+ export declare const VERSION = "4.59.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.57.0'; // x-release-please-version
4
+ exports.VERSION = '4.59.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '4.57.0'; // x-release-please-version
1
+ export const VERSION = '4.59.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map