retell-sdk 6.0.0 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/client.d.mts +2 -2
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +2 -2
  5. package/client.d.ts.map +1 -1
  6. package/client.js.map +1 -1
  7. package/client.mjs.map +1 -1
  8. package/package.json +1 -1
  9. package/resources/agent.d.mts +3222 -526
  10. package/resources/agent.d.mts.map +1 -1
  11. package/resources/agent.d.ts +3222 -526
  12. package/resources/agent.d.ts.map +1 -1
  13. package/resources/app.d.mts +122 -5
  14. package/resources/app.d.mts.map +1 -1
  15. package/resources/app.d.ts +122 -5
  16. package/resources/app.d.ts.map +1 -1
  17. package/resources/app.js +17 -1
  18. package/resources/app.js.map +1 -1
  19. package/resources/app.mjs +17 -1
  20. package/resources/app.mjs.map +1 -1
  21. package/resources/batch-call.d.mts +912 -13
  22. package/resources/batch-call.d.mts.map +1 -1
  23. package/resources/batch-call.d.ts +912 -13
  24. package/resources/batch-call.d.ts.map +1 -1
  25. package/resources/call.d.mts +7843 -3792
  26. package/resources/call.d.mts.map +1 -1
  27. package/resources/call.d.ts +7843 -3792
  28. package/resources/call.d.ts.map +1 -1
  29. package/resources/call.js +1 -1
  30. package/resources/call.mjs +1 -1
  31. package/resources/chat-agent.d.mts +3125 -453
  32. package/resources/chat-agent.d.mts.map +1 -1
  33. package/resources/chat-agent.d.ts +3125 -453
  34. package/resources/chat-agent.d.ts.map +1 -1
  35. package/resources/chat.d.mts +892 -26
  36. package/resources/chat.d.mts.map +1 -1
  37. package/resources/chat.d.ts +892 -26
  38. package/resources/chat.d.ts.map +1 -1
  39. package/resources/contact.d.mts +162 -20
  40. package/resources/contact.d.mts.map +1 -1
  41. package/resources/contact.d.ts +162 -20
  42. package/resources/contact.d.ts.map +1 -1
  43. package/resources/contact.js +98 -4
  44. package/resources/contact.js.map +1 -1
  45. package/resources/contact.mjs +98 -4
  46. package/resources/contact.mjs.map +1 -1
  47. package/resources/conversation-flow-component.d.mts +3282 -243
  48. package/resources/conversation-flow-component.d.mts.map +1 -1
  49. package/resources/conversation-flow-component.d.ts +3282 -243
  50. package/resources/conversation-flow-component.d.ts.map +1 -1
  51. package/resources/conversation-flow.d.mts +7347 -1269
  52. package/resources/conversation-flow.d.mts.map +1 -1
  53. package/resources/conversation-flow.d.ts +7347 -1269
  54. package/resources/conversation-flow.d.ts.map +1 -1
  55. package/resources/crm.d.mts +37 -5
  56. package/resources/crm.d.mts.map +1 -1
  57. package/resources/crm.d.ts +37 -5
  58. package/resources/crm.d.ts.map +1 -1
  59. package/resources/identity.d.mts +4 -0
  60. package/resources/identity.d.mts.map +1 -1
  61. package/resources/identity.d.ts +4 -0
  62. package/resources/identity.d.ts.map +1 -1
  63. package/resources/index.d.mts +1 -1
  64. package/resources/index.d.mts.map +1 -1
  65. package/resources/index.d.ts +1 -1
  66. package/resources/index.d.ts.map +1 -1
  67. package/resources/index.js.map +1 -1
  68. package/resources/index.mjs.map +1 -1
  69. package/resources/llm.d.mts +867 -9
  70. package/resources/llm.d.mts.map +1 -1
  71. package/resources/llm.d.ts +867 -9
  72. package/resources/llm.d.ts.map +1 -1
  73. package/resources/tests.d.mts +3 -3
  74. package/resources/tests.d.mts.map +1 -1
  75. package/resources/tests.d.ts +3 -3
  76. package/resources/tests.d.ts.map +1 -1
  77. package/src/client.ts +4 -0
  78. package/src/resources/agent.ts +4786 -1504
  79. package/src/resources/app.ts +144 -4
  80. package/src/resources/batch-call.ts +1115 -10
  81. package/src/resources/call.ts +9825 -4806
  82. package/src/resources/chat-agent.ts +3958 -698
  83. package/src/resources/chat.ts +1133 -50
  84. package/src/resources/contact.ts +168 -20
  85. package/src/resources/conversation-flow-component.ts +4466 -191
  86. package/src/resources/conversation-flow.ts +9084 -525
  87. package/src/resources/crm.ts +44 -5
  88. package/src/resources/identity.ts +5 -0
  89. package/src/resources/index.ts +2 -0
  90. package/src/resources/llm.ts +1045 -46
  91. package/src/resources/tests.ts +21 -0
  92. package/src/version.ts +1 -1
  93. package/version.d.mts +1 -1
  94. package/version.d.ts +1 -1
  95. package/version.js +1 -1
  96. package/version.mjs +1 -1
@@ -320,6 +320,15 @@ export namespace BatchCallCreateBatchCallParams {
320
320
  */
321
321
  call_screening_option?: Agent.CallScreeningOption | null;
322
322
 
323
+ /**
324
+ * Contact memory settings for phone calls and SMS chats. Creating an agent
325
+ * defaults enable_update to false and enable_read to true. Updates only change the
326
+ * supplied flags; omitted flags stay unchanged and an empty object has no effect.
327
+ * Set a flag to false to disable it. The configuration cannot be cleared. Existing
328
+ * agents without this configuration have both disabled.
329
+ */
330
+ contact_memory_config?: Agent.ContactMemoryConfig;
331
+
323
332
  /**
324
333
  * Custom STT configuration. Only used when stt_mode is set to custom.
325
334
  */
@@ -359,6 +368,14 @@ export namespace BatchCallCreateBatchCallParams {
359
368
  */
360
369
  enable_backchannel?: boolean;
361
370
 
371
+ /**
372
+ * If set to true, the agent recognizes requests to stop calling or contacting the
373
+ * user, confirms once, and on a clear yes ends the call with disconnection reason
374
+ * user_requested_dnc and sets do_not_call to true on the contact for the user's
375
+ * phone number. If unset, default value false will apply.
376
+ */
377
+ enable_dnc_detection?: boolean;
378
+
362
379
  /**
363
380
  * If set to true, the agent will dynamically adjust how quickly it responds based
364
381
  * on the user's speech rate and past turn-taking behavior in the call. If unset,
@@ -636,9 +653,16 @@ export namespace BatchCallCreateBatchCallParams {
636
653
  | 'gpt-5.5'
637
654
  | 'gpt-5.6-terra'
638
655
  | 'gpt-5.6-luna'
656
+ | 'gpt-6-astra'
657
+ | 'gpt-6-sol'
658
+ | 'gpt-6.1-sol'
659
+ | 'gpt-6-luna'
639
660
  | 'claude-4.5-sonnet'
640
661
  | 'claude-4.6-sonnet'
662
+ | 'claude-5-opus'
663
+ | 'claude-5.5-opus'
641
664
  | 'claude-5-sonnet'
665
+ | 'claude-5.5-sonnet'
642
666
  | 'claude-4.5-haiku'
643
667
  | 'gemini-3.0-flash'
644
668
  | 'gemini-3.1-flash-lite'
@@ -649,6 +673,26 @@ export namespace BatchCallCreateBatchCallParams {
649
673
  | 'gemini-3.8-flash'
650
674
  | null;
651
675
 
676
+ /**
677
+ * Integration (Agent Functions) tools run as a dependency graph during teardown,
678
+ * after post-call analysis. Each tool can be gated by a condition. On calls the
679
+ * graph is stopped after five minutes so teardown can finish. Set to null to
680
+ * clear.
681
+ */
682
+ post_session_tools?: Array<
683
+ Agent.AppTool | Agent.CustomTool | Agent.CodeTool | Agent.SendSMSTool
684
+ > | null;
685
+
686
+ /**
687
+ * Integration (Agent Functions) tools run as a dependency graph during session
688
+ * setup, before the agent's first message. Outputs are injected as dynamic
689
+ * variables. On calls the graph gets one minute unless an outbound caller will be
690
+ * dialed after setup, in which case it gets five minutes. Past that session
691
+ * initialization continues and any remaining tools finish in the background, so
692
+ * their outputs no longer reach the agent's prompt. Set to null to clear.
693
+ */
694
+ pre_session_tools?: Array<Agent.AppTool | Agent.CustomTool | Agent.CodeTool> | null;
695
+
652
696
  /**
653
697
  * A list of words / phrases and their pronunciation to be used to guide the audio
654
698
  * synthesize for consistent pronunciation. Check the dashboard to see what
@@ -735,12 +779,6 @@ export namespace BatchCallCreateBatchCallParams {
735
779
  */
736
780
  vocab_specialization?: 'general' | 'medical';
737
781
 
738
- /**
739
- * Controls the emotional tone of the agent's voice. Currently supported for
740
- * Cartesia and Minimax TTS providers. If unset, no emotion will be used.
741
- */
742
- voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
743
-
744
782
  /**
745
783
  * Unique voice id used for the agent. Find list of available voices and their
746
784
  * preview in Dashboard.
@@ -757,6 +795,7 @@ export namespace BatchCallCreateBatchCallParams {
757
795
  | 'eleven_flash_v2_5'
758
796
  | 'eleven_multilingual_v2'
759
797
  | 'eleven_v3'
798
+ | 'eleven_v4_turbo'
760
799
  | 'sonic-3'
761
800
  | 'sonic-3-latest'
762
801
  | 'sonic-3.5'
@@ -852,22 +891,46 @@ export namespace BatchCallCreateBatchCallParams {
852
891
  call_purpose: string;
853
892
  }
854
893
 
894
+ /**
895
+ * Contact memory settings for phone calls and SMS chats. Creating an agent
896
+ * defaults enable_update to false and enable_read to true. Updates only change the
897
+ * supplied flags; omitted flags stay unchanged and an empty object has no effect.
898
+ * Set a flag to false to disable it. The configuration cannot be cleared. Existing
899
+ * agents without this configuration have both disabled.
900
+ */
901
+ export interface ContactMemoryConfig {
902
+ /**
903
+ * Automatically add saved contact memory to the agent prompt. Skippable nodes can
904
+ * use answers from the current conversation even when this setting is disabled.
905
+ * Contact dynamic variables, including contact_memory, remain available regardless
906
+ * of this setting.
907
+ */
908
+ enable_read?: boolean;
909
+
910
+ /**
911
+ * Rewrite the contact memory after each conversation. Requires storing
912
+ * conversation data. Chat agents must also have end_chat_after_silence_ms set.
913
+ */
914
+ enable_update?: boolean;
915
+ }
916
+
855
917
  /**
856
918
  * Custom STT configuration. Only used when stt_mode is set to custom.
857
919
  */
858
920
  export interface CustomSttConfig {
859
921
  /**
860
922
  * Endpointing timeout in milliseconds. Minimum is 100 for Azure, 10 for Deepgram,
861
- * 500 for Soniox, 100 for AssemblyAI. For AssemblyAI, this sets min_turn_silence
862
- * (100-3000 ms). max_turn_silence adds half of this value, rounded to the nearest
863
- * millisecond and bounded to 500-1000 ms, with a total cap of 3000 ms.
923
+ * 500 for Soniox, 100 for AssemblyAI, 100 for Muse. For AssemblyAI, this sets
924
+ * min_turn_silence (100-3000 ms). max_turn_silence adds half of this value,
925
+ * rounded to the nearest millisecond and bounded to 500-1000 ms, with a total cap
926
+ * of 3000 ms. Muse detects turn ends itself and ignores this value.
864
927
  */
865
928
  endpointing_ms: number;
866
929
 
867
930
  /**
868
931
  * ASR provider name.
869
932
  */
870
- provider: 'azure' | 'deepgram' | 'soniox' | 'assemblyai';
933
+ provider: 'azure' | 'deepgram' | 'soniox' | 'assemblyai' | 'muse';
871
934
  }
872
935
 
873
936
  /**
@@ -1174,6 +1237,1034 @@ export namespace BatchCallCreateBatchCallParams {
1174
1237
  required?: boolean;
1175
1238
  }
1176
1239
 
1240
+ export interface AppTool {
1241
+ /**
1242
+ * The connection (App) this tool runs against. Must be a connection in the
1243
+ * organization whose provider matches this tool's provider.
1244
+ */
1245
+ app_id: string;
1246
+
1247
+ /**
1248
+ * Name of the catalog template within the provider, as listed by
1249
+ * list-app-templates.
1250
+ */
1251
+ app_tool_template_name: string;
1252
+
1253
+ /**
1254
+ * Name of the tool. Must be unique within the phase's tools; referenced by
1255
+ * depends_on.
1256
+ */
1257
+ name: string;
1258
+
1259
+ /**
1260
+ * Provider of the connection. Must match the connection's provider; supported
1261
+ * providers are listed by list-app-templates.
1262
+ */
1263
+ provider: string;
1264
+
1265
+ type: 'integration_app';
1266
+
1267
+ /**
1268
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1269
+ * running.
1270
+ */
1271
+ condition?: AppTool.Condition;
1272
+
1273
+ /**
1274
+ * Names of tools that must run before this one.
1275
+ */
1276
+ depends_on?: Array<string>;
1277
+
1278
+ /**
1279
+ * Only applies to during conversation functions; ignored by the pre/post
1280
+ * conversation. Overrides the catalog template's LLM-facing description.
1281
+ */
1282
+ description?: string;
1283
+
1284
+ /**
1285
+ * Only applies to during conversation functions; ignored by the pre/post
1286
+ * conversation. If true, play a typing sound on the agent audio track while this
1287
+ * tool is executing. Useful when the tool takes a noticeable amount of time to
1288
+ * prevent silence on the call.
1289
+ */
1290
+ enable_typing_sound?: boolean;
1291
+
1292
+ /**
1293
+ * Only applies to during conversation functions; ignored by the pre/post
1294
+ * conversation. The message for the agent to speak when executing the tool. Only
1295
+ * applicable when speak_during_execution is true.
1296
+ */
1297
+ execution_message_description?: string;
1298
+
1299
+ /**
1300
+ * Only applies to during conversation functions; ignored by the pre/post
1301
+ * conversation. Type of execution message. "prompt" means the agent will use
1302
+ * execution_message_description as a prompt to generate the message. "static_text"
1303
+ * means the agent will speak the execution_message_description directly. Defaults
1304
+ * to "prompt".
1305
+ */
1306
+ execution_message_type?: 'prompt' | 'static_text';
1307
+
1308
+ /**
1309
+ * What the agent and the transcript see of the tool's response. Omit to send the
1310
+ * full response. Does not affect response_variables, which are always extracted
1311
+ * from the raw response.
1312
+ */
1313
+ output_selection?: AppTool.UnionMember0 | AppTool.UnionMember1;
1314
+
1315
+ /**
1316
+ * The resolved input parameters, in order. Properties may pin a value with const
1317
+ * (including {{variable}} references) or provide a description for LLM inference.
1318
+ * Each property may also record selected*input_mode, the editor mode the user
1319
+ * selected ("const_enum", "const_boolean", "const_value", "description_custom", or
1320
+ * "description_preset"); it is stored and returned as-is, used only by the tool
1321
+ * config UI. Omit the key when no mode is recorded; when set, const*_ modes
1322
+ * require a non-empty const, and description\__ modes must omit const entirely.
1323
+ * Each parameter's required list must match the schema returned by the
1324
+ * corresponding step of the get-app-tool-schema loop.
1325
+ */
1326
+ parameters?: Array<AppTool.Parameter>;
1327
+
1328
+ /**
1329
+ * Mapping of a dynamic-variable name to the response field (dot-path) it is
1330
+ * populated from. Missing paths are ignored.
1331
+ */
1332
+ response_variables?: { [key: string]: string };
1333
+
1334
+ /**
1335
+ * Only applies to during conversation functions; ignored by the pre/post
1336
+ * conversation. Determines whether the agent would call LLM another time and speak
1337
+ * when the result of the tool is obtained.
1338
+ */
1339
+ speak_after_execution?: boolean;
1340
+
1341
+ /**
1342
+ * Only applies to during conversation functions; ignored by the pre/post
1343
+ * conversation. If true, will speak during execution.
1344
+ */
1345
+ speak_during_execution?: boolean;
1346
+ }
1347
+
1348
+ export namespace AppTool {
1349
+ /**
1350
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1351
+ * running.
1352
+ */
1353
+ export interface Condition {
1354
+ equations: Array<Condition.Equation>;
1355
+
1356
+ operator: '||' | '&&';
1357
+
1358
+ type: 'equation';
1359
+ }
1360
+
1361
+ export namespace Condition {
1362
+ export interface Equation {
1363
+ /**
1364
+ * Left side of the equation
1365
+ */
1366
+ left: string;
1367
+
1368
+ operator:
1369
+ | '=='
1370
+ | '!='
1371
+ | '>'
1372
+ | '>='
1373
+ | '<'
1374
+ | '<='
1375
+ | 'contains'
1376
+ | 'not_contains'
1377
+ | 'exists'
1378
+ | 'not_exist';
1379
+
1380
+ /**
1381
+ * Right side of the equation. The right side of the equation not required when
1382
+ * "exists" or "not_exist" are selected.
1383
+ */
1384
+ right?: string;
1385
+ }
1386
+ }
1387
+
1388
+ export interface UnionMember0 {
1389
+ mode: 'all';
1390
+
1391
+ /**
1392
+ * Not used at runtime; stored and returned as-is for the UI.
1393
+ */
1394
+ fields?: Array<string>;
1395
+ }
1396
+
1397
+ export interface UnionMember1 {
1398
+ /**
1399
+ * The only response fields the agent and the transcript see, as dot-paths into the
1400
+ * response schema returned by get-app-tool-schema. Everything else is dropped.
1401
+ * Selecting a parent keeps its whole subtree. A plain segment traverses arrays
1402
+ * element-wise (deals.properties.amount keeps that field on every deal), while
1403
+ * key[n] selects one element (deals[0].id keeps only the first deal's id); paths
1404
+ * that match nothing contribute nothing.
1405
+ */
1406
+ fields: Array<string>;
1407
+
1408
+ mode: 'subset';
1409
+ }
1410
+
1411
+ /**
1412
+ * The parameters the functions accepts, described as a JSON Schema object. See
1413
+ * [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
1414
+ * documentation about the format. Omitting parameters defines a function with an
1415
+ * empty parameter list.
1416
+ */
1417
+ export interface Parameter {
1418
+ /**
1419
+ * The value of properties is an object, where each key is the name of a property
1420
+ * and each value is a schema used to validate that property.
1421
+ */
1422
+ properties: unknown;
1423
+
1424
+ /**
1425
+ * Type must be "object" for a JSON Schema object.
1426
+ */
1427
+ type: 'object';
1428
+
1429
+ /**
1430
+ * List of names of required property when generating this parameter. LLM will do
1431
+ * its best to generate the required properties in its function arguments. Property
1432
+ * must exist in properties.
1433
+ */
1434
+ required?: Array<string>;
1435
+ }
1436
+ }
1437
+
1438
+ export interface CustomTool {
1439
+ /**
1440
+ * Name of the tool. Must be unique within all tools available to LLM at any given
1441
+ * time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
1442
+ * 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
1443
+ * allowed).
1444
+ */
1445
+ name: string;
1446
+
1447
+ type: 'custom';
1448
+
1449
+ /**
1450
+ * Describes what the tool does, sometimes can also include information about when
1451
+ * to call the tool.
1452
+ */
1453
+ url: string;
1454
+
1455
+ /**
1456
+ * If set to true, the parameters will be passed as root level JSON object instead
1457
+ * of nested under "args".
1458
+ */
1459
+ args_at_root?: boolean;
1460
+
1461
+ /**
1462
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1463
+ * running.
1464
+ */
1465
+ condition?: CustomTool.Condition;
1466
+
1467
+ /**
1468
+ * Names of tools that must run before this one.
1469
+ */
1470
+ depends_on?: Array<string>;
1471
+
1472
+ /**
1473
+ * Describes what this tool does and when to call this tool.
1474
+ */
1475
+ description?: string;
1476
+
1477
+ /**
1478
+ * If true, play a typing sound on the agent audio track while this tool is
1479
+ * executing. Useful when the tool takes a noticeable amount of time to prevent
1480
+ * silence on the call.
1481
+ */
1482
+ enable_typing_sound?: boolean;
1483
+
1484
+ /**
1485
+ * The description for the sentence agent say during execution. Only applicable
1486
+ * when speak_during_execution is true. Can write what to say or even provide
1487
+ * examples. The default is "The message you will say to callee when calling this
1488
+ * tool. Make sure it fits into the conversation smoothly.".
1489
+ */
1490
+ execution_message_description?: string;
1491
+
1492
+ /**
1493
+ * Type of execution message. "prompt" means the agent will use
1494
+ * execution_message_description as a prompt to generate the message. "static_text"
1495
+ * means the agent will speak the execution_message_description directly. Defaults
1496
+ * to "prompt".
1497
+ */
1498
+ execution_message_type?: 'prompt' | 'static_text';
1499
+
1500
+ /**
1501
+ * Headers to add to the request.
1502
+ */
1503
+ headers?: { [key: string]: string };
1504
+
1505
+ /**
1506
+ * Maximum number of times to retry the request after a failed attempt, from 0 (no
1507
+ * retry) to 5. Retries happen on any failure, with exponential backoff between
1508
+ * attempts; the backoff delay is not configurable. `timeout_ms` applies per
1509
+ * attempt rather than as a budget across all attempts, so an attempt that times
1510
+ * out is still retried and the worst-case total duration is `timeout_ms`
1511
+ * multiplied by (`max_retry` + 1) as well as any latency incurred by the
1512
+ * exponential backoff + jitter between each retry. Only the final attempt's result
1513
+ * is reported to the agent. Because retries repeat the request, only set this
1514
+ * above 0 if your endpoint is idempotent — a retried request may be processed more
1515
+ * than once. Defaults to 0 (no retry).
1516
+ */
1517
+ max_retry?: number;
1518
+
1519
+ /**
1520
+ * Method to use for the request, default to POST.
1521
+ */
1522
+ method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
1523
+
1524
+ /**
1525
+ * How the tool's `parameters` are authored and shown in the dashboard editor —
1526
+ * "form" for the visual parameter builder, "json" for a raw JSON Schema. Both
1527
+ * produce the same `parameters` schema; this does not change how the request body
1528
+ * is encoded (see `args_at_root`).
1529
+ */
1530
+ parameter_type?: 'json' | 'form';
1531
+
1532
+ /**
1533
+ * The parameters the functions accepts, described as a JSON Schema object. See
1534
+ * [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
1535
+ * documentation about the format. Omitting parameters defines a function with an
1536
+ * empty parameter list.
1537
+ */
1538
+ parameters?: CustomTool.Parameters;
1539
+
1540
+ /**
1541
+ * Query parameters to append to the request URL.
1542
+ */
1543
+ query_params?: { [key: string]: string };
1544
+
1545
+ /**
1546
+ * A mapping of variable names to JSON paths in the response body. These values
1547
+ * will be extracted from the response and made available as dynamic variables for
1548
+ * use.
1549
+ */
1550
+ response_variables?: { [key: string]: string };
1551
+
1552
+ /**
1553
+ * Determines whether the agent would call LLM another time and speak when the
1554
+ * result of function is obtained. Usually this needs to get turned on so user can
1555
+ * get update for the function call.
1556
+ */
1557
+ speak_after_execution?: boolean;
1558
+
1559
+ /**
1560
+ * Determines whether the agent would say sentence like "One moment, let me check
1561
+ * that." when executing the function. Recommend to turn on if your function call
1562
+ * takes over 1s (including network) to complete, so that your agent remains
1563
+ * responsive.
1564
+ */
1565
+ speak_during_execution?: boolean;
1566
+
1567
+ /**
1568
+ * The maximum time in milliseconds the tool can run before it's considered
1569
+ * timeout. If the tool times out, the agent would have that info. The minimum
1570
+ * value allowed is 1000 ms (1 s), and maximum value allowed is 600,000 ms (10
1571
+ * min). By default, this is set to 120,000 ms (2 min).
1572
+ */
1573
+ timeout_ms?: number;
1574
+ }
1575
+
1576
+ export namespace CustomTool {
1577
+ /**
1578
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1579
+ * running.
1580
+ */
1581
+ export interface Condition {
1582
+ equations: Array<Condition.Equation>;
1583
+
1584
+ operator: '||' | '&&';
1585
+
1586
+ type: 'equation';
1587
+ }
1588
+
1589
+ export namespace Condition {
1590
+ export interface Equation {
1591
+ /**
1592
+ * Left side of the equation
1593
+ */
1594
+ left: string;
1595
+
1596
+ operator:
1597
+ | '=='
1598
+ | '!='
1599
+ | '>'
1600
+ | '>='
1601
+ | '<'
1602
+ | '<='
1603
+ | 'contains'
1604
+ | 'not_contains'
1605
+ | 'exists'
1606
+ | 'not_exist';
1607
+
1608
+ /**
1609
+ * Right side of the equation. The right side of the equation not required when
1610
+ * "exists" or "not_exist" are selected.
1611
+ */
1612
+ right?: string;
1613
+ }
1614
+ }
1615
+
1616
+ /**
1617
+ * The parameters the functions accepts, described as a JSON Schema object. See
1618
+ * [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
1619
+ * documentation about the format. Omitting parameters defines a function with an
1620
+ * empty parameter list.
1621
+ */
1622
+ export interface Parameters {
1623
+ /**
1624
+ * The value of properties is an object, where each key is the name of a property
1625
+ * and each value is a schema used to validate that property.
1626
+ */
1627
+ properties: unknown;
1628
+
1629
+ /**
1630
+ * Type must be "object" for a JSON Schema object.
1631
+ */
1632
+ type: 'object';
1633
+
1634
+ /**
1635
+ * List of names of required property when generating this parameter. LLM will do
1636
+ * its best to generate the required properties in its function arguments. Property
1637
+ * must exist in properties.
1638
+ */
1639
+ required?: Array<string>;
1640
+ }
1641
+ }
1642
+
1643
+ export interface CodeTool {
1644
+ /**
1645
+ * JavaScript code to execute in the sandbox.
1646
+ */
1647
+ code: string;
1648
+
1649
+ /**
1650
+ * Name of the tool. Must be unique within all tools available to LLM at any given
1651
+ * time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
1652
+ * 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
1653
+ * allowed).
1654
+ */
1655
+ name: string;
1656
+
1657
+ type: 'code';
1658
+
1659
+ /**
1660
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1661
+ * running.
1662
+ */
1663
+ condition?: CodeTool.Condition;
1664
+
1665
+ /**
1666
+ * Names of tools that must run before this one.
1667
+ */
1668
+ depends_on?: Array<string>;
1669
+
1670
+ /**
1671
+ * Describes what this tool does and when to call this tool.
1672
+ */
1673
+ description?: string;
1674
+
1675
+ /**
1676
+ * If true, play a typing sound on the agent audio track while this tool is
1677
+ * executing.
1678
+ */
1679
+ enable_typing_sound?: boolean;
1680
+
1681
+ /**
1682
+ * The description for the sentence agent say during execution. Only applicable
1683
+ * when speak_during_execution is true.
1684
+ */
1685
+ execution_message_description?: string;
1686
+
1687
+ /**
1688
+ * Type of execution message. "prompt" means the agent will use
1689
+ * execution_message_description as a prompt to generate the message. "static_text"
1690
+ * means the agent will speak the execution_message_description directly. Defaults
1691
+ * to "prompt".
1692
+ */
1693
+ execution_message_type?: 'prompt' | 'static_text';
1694
+
1695
+ /**
1696
+ * A mapping of variable names to JSON paths in the code execution result. These
1697
+ * mapped values will be extracted and added as dynamic variables.
1698
+ */
1699
+ response_variables?: { [key: string]: string };
1700
+
1701
+ /**
1702
+ * Determines whether the agent would call LLM another time and speak when the
1703
+ * result of function is obtained.
1704
+ */
1705
+ speak_after_execution?: boolean;
1706
+
1707
+ /**
1708
+ * Determines whether the agent would say sentence like "One moment, let me check
1709
+ * that." when executing the tool.
1710
+ */
1711
+ speak_during_execution?: boolean;
1712
+
1713
+ /**
1714
+ * The maximum time in milliseconds the code can run before it's considered
1715
+ * timeout. Defaults to 30,000 ms (30 s).
1716
+ */
1717
+ timeout_ms?: number;
1718
+ }
1719
+
1720
+ export namespace CodeTool {
1721
+ /**
1722
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1723
+ * running.
1724
+ */
1725
+ export interface Condition {
1726
+ equations: Array<Condition.Equation>;
1727
+
1728
+ operator: '||' | '&&';
1729
+
1730
+ type: 'equation';
1731
+ }
1732
+
1733
+ export namespace Condition {
1734
+ export interface Equation {
1735
+ /**
1736
+ * Left side of the equation
1737
+ */
1738
+ left: string;
1739
+
1740
+ operator:
1741
+ | '=='
1742
+ | '!='
1743
+ | '>'
1744
+ | '>='
1745
+ | '<'
1746
+ | '<='
1747
+ | 'contains'
1748
+ | 'not_contains'
1749
+ | 'exists'
1750
+ | 'not_exist';
1751
+
1752
+ /**
1753
+ * Right side of the equation. The right side of the equation not required when
1754
+ * "exists" or "not_exist" are selected.
1755
+ */
1756
+ right?: string;
1757
+ }
1758
+ }
1759
+ }
1760
+
1761
+ export interface SendSMSTool {
1762
+ /**
1763
+ * Name of the tool. Must be unique within all tools available to LLM at any given
1764
+ * time (general tools + state tools + state edges).
1765
+ */
1766
+ name: string;
1767
+
1768
+ sms_content:
1769
+ | SendSMSTool.SMSContentPredefined
1770
+ | SendSMSTool.SMSContentInferred
1771
+ | SendSMSTool.SMSContentTemplate;
1772
+
1773
+ type: 'send_sms';
1774
+
1775
+ /**
1776
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1777
+ * running.
1778
+ */
1779
+ condition?: SendSMSTool.Condition;
1780
+
1781
+ /**
1782
+ * Names of tools that must run before this one.
1783
+ */
1784
+ depends_on?: Array<string>;
1785
+
1786
+ /**
1787
+ * Describes what the tool does, sometimes can also include information about when
1788
+ * to call the tool.
1789
+ */
1790
+ description?: string;
1791
+
1792
+ /**
1793
+ * Describes what to say before sending the SMS. Only applicable when
1794
+ * speak_during_execution is true.
1795
+ */
1796
+ execution_message_description?: string;
1797
+
1798
+ /**
1799
+ * Type of execution message. "prompt" means the agent will use
1800
+ * execution_message_description as a prompt to generate the message. "static_text"
1801
+ * means the agent will speak the execution_message_description directly. Defaults
1802
+ * to "prompt".
1803
+ */
1804
+ execution_message_type?: 'prompt' | 'static_text';
1805
+
1806
+ /**
1807
+ * If true, the agent will speak a short line before sending the SMS. If omitted,
1808
+ * defaults to true (same as end_call / transfer_call tools).
1809
+ */
1810
+ speak_during_execution?: boolean;
1811
+ }
1812
+
1813
+ export namespace SendSMSTool {
1814
+ export interface SMSContentPredefined {
1815
+ /**
1816
+ * The static message to be sent in the SMS. Can contain dynamic variables.
1817
+ */
1818
+ text?: string;
1819
+
1820
+ type?: 'predefined';
1821
+ }
1822
+
1823
+ export interface SMSContentInferred {
1824
+ /**
1825
+ * The prompt to be used to help infer the SMS content. The model will take the
1826
+ * global prompt, the call transcript, and this prompt together to deduce the right
1827
+ * message to send. Can contain dynamic variables.
1828
+ */
1829
+ prompt?: string;
1830
+
1831
+ type?: 'inferred';
1832
+ }
1833
+
1834
+ export interface SMSContentTemplate {
1835
+ /**
1836
+ * The template to use for the SMS content. "info_collection" sends a predefined
1837
+ * message requesting information from the user.
1838
+ */
1839
+ template: 'info_collection';
1840
+
1841
+ type: 'template';
1842
+ }
1843
+
1844
+ /**
1845
+ * Optional gate; the step only runs when the condition holds. Defaults to always
1846
+ * running.
1847
+ */
1848
+ export interface Condition {
1849
+ equations: Array<Condition.Equation>;
1850
+
1851
+ operator: '||' | '&&';
1852
+
1853
+ type: 'equation';
1854
+ }
1855
+
1856
+ export namespace Condition {
1857
+ export interface Equation {
1858
+ /**
1859
+ * Left side of the equation
1860
+ */
1861
+ left: string;
1862
+
1863
+ operator:
1864
+ | '=='
1865
+ | '!='
1866
+ | '>'
1867
+ | '>='
1868
+ | '<'
1869
+ | '<='
1870
+ | 'contains'
1871
+ | 'not_contains'
1872
+ | 'exists'
1873
+ | 'not_exist';
1874
+
1875
+ /**
1876
+ * Right side of the equation. The right side of the equation not required when
1877
+ * "exists" or "not_exist" are selected.
1878
+ */
1879
+ right?: string;
1880
+ }
1881
+ }
1882
+ }
1883
+
1884
+ export interface AppTool {
1885
+ /**
1886
+ * The connection (App) this tool runs against. Must be a connection in the
1887
+ * organization whose provider matches this tool's provider.
1888
+ */
1889
+ app_id: string;
1890
+
1891
+ /**
1892
+ * Name of the catalog template within the provider, as listed by
1893
+ * list-app-templates.
1894
+ */
1895
+ app_tool_template_name: string;
1896
+
1897
+ /**
1898
+ * Name of the tool. Must be unique within the phase's tools; referenced by
1899
+ * depends_on.
1900
+ */
1901
+ name: string;
1902
+
1903
+ /**
1904
+ * Provider of the connection. Must match the connection's provider; supported
1905
+ * providers are listed by list-app-templates.
1906
+ */
1907
+ provider: string;
1908
+
1909
+ type: 'integration_app';
1910
+
1911
+ /**
1912
+ * Names of tools that must run before this one.
1913
+ */
1914
+ depends_on?: Array<string>;
1915
+
1916
+ /**
1917
+ * Only applies to during conversation functions; ignored by the pre/post
1918
+ * conversation. Overrides the catalog template's LLM-facing description.
1919
+ */
1920
+ description?: string;
1921
+
1922
+ /**
1923
+ * Only applies to during conversation functions; ignored by the pre/post
1924
+ * conversation. If true, play a typing sound on the agent audio track while this
1925
+ * tool is executing. Useful when the tool takes a noticeable amount of time to
1926
+ * prevent silence on the call.
1927
+ */
1928
+ enable_typing_sound?: boolean;
1929
+
1930
+ /**
1931
+ * Only applies to during conversation functions; ignored by the pre/post
1932
+ * conversation. The message for the agent to speak when executing the tool. Only
1933
+ * applicable when speak_during_execution is true.
1934
+ */
1935
+ execution_message_description?: string;
1936
+
1937
+ /**
1938
+ * Only applies to during conversation functions; ignored by the pre/post
1939
+ * conversation. Type of execution message. "prompt" means the agent will use
1940
+ * execution_message_description as a prompt to generate the message. "static_text"
1941
+ * means the agent will speak the execution_message_description directly. Defaults
1942
+ * to "prompt".
1943
+ */
1944
+ execution_message_type?: 'prompt' | 'static_text';
1945
+
1946
+ /**
1947
+ * What the agent and the transcript see of the tool's response. Omit to send the
1948
+ * full response. Does not affect response_variables, which are always extracted
1949
+ * from the raw response.
1950
+ */
1951
+ output_selection?: AppTool.UnionMember0 | AppTool.UnionMember1;
1952
+
1953
+ /**
1954
+ * The resolved input parameters, in order. Properties may pin a value with const
1955
+ * (including {{variable}} references) or provide a description for LLM inference.
1956
+ * Each property may also record selected*input_mode, the editor mode the user
1957
+ * selected ("const_enum", "const_boolean", "const_value", "description_custom", or
1958
+ * "description_preset"); it is stored and returned as-is, used only by the tool
1959
+ * config UI. Omit the key when no mode is recorded; when set, const*_ modes
1960
+ * require a non-empty const, and description\__ modes must omit const entirely.
1961
+ * Each parameter's required list must match the schema returned by the
1962
+ * corresponding step of the get-app-tool-schema loop.
1963
+ */
1964
+ parameters?: Array<AppTool.Parameter>;
1965
+
1966
+ /**
1967
+ * Mapping of a dynamic-variable name to the response field (dot-path) it is
1968
+ * populated from. Missing paths are ignored.
1969
+ */
1970
+ response_variables?: { [key: string]: string };
1971
+
1972
+ /**
1973
+ * Only applies to during conversation functions; ignored by the pre/post
1974
+ * conversation. Determines whether the agent would call LLM another time and speak
1975
+ * when the result of the tool is obtained.
1976
+ */
1977
+ speak_after_execution?: boolean;
1978
+
1979
+ /**
1980
+ * Only applies to during conversation functions; ignored by the pre/post
1981
+ * conversation. If true, will speak during execution.
1982
+ */
1983
+ speak_during_execution?: boolean;
1984
+ }
1985
+
1986
+ export namespace AppTool {
1987
+ export interface UnionMember0 {
1988
+ mode: 'all';
1989
+
1990
+ /**
1991
+ * Not used at runtime; stored and returned as-is for the UI.
1992
+ */
1993
+ fields?: Array<string>;
1994
+ }
1995
+
1996
+ export interface UnionMember1 {
1997
+ /**
1998
+ * The only response fields the agent and the transcript see, as dot-paths into the
1999
+ * response schema returned by get-app-tool-schema. Everything else is dropped.
2000
+ * Selecting a parent keeps its whole subtree. A plain segment traverses arrays
2001
+ * element-wise (deals.properties.amount keeps that field on every deal), while
2002
+ * key[n] selects one element (deals[0].id keeps only the first deal's id); paths
2003
+ * that match nothing contribute nothing.
2004
+ */
2005
+ fields: Array<string>;
2006
+
2007
+ mode: 'subset';
2008
+ }
2009
+
2010
+ /**
2011
+ * The parameters the functions accepts, described as a JSON Schema object. See
2012
+ * [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
2013
+ * documentation about the format. Omitting parameters defines a function with an
2014
+ * empty parameter list.
2015
+ */
2016
+ export interface Parameter {
2017
+ /**
2018
+ * The value of properties is an object, where each key is the name of a property
2019
+ * and each value is a schema used to validate that property.
2020
+ */
2021
+ properties: unknown;
2022
+
2023
+ /**
2024
+ * Type must be "object" for a JSON Schema object.
2025
+ */
2026
+ type: 'object';
2027
+
2028
+ /**
2029
+ * List of names of required property when generating this parameter. LLM will do
2030
+ * its best to generate the required properties in its function arguments. Property
2031
+ * must exist in properties.
2032
+ */
2033
+ required?: Array<string>;
2034
+ }
2035
+ }
2036
+
2037
+ export interface CustomTool {
2038
+ /**
2039
+ * Name of the tool. Must be unique within all tools available to LLM at any given
2040
+ * time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
2041
+ * 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
2042
+ * allowed).
2043
+ */
2044
+ name: string;
2045
+
2046
+ type: 'custom';
2047
+
2048
+ /**
2049
+ * Describes what the tool does, sometimes can also include information about when
2050
+ * to call the tool.
2051
+ */
2052
+ url: string;
2053
+
2054
+ /**
2055
+ * If set to true, the parameters will be passed as root level JSON object instead
2056
+ * of nested under "args".
2057
+ */
2058
+ args_at_root?: boolean;
2059
+
2060
+ /**
2061
+ * Names of tools that must run before this one.
2062
+ */
2063
+ depends_on?: Array<string>;
2064
+
2065
+ /**
2066
+ * Describes what this tool does and when to call this tool.
2067
+ */
2068
+ description?: string;
2069
+
2070
+ /**
2071
+ * If true, play a typing sound on the agent audio track while this tool is
2072
+ * executing. Useful when the tool takes a noticeable amount of time to prevent
2073
+ * silence on the call.
2074
+ */
2075
+ enable_typing_sound?: boolean;
2076
+
2077
+ /**
2078
+ * The description for the sentence agent say during execution. Only applicable
2079
+ * when speak_during_execution is true. Can write what to say or even provide
2080
+ * examples. The default is "The message you will say to callee when calling this
2081
+ * tool. Make sure it fits into the conversation smoothly.".
2082
+ */
2083
+ execution_message_description?: string;
2084
+
2085
+ /**
2086
+ * Type of execution message. "prompt" means the agent will use
2087
+ * execution_message_description as a prompt to generate the message. "static_text"
2088
+ * means the agent will speak the execution_message_description directly. Defaults
2089
+ * to "prompt".
2090
+ */
2091
+ execution_message_type?: 'prompt' | 'static_text';
2092
+
2093
+ /**
2094
+ * Headers to add to the request.
2095
+ */
2096
+ headers?: { [key: string]: string };
2097
+
2098
+ /**
2099
+ * Maximum number of times to retry the request after a failed attempt, from 0 (no
2100
+ * retry) to 5. Retries happen on any failure, with exponential backoff between
2101
+ * attempts; the backoff delay is not configurable. `timeout_ms` applies per
2102
+ * attempt rather than as a budget across all attempts, so an attempt that times
2103
+ * out is still retried and the worst-case total duration is `timeout_ms`
2104
+ * multiplied by (`max_retry` + 1) as well as any latency incurred by the
2105
+ * exponential backoff + jitter between each retry. Only the final attempt's result
2106
+ * is reported to the agent. Because retries repeat the request, only set this
2107
+ * above 0 if your endpoint is idempotent — a retried request may be processed more
2108
+ * than once. Defaults to 0 (no retry).
2109
+ */
2110
+ max_retry?: number;
2111
+
2112
+ /**
2113
+ * Method to use for the request, default to POST.
2114
+ */
2115
+ method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
2116
+
2117
+ /**
2118
+ * How the tool's `parameters` are authored and shown in the dashboard editor —
2119
+ * "form" for the visual parameter builder, "json" for a raw JSON Schema. Both
2120
+ * produce the same `parameters` schema; this does not change how the request body
2121
+ * is encoded (see `args_at_root`).
2122
+ */
2123
+ parameter_type?: 'json' | 'form';
2124
+
2125
+ /**
2126
+ * The parameters the functions accepts, described as a JSON Schema object. See
2127
+ * [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
2128
+ * documentation about the format. Omitting parameters defines a function with an
2129
+ * empty parameter list.
2130
+ */
2131
+ parameters?: CustomTool.Parameters;
2132
+
2133
+ /**
2134
+ * Query parameters to append to the request URL.
2135
+ */
2136
+ query_params?: { [key: string]: string };
2137
+
2138
+ /**
2139
+ * A mapping of variable names to JSON paths in the response body. These values
2140
+ * will be extracted from the response and made available as dynamic variables for
2141
+ * use.
2142
+ */
2143
+ response_variables?: { [key: string]: string };
2144
+
2145
+ /**
2146
+ * Determines whether the agent would call LLM another time and speak when the
2147
+ * result of function is obtained. Usually this needs to get turned on so user can
2148
+ * get update for the function call.
2149
+ */
2150
+ speak_after_execution?: boolean;
2151
+
2152
+ /**
2153
+ * Determines whether the agent would say sentence like "One moment, let me check
2154
+ * that." when executing the function. Recommend to turn on if your function call
2155
+ * takes over 1s (including network) to complete, so that your agent remains
2156
+ * responsive.
2157
+ */
2158
+ speak_during_execution?: boolean;
2159
+
2160
+ /**
2161
+ * The maximum time in milliseconds the tool can run before it's considered
2162
+ * timeout. If the tool times out, the agent would have that info. The minimum
2163
+ * value allowed is 1000 ms (1 s), and maximum value allowed is 600,000 ms (10
2164
+ * min). By default, this is set to 120,000 ms (2 min).
2165
+ */
2166
+ timeout_ms?: number;
2167
+ }
2168
+
2169
+ export namespace CustomTool {
2170
+ /**
2171
+ * The parameters the functions accepts, described as a JSON Schema object. See
2172
+ * [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
2173
+ * documentation about the format. Omitting parameters defines a function with an
2174
+ * empty parameter list.
2175
+ */
2176
+ export interface Parameters {
2177
+ /**
2178
+ * The value of properties is an object, where each key is the name of a property
2179
+ * and each value is a schema used to validate that property.
2180
+ */
2181
+ properties: unknown;
2182
+
2183
+ /**
2184
+ * Type must be "object" for a JSON Schema object.
2185
+ */
2186
+ type: 'object';
2187
+
2188
+ /**
2189
+ * List of names of required property when generating this parameter. LLM will do
2190
+ * its best to generate the required properties in its function arguments. Property
2191
+ * must exist in properties.
2192
+ */
2193
+ required?: Array<string>;
2194
+ }
2195
+ }
2196
+
2197
+ export interface CodeTool {
2198
+ /**
2199
+ * JavaScript code to execute in the sandbox.
2200
+ */
2201
+ code: string;
2202
+
2203
+ /**
2204
+ * Name of the tool. Must be unique within all tools available to LLM at any given
2205
+ * time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
2206
+ * 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
2207
+ * allowed).
2208
+ */
2209
+ name: string;
2210
+
2211
+ type: 'code';
2212
+
2213
+ /**
2214
+ * Names of tools that must run before this one.
2215
+ */
2216
+ depends_on?: Array<string>;
2217
+
2218
+ /**
2219
+ * Describes what this tool does and when to call this tool.
2220
+ */
2221
+ description?: string;
2222
+
2223
+ /**
2224
+ * If true, play a typing sound on the agent audio track while this tool is
2225
+ * executing.
2226
+ */
2227
+ enable_typing_sound?: boolean;
2228
+
2229
+ /**
2230
+ * The description for the sentence agent say during execution. Only applicable
2231
+ * when speak_during_execution is true.
2232
+ */
2233
+ execution_message_description?: string;
2234
+
2235
+ /**
2236
+ * Type of execution message. "prompt" means the agent will use
2237
+ * execution_message_description as a prompt to generate the message. "static_text"
2238
+ * means the agent will speak the execution_message_description directly. Defaults
2239
+ * to "prompt".
2240
+ */
2241
+ execution_message_type?: 'prompt' | 'static_text';
2242
+
2243
+ /**
2244
+ * A mapping of variable names to JSON paths in the code execution result. These
2245
+ * mapped values will be extracted and added as dynamic variables.
2246
+ */
2247
+ response_variables?: { [key: string]: string };
2248
+
2249
+ /**
2250
+ * Determines whether the agent would call LLM another time and speak when the
2251
+ * result of function is obtained.
2252
+ */
2253
+ speak_after_execution?: boolean;
2254
+
2255
+ /**
2256
+ * Determines whether the agent would say sentence like "One moment, let me check
2257
+ * that." when executing the tool.
2258
+ */
2259
+ speak_during_execution?: boolean;
2260
+
2261
+ /**
2262
+ * The maximum time in milliseconds the code can run before it's considered
2263
+ * timeout. Defaults to 30,000 ms (30 s).
2264
+ */
2265
+ timeout_ms?: number;
2266
+ }
2267
+
1177
2268
  export interface PronunciationDictionary {
1178
2269
  /**
1179
2270
  * The phonetic alphabet to use. MiniMax speech-02-turbo supports IPA and Pinyin.
@@ -1396,9 +2487,16 @@ export namespace BatchCallCreateBatchCallParams {
1396
2487
  | 'gpt-5.5'
1397
2488
  | 'gpt-5.6-terra'
1398
2489
  | 'gpt-5.6-luna'
2490
+ | 'gpt-6-astra'
2491
+ | 'gpt-6-sol'
2492
+ | 'gpt-6.1-sol'
2493
+ | 'gpt-6-luna'
1399
2494
  | 'claude-4.5-sonnet'
1400
2495
  | 'claude-4.6-sonnet'
2496
+ | 'claude-5-opus'
2497
+ | 'claude-5.5-opus'
1401
2498
  | 'claude-5-sonnet'
2499
+ | 'claude-5.5-sonnet'
1402
2500
  | 'claude-4.5-haiku'
1403
2501
  | 'gemini-3.0-flash'
1404
2502
  | 'gemini-3.1-flash-lite'
@@ -1470,9 +2568,16 @@ export namespace BatchCallCreateBatchCallParams {
1470
2568
  | 'gpt-5.5'
1471
2569
  | 'gpt-5.6-terra'
1472
2570
  | 'gpt-5.6-luna'
2571
+ | 'gpt-6-astra'
2572
+ | 'gpt-6-sol'
2573
+ | 'gpt-6.1-sol'
2574
+ | 'gpt-6-luna'
1473
2575
  | 'claude-4.5-sonnet'
1474
2576
  | 'claude-4.6-sonnet'
2577
+ | 'claude-5-opus'
2578
+ | 'claude-5.5-opus'
1475
2579
  | 'claude-5-sonnet'
2580
+ | 'claude-5.5-sonnet'
1476
2581
  | 'claude-4.5-haiku'
1477
2582
  | 'gemini-3.0-flash'
1478
2583
  | 'gemini-3.1-flash-lite'