retell-sdk 6.0.1 → 6.1.1
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/CHANGELOG.md +24 -0
- package/client.d.mts +2 -2
- package/client.d.mts.map +1 -1
- package/client.d.ts +2 -2
- package/client.d.ts.map +1 -1
- package/client.js.map +1 -1
- package/client.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/agent.d.mts +3222 -526
- package/resources/agent.d.mts.map +1 -1
- package/resources/agent.d.ts +3222 -526
- package/resources/agent.d.ts.map +1 -1
- package/resources/app.d.mts +122 -5
- package/resources/app.d.mts.map +1 -1
- package/resources/app.d.ts +122 -5
- package/resources/app.d.ts.map +1 -1
- package/resources/app.js +17 -1
- package/resources/app.js.map +1 -1
- package/resources/app.mjs +17 -1
- package/resources/app.mjs.map +1 -1
- package/resources/batch-call.d.mts +912 -13
- package/resources/batch-call.d.mts.map +1 -1
- package/resources/batch-call.d.ts +912 -13
- package/resources/batch-call.d.ts.map +1 -1
- package/resources/call.d.mts +7843 -3792
- package/resources/call.d.mts.map +1 -1
- package/resources/call.d.ts +7843 -3792
- package/resources/call.d.ts.map +1 -1
- package/resources/call.js +1 -1
- package/resources/call.mjs +1 -1
- package/resources/chat-agent.d.mts +3125 -453
- package/resources/chat-agent.d.mts.map +1 -1
- package/resources/chat-agent.d.ts +3125 -453
- package/resources/chat-agent.d.ts.map +1 -1
- package/resources/chat.d.mts +892 -26
- package/resources/chat.d.mts.map +1 -1
- package/resources/chat.d.ts +892 -26
- package/resources/chat.d.ts.map +1 -1
- package/resources/contact.d.mts +162 -20
- package/resources/contact.d.mts.map +1 -1
- package/resources/contact.d.ts +162 -20
- package/resources/contact.d.ts.map +1 -1
- package/resources/contact.js +98 -4
- package/resources/contact.js.map +1 -1
- package/resources/contact.mjs +98 -4
- package/resources/contact.mjs.map +1 -1
- package/resources/conversation-flow-component.d.mts +3282 -243
- package/resources/conversation-flow-component.d.mts.map +1 -1
- package/resources/conversation-flow-component.d.ts +3282 -243
- package/resources/conversation-flow-component.d.ts.map +1 -1
- package/resources/conversation-flow.d.mts +7347 -1269
- package/resources/conversation-flow.d.mts.map +1 -1
- package/resources/conversation-flow.d.ts +7347 -1269
- package/resources/conversation-flow.d.ts.map +1 -1
- package/resources/crm.d.mts +37 -5
- package/resources/crm.d.mts.map +1 -1
- package/resources/crm.d.ts +37 -5
- package/resources/crm.d.ts.map +1 -1
- package/resources/identity.d.mts +4 -0
- package/resources/identity.d.mts.map +1 -1
- package/resources/identity.d.ts +4 -0
- package/resources/identity.d.ts.map +1 -1
- package/resources/index.d.mts +1 -1
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +1 -1
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/llm.d.mts +867 -9
- package/resources/llm.d.mts.map +1 -1
- package/resources/llm.d.ts +867 -9
- package/resources/llm.d.ts.map +1 -1
- package/resources/tests.d.mts +3 -3
- package/resources/tests.d.mts.map +1 -1
- package/resources/tests.d.ts +3 -3
- package/resources/tests.d.ts.map +1 -1
- package/src/client.ts +4 -0
- package/src/resources/agent.ts +4786 -1504
- package/src/resources/app.ts +144 -4
- package/src/resources/batch-call.ts +1115 -10
- package/src/resources/call.ts +9825 -4806
- package/src/resources/chat-agent.ts +3958 -698
- package/src/resources/chat.ts +1133 -50
- package/src/resources/contact.ts +168 -20
- package/src/resources/conversation-flow-component.ts +4466 -191
- package/src/resources/conversation-flow.ts +9084 -525
- package/src/resources/crm.ts +44 -5
- package/src/resources/identity.ts +5 -0
- package/src/resources/index.ts +2 -0
- package/src/resources/llm.ts +1045 -46
- package/src/resources/tests.ts +21 -0
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -266,6 +266,14 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
266
266
|
* disable call screen prompt instructions.
|
|
267
267
|
*/
|
|
268
268
|
call_screening_option?: Agent.CallScreeningOption | null;
|
|
269
|
+
/**
|
|
270
|
+
* Contact memory settings for phone calls and SMS chats. Creating an agent
|
|
271
|
+
* defaults enable_update to false and enable_read to true. Updates only change the
|
|
272
|
+
* supplied flags; omitted flags stay unchanged and an empty object has no effect.
|
|
273
|
+
* Set a flag to false to disable it. The configuration cannot be cleared. Existing
|
|
274
|
+
* agents without this configuration have both disabled.
|
|
275
|
+
*/
|
|
276
|
+
contact_memory_config?: Agent.ContactMemoryConfig;
|
|
269
277
|
/**
|
|
270
278
|
* Custom STT configuration. Only used when stt_mode is set to custom.
|
|
271
279
|
*/
|
|
@@ -300,6 +308,13 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
300
308
|
* will not backchannel.
|
|
301
309
|
*/
|
|
302
310
|
enable_backchannel?: boolean;
|
|
311
|
+
/**
|
|
312
|
+
* If set to true, the agent recognizes requests to stop calling or contacting the
|
|
313
|
+
* user, confirms once, and on a clear yes ends the call with disconnection reason
|
|
314
|
+
* user_requested_dnc and sets do_not_call to true on the contact for the user's
|
|
315
|
+
* phone number. If unset, default value false will apply.
|
|
316
|
+
*/
|
|
317
|
+
enable_dnc_detection?: boolean;
|
|
303
318
|
/**
|
|
304
319
|
* If set to true, the agent will dynamically adjust how quickly it responds based
|
|
305
320
|
* on the user's speech rate and past turn-taking behavior in the call. If unset,
|
|
@@ -400,7 +415,23 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
400
415
|
/**
|
|
401
416
|
* The model to use for post call analysis. Default to gpt-5.6-terra.
|
|
402
417
|
*/
|
|
403
|
-
post_call_analysis_model?: 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-5-sonnet' | 'claude-4.5-haiku' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite' | 'gemini-3.5-flash' | 'gemini-3.5-flash-lite' | 'gemini-3.6-flash' | 'gemini-3.7-flash' | 'gemini-3.8-flash' | null;
|
|
418
|
+
post_call_analysis_model?: 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-6-astra' | 'gpt-6-sol' | 'gpt-6.1-sol' | 'gpt-6-luna' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-5-opus' | 'claude-5.5-opus' | 'claude-5-sonnet' | 'claude-5.5-sonnet' | 'claude-4.5-haiku' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite' | 'gemini-3.5-flash' | 'gemini-3.5-flash-lite' | 'gemini-3.6-flash' | 'gemini-3.7-flash' | 'gemini-3.8-flash' | null;
|
|
419
|
+
/**
|
|
420
|
+
* Integration (Agent Functions) tools run as a dependency graph during teardown,
|
|
421
|
+
* after post-call analysis. Each tool can be gated by a condition. On calls the
|
|
422
|
+
* graph is stopped after five minutes so teardown can finish. Set to null to
|
|
423
|
+
* clear.
|
|
424
|
+
*/
|
|
425
|
+
post_session_tools?: Array<Agent.AppTool | Agent.CustomTool | Agent.CodeTool | Agent.SendSMSTool> | null;
|
|
426
|
+
/**
|
|
427
|
+
* Integration (Agent Functions) tools run as a dependency graph during session
|
|
428
|
+
* setup, before the agent's first message. Outputs are injected as dynamic
|
|
429
|
+
* variables. On calls the graph gets one minute unless an outbound caller will be
|
|
430
|
+
* dialed after setup, in which case it gets five minutes. Past that session
|
|
431
|
+
* initialization continues and any remaining tools finish in the background, so
|
|
432
|
+
* their outputs no longer reach the agent's prompt. Set to null to clear.
|
|
433
|
+
*/
|
|
434
|
+
pre_session_tools?: Array<Agent.AppTool | Agent.CustomTool | Agent.CodeTool> | null;
|
|
404
435
|
/**
|
|
405
436
|
* A list of words / phrases and their pronunciation to be used to guide the audio
|
|
406
437
|
* synthesize for consistent pronunciation. Check the dashboard to see what
|
|
@@ -471,11 +502,6 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
471
502
|
* Default to general.
|
|
472
503
|
*/
|
|
473
504
|
vocab_specialization?: 'general' | 'medical';
|
|
474
|
-
/**
|
|
475
|
-
* Controls the emotional tone of the agent's voice. Currently supported for
|
|
476
|
-
* Cartesia and Minimax TTS providers. If unset, no emotion will be used.
|
|
477
|
-
*/
|
|
478
|
-
voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised' | null;
|
|
479
505
|
/**
|
|
480
506
|
* Unique voice id used for the agent. Find list of available voices and their
|
|
481
507
|
* preview in Dashboard.
|
|
@@ -486,7 +512,7 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
486
512
|
* available voice models. Set to null to remove voice model selection, and default
|
|
487
513
|
* ones will apply. Check out dashboard for more details of each voice model.
|
|
488
514
|
*/
|
|
489
|
-
voice_model?: 'eleven_flash_v2' | 'eleven_flash_v2_5' | 'eleven_multilingual_v2' | 'eleven_v3' | 'sonic-3' | 'sonic-3-latest' | 'sonic-3.5' | 'sonic-3.6' | 'tts-1' | 'gpt-4o-mini-tts' | 'speech-02-turbo' | 'speech-2.8-turbo' | 's1' | 's2-pro' | 's2.1-pro' | 'inworld-tts-2' | 'inworld-tts-2-flash' | null;
|
|
515
|
+
voice_model?: 'eleven_flash_v2' | 'eleven_flash_v2_5' | 'eleven_multilingual_v2' | 'eleven_v3' | 'eleven_v4_turbo' | 'sonic-3' | 'sonic-3-latest' | 'sonic-3.5' | 'sonic-3.6' | 'tts-1' | 'gpt-4o-mini-tts' | 'speech-02-turbo' | 'speech-2.8-turbo' | 's1' | 's2-pro' | 's2.1-pro' | 'inworld-tts-2' | 'inworld-tts-2-flash' | null;
|
|
490
516
|
/**
|
|
491
517
|
* Controls speed of voice. Value ranging from [0.5,2]. Lower value means slower
|
|
492
518
|
* speech, while higher value means faster speech rate. If unset, default value 1
|
|
@@ -549,21 +575,43 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
549
575
|
*/
|
|
550
576
|
call_purpose: string;
|
|
551
577
|
}
|
|
578
|
+
/**
|
|
579
|
+
* Contact memory settings for phone calls and SMS chats. Creating an agent
|
|
580
|
+
* defaults enable_update to false and enable_read to true. Updates only change the
|
|
581
|
+
* supplied flags; omitted flags stay unchanged and an empty object has no effect.
|
|
582
|
+
* Set a flag to false to disable it. The configuration cannot be cleared. Existing
|
|
583
|
+
* agents without this configuration have both disabled.
|
|
584
|
+
*/
|
|
585
|
+
interface ContactMemoryConfig {
|
|
586
|
+
/**
|
|
587
|
+
* Automatically add saved contact memory to the agent prompt. Skippable nodes can
|
|
588
|
+
* use answers from the current conversation even when this setting is disabled.
|
|
589
|
+
* Contact dynamic variables, including contact_memory, remain available regardless
|
|
590
|
+
* of this setting.
|
|
591
|
+
*/
|
|
592
|
+
enable_read?: boolean;
|
|
593
|
+
/**
|
|
594
|
+
* Rewrite the contact memory after each conversation. Requires storing
|
|
595
|
+
* conversation data. Chat agents must also have end_chat_after_silence_ms set.
|
|
596
|
+
*/
|
|
597
|
+
enable_update?: boolean;
|
|
598
|
+
}
|
|
552
599
|
/**
|
|
553
600
|
* Custom STT configuration. Only used when stt_mode is set to custom.
|
|
554
601
|
*/
|
|
555
602
|
interface CustomSttConfig {
|
|
556
603
|
/**
|
|
557
604
|
* Endpointing timeout in milliseconds. Minimum is 100 for Azure, 10 for Deepgram,
|
|
558
|
-
* 500 for Soniox, 100 for AssemblyAI. For AssemblyAI, this sets
|
|
559
|
-
* (100-3000 ms). max_turn_silence adds half of this value,
|
|
560
|
-
* millisecond and bounded to 500-1000 ms, with a total cap
|
|
605
|
+
* 500 for Soniox, 100 for AssemblyAI, 100 for Muse. For AssemblyAI, this sets
|
|
606
|
+
* min_turn_silence (100-3000 ms). max_turn_silence adds half of this value,
|
|
607
|
+
* rounded to the nearest millisecond and bounded to 500-1000 ms, with a total cap
|
|
608
|
+
* of 3000 ms. Muse detects turn ends itself and ignores this value.
|
|
561
609
|
*/
|
|
562
610
|
endpointing_ms: number;
|
|
563
611
|
/**
|
|
564
612
|
* ASR provider name.
|
|
565
613
|
*/
|
|
566
|
-
provider: 'azure' | 'deepgram' | 'soniox' | 'assemblyai';
|
|
614
|
+
provider: 'azure' | 'deepgram' | 'soniox' | 'assemblyai' | 'muse';
|
|
567
615
|
}
|
|
568
616
|
/**
|
|
569
617
|
* Configuration for guardrail checks to detect and prevent prohibited topics in
|
|
@@ -800,6 +848,857 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
800
848
|
*/
|
|
801
849
|
required?: boolean;
|
|
802
850
|
}
|
|
851
|
+
interface AppTool {
|
|
852
|
+
/**
|
|
853
|
+
* The connection (App) this tool runs against. Must be a connection in the
|
|
854
|
+
* organization whose provider matches this tool's provider.
|
|
855
|
+
*/
|
|
856
|
+
app_id: string;
|
|
857
|
+
/**
|
|
858
|
+
* Name of the catalog template within the provider, as listed by
|
|
859
|
+
* list-app-templates.
|
|
860
|
+
*/
|
|
861
|
+
app_tool_template_name: string;
|
|
862
|
+
/**
|
|
863
|
+
* Name of the tool. Must be unique within the phase's tools; referenced by
|
|
864
|
+
* depends_on.
|
|
865
|
+
*/
|
|
866
|
+
name: string;
|
|
867
|
+
/**
|
|
868
|
+
* Provider of the connection. Must match the connection's provider; supported
|
|
869
|
+
* providers are listed by list-app-templates.
|
|
870
|
+
*/
|
|
871
|
+
provider: string;
|
|
872
|
+
type: 'integration_app';
|
|
873
|
+
/**
|
|
874
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
875
|
+
* running.
|
|
876
|
+
*/
|
|
877
|
+
condition?: AppTool.Condition;
|
|
878
|
+
/**
|
|
879
|
+
* Names of tools that must run before this one.
|
|
880
|
+
*/
|
|
881
|
+
depends_on?: Array<string>;
|
|
882
|
+
/**
|
|
883
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
884
|
+
* conversation. Overrides the catalog template's LLM-facing description.
|
|
885
|
+
*/
|
|
886
|
+
description?: string;
|
|
887
|
+
/**
|
|
888
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
889
|
+
* conversation. If true, play a typing sound on the agent audio track while this
|
|
890
|
+
* tool is executing. Useful when the tool takes a noticeable amount of time to
|
|
891
|
+
* prevent silence on the call.
|
|
892
|
+
*/
|
|
893
|
+
enable_typing_sound?: boolean;
|
|
894
|
+
/**
|
|
895
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
896
|
+
* conversation. The message for the agent to speak when executing the tool. Only
|
|
897
|
+
* applicable when speak_during_execution is true.
|
|
898
|
+
*/
|
|
899
|
+
execution_message_description?: string;
|
|
900
|
+
/**
|
|
901
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
902
|
+
* conversation. Type of execution message. "prompt" means the agent will use
|
|
903
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
904
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
905
|
+
* to "prompt".
|
|
906
|
+
*/
|
|
907
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
908
|
+
/**
|
|
909
|
+
* What the agent and the transcript see of the tool's response. Omit to send the
|
|
910
|
+
* full response. Does not affect response_variables, which are always extracted
|
|
911
|
+
* from the raw response.
|
|
912
|
+
*/
|
|
913
|
+
output_selection?: AppTool.UnionMember0 | AppTool.UnionMember1;
|
|
914
|
+
/**
|
|
915
|
+
* The resolved input parameters, in order. Properties may pin a value with const
|
|
916
|
+
* (including {{variable}} references) or provide a description for LLM inference.
|
|
917
|
+
* Each property may also record selected*input_mode, the editor mode the user
|
|
918
|
+
* selected ("const_enum", "const_boolean", "const_value", "description_custom", or
|
|
919
|
+
* "description_preset"); it is stored and returned as-is, used only by the tool
|
|
920
|
+
* config UI. Omit the key when no mode is recorded; when set, const*_ modes
|
|
921
|
+
* require a non-empty const, and description\__ modes must omit const entirely.
|
|
922
|
+
* Each parameter's required list must match the schema returned by the
|
|
923
|
+
* corresponding step of the get-app-tool-schema loop.
|
|
924
|
+
*/
|
|
925
|
+
parameters?: Array<AppTool.Parameter>;
|
|
926
|
+
/**
|
|
927
|
+
* Mapping of a dynamic-variable name to the response field (dot-path) it is
|
|
928
|
+
* populated from. Missing paths are ignored.
|
|
929
|
+
*/
|
|
930
|
+
response_variables?: {
|
|
931
|
+
[key: string]: string;
|
|
932
|
+
};
|
|
933
|
+
/**
|
|
934
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
935
|
+
* conversation. Determines whether the agent would call LLM another time and speak
|
|
936
|
+
* when the result of the tool is obtained.
|
|
937
|
+
*/
|
|
938
|
+
speak_after_execution?: boolean;
|
|
939
|
+
/**
|
|
940
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
941
|
+
* conversation. If true, will speak during execution.
|
|
942
|
+
*/
|
|
943
|
+
speak_during_execution?: boolean;
|
|
944
|
+
}
|
|
945
|
+
namespace AppTool {
|
|
946
|
+
/**
|
|
947
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
948
|
+
* running.
|
|
949
|
+
*/
|
|
950
|
+
interface Condition {
|
|
951
|
+
equations: Array<Condition.Equation>;
|
|
952
|
+
operator: '||' | '&&';
|
|
953
|
+
type: 'equation';
|
|
954
|
+
}
|
|
955
|
+
namespace Condition {
|
|
956
|
+
interface Equation {
|
|
957
|
+
/**
|
|
958
|
+
* Left side of the equation
|
|
959
|
+
*/
|
|
960
|
+
left: string;
|
|
961
|
+
operator: '==' | '!=' | '>' | '>=' | '<' | '<=' | 'contains' | 'not_contains' | 'exists' | 'not_exist';
|
|
962
|
+
/**
|
|
963
|
+
* Right side of the equation. The right side of the equation not required when
|
|
964
|
+
* "exists" or "not_exist" are selected.
|
|
965
|
+
*/
|
|
966
|
+
right?: string;
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
interface UnionMember0 {
|
|
970
|
+
mode: 'all';
|
|
971
|
+
/**
|
|
972
|
+
* Not used at runtime; stored and returned as-is for the UI.
|
|
973
|
+
*/
|
|
974
|
+
fields?: Array<string>;
|
|
975
|
+
}
|
|
976
|
+
interface UnionMember1 {
|
|
977
|
+
/**
|
|
978
|
+
* The only response fields the agent and the transcript see, as dot-paths into the
|
|
979
|
+
* response schema returned by get-app-tool-schema. Everything else is dropped.
|
|
980
|
+
* Selecting a parent keeps its whole subtree. A plain segment traverses arrays
|
|
981
|
+
* element-wise (deals.properties.amount keeps that field on every deal), while
|
|
982
|
+
* key[n] selects one element (deals[0].id keeps only the first deal's id); paths
|
|
983
|
+
* that match nothing contribute nothing.
|
|
984
|
+
*/
|
|
985
|
+
fields: Array<string>;
|
|
986
|
+
mode: 'subset';
|
|
987
|
+
}
|
|
988
|
+
/**
|
|
989
|
+
* The parameters the functions accepts, described as a JSON Schema object. See
|
|
990
|
+
* [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
|
|
991
|
+
* documentation about the format. Omitting parameters defines a function with an
|
|
992
|
+
* empty parameter list.
|
|
993
|
+
*/
|
|
994
|
+
interface Parameter {
|
|
995
|
+
/**
|
|
996
|
+
* The value of properties is an object, where each key is the name of a property
|
|
997
|
+
* and each value is a schema used to validate that property.
|
|
998
|
+
*/
|
|
999
|
+
properties: unknown;
|
|
1000
|
+
/**
|
|
1001
|
+
* Type must be "object" for a JSON Schema object.
|
|
1002
|
+
*/
|
|
1003
|
+
type: 'object';
|
|
1004
|
+
/**
|
|
1005
|
+
* List of names of required property when generating this parameter. LLM will do
|
|
1006
|
+
* its best to generate the required properties in its function arguments. Property
|
|
1007
|
+
* must exist in properties.
|
|
1008
|
+
*/
|
|
1009
|
+
required?: Array<string>;
|
|
1010
|
+
}
|
|
1011
|
+
}
|
|
1012
|
+
interface CustomTool {
|
|
1013
|
+
/**
|
|
1014
|
+
* Name of the tool. Must be unique within all tools available to LLM at any given
|
|
1015
|
+
* time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
|
|
1016
|
+
* 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
|
|
1017
|
+
* allowed).
|
|
1018
|
+
*/
|
|
1019
|
+
name: string;
|
|
1020
|
+
type: 'custom';
|
|
1021
|
+
/**
|
|
1022
|
+
* Describes what the tool does, sometimes can also include information about when
|
|
1023
|
+
* to call the tool.
|
|
1024
|
+
*/
|
|
1025
|
+
url: string;
|
|
1026
|
+
/**
|
|
1027
|
+
* If set to true, the parameters will be passed as root level JSON object instead
|
|
1028
|
+
* of nested under "args".
|
|
1029
|
+
*/
|
|
1030
|
+
args_at_root?: boolean;
|
|
1031
|
+
/**
|
|
1032
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
1033
|
+
* running.
|
|
1034
|
+
*/
|
|
1035
|
+
condition?: CustomTool.Condition;
|
|
1036
|
+
/**
|
|
1037
|
+
* Names of tools that must run before this one.
|
|
1038
|
+
*/
|
|
1039
|
+
depends_on?: Array<string>;
|
|
1040
|
+
/**
|
|
1041
|
+
* Describes what this tool does and when to call this tool.
|
|
1042
|
+
*/
|
|
1043
|
+
description?: string;
|
|
1044
|
+
/**
|
|
1045
|
+
* If true, play a typing sound on the agent audio track while this tool is
|
|
1046
|
+
* executing. Useful when the tool takes a noticeable amount of time to prevent
|
|
1047
|
+
* silence on the call.
|
|
1048
|
+
*/
|
|
1049
|
+
enable_typing_sound?: boolean;
|
|
1050
|
+
/**
|
|
1051
|
+
* The description for the sentence agent say during execution. Only applicable
|
|
1052
|
+
* when speak_during_execution is true. Can write what to say or even provide
|
|
1053
|
+
* examples. The default is "The message you will say to callee when calling this
|
|
1054
|
+
* tool. Make sure it fits into the conversation smoothly.".
|
|
1055
|
+
*/
|
|
1056
|
+
execution_message_description?: string;
|
|
1057
|
+
/**
|
|
1058
|
+
* Type of execution message. "prompt" means the agent will use
|
|
1059
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
1060
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
1061
|
+
* to "prompt".
|
|
1062
|
+
*/
|
|
1063
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
1064
|
+
/**
|
|
1065
|
+
* Headers to add to the request.
|
|
1066
|
+
*/
|
|
1067
|
+
headers?: {
|
|
1068
|
+
[key: string]: string;
|
|
1069
|
+
};
|
|
1070
|
+
/**
|
|
1071
|
+
* Maximum number of times to retry the request after a failed attempt, from 0 (no
|
|
1072
|
+
* retry) to 5. Retries happen on any failure, with exponential backoff between
|
|
1073
|
+
* attempts; the backoff delay is not configurable. `timeout_ms` applies per
|
|
1074
|
+
* attempt rather than as a budget across all attempts, so an attempt that times
|
|
1075
|
+
* out is still retried and the worst-case total duration is `timeout_ms`
|
|
1076
|
+
* multiplied by (`max_retry` + 1) as well as any latency incurred by the
|
|
1077
|
+
* exponential backoff + jitter between each retry. Only the final attempt's result
|
|
1078
|
+
* is reported to the agent. Because retries repeat the request, only set this
|
|
1079
|
+
* above 0 if your endpoint is idempotent — a retried request may be processed more
|
|
1080
|
+
* than once. Defaults to 0 (no retry).
|
|
1081
|
+
*/
|
|
1082
|
+
max_retry?: number;
|
|
1083
|
+
/**
|
|
1084
|
+
* Method to use for the request, default to POST.
|
|
1085
|
+
*/
|
|
1086
|
+
method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
1087
|
+
/**
|
|
1088
|
+
* How the tool's `parameters` are authored and shown in the dashboard editor —
|
|
1089
|
+
* "form" for the visual parameter builder, "json" for a raw JSON Schema. Both
|
|
1090
|
+
* produce the same `parameters` schema; this does not change how the request body
|
|
1091
|
+
* is encoded (see `args_at_root`).
|
|
1092
|
+
*/
|
|
1093
|
+
parameter_type?: 'json' | 'form';
|
|
1094
|
+
/**
|
|
1095
|
+
* The parameters the functions accepts, described as a JSON Schema object. See
|
|
1096
|
+
* [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
|
|
1097
|
+
* documentation about the format. Omitting parameters defines a function with an
|
|
1098
|
+
* empty parameter list.
|
|
1099
|
+
*/
|
|
1100
|
+
parameters?: CustomTool.Parameters;
|
|
1101
|
+
/**
|
|
1102
|
+
* Query parameters to append to the request URL.
|
|
1103
|
+
*/
|
|
1104
|
+
query_params?: {
|
|
1105
|
+
[key: string]: string;
|
|
1106
|
+
};
|
|
1107
|
+
/**
|
|
1108
|
+
* A mapping of variable names to JSON paths in the response body. These values
|
|
1109
|
+
* will be extracted from the response and made available as dynamic variables for
|
|
1110
|
+
* use.
|
|
1111
|
+
*/
|
|
1112
|
+
response_variables?: {
|
|
1113
|
+
[key: string]: string;
|
|
1114
|
+
};
|
|
1115
|
+
/**
|
|
1116
|
+
* Determines whether the agent would call LLM another time and speak when the
|
|
1117
|
+
* result of function is obtained. Usually this needs to get turned on so user can
|
|
1118
|
+
* get update for the function call.
|
|
1119
|
+
*/
|
|
1120
|
+
speak_after_execution?: boolean;
|
|
1121
|
+
/**
|
|
1122
|
+
* Determines whether the agent would say sentence like "One moment, let me check
|
|
1123
|
+
* that." when executing the function. Recommend to turn on if your function call
|
|
1124
|
+
* takes over 1s (including network) to complete, so that your agent remains
|
|
1125
|
+
* responsive.
|
|
1126
|
+
*/
|
|
1127
|
+
speak_during_execution?: boolean;
|
|
1128
|
+
/**
|
|
1129
|
+
* The maximum time in milliseconds the tool can run before it's considered
|
|
1130
|
+
* timeout. If the tool times out, the agent would have that info. The minimum
|
|
1131
|
+
* value allowed is 1000 ms (1 s), and maximum value allowed is 600,000 ms (10
|
|
1132
|
+
* min). By default, this is set to 120,000 ms (2 min).
|
|
1133
|
+
*/
|
|
1134
|
+
timeout_ms?: number;
|
|
1135
|
+
}
|
|
1136
|
+
namespace CustomTool {
|
|
1137
|
+
/**
|
|
1138
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
1139
|
+
* running.
|
|
1140
|
+
*/
|
|
1141
|
+
interface Condition {
|
|
1142
|
+
equations: Array<Condition.Equation>;
|
|
1143
|
+
operator: '||' | '&&';
|
|
1144
|
+
type: 'equation';
|
|
1145
|
+
}
|
|
1146
|
+
namespace Condition {
|
|
1147
|
+
interface Equation {
|
|
1148
|
+
/**
|
|
1149
|
+
* Left side of the equation
|
|
1150
|
+
*/
|
|
1151
|
+
left: string;
|
|
1152
|
+
operator: '==' | '!=' | '>' | '>=' | '<' | '<=' | 'contains' | 'not_contains' | 'exists' | 'not_exist';
|
|
1153
|
+
/**
|
|
1154
|
+
* Right side of the equation. The right side of the equation not required when
|
|
1155
|
+
* "exists" or "not_exist" are selected.
|
|
1156
|
+
*/
|
|
1157
|
+
right?: string;
|
|
1158
|
+
}
|
|
1159
|
+
}
|
|
1160
|
+
/**
|
|
1161
|
+
* The parameters the functions accepts, described as a JSON Schema object. See
|
|
1162
|
+
* [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
|
|
1163
|
+
* documentation about the format. Omitting parameters defines a function with an
|
|
1164
|
+
* empty parameter list.
|
|
1165
|
+
*/
|
|
1166
|
+
interface Parameters {
|
|
1167
|
+
/**
|
|
1168
|
+
* The value of properties is an object, where each key is the name of a property
|
|
1169
|
+
* and each value is a schema used to validate that property.
|
|
1170
|
+
*/
|
|
1171
|
+
properties: unknown;
|
|
1172
|
+
/**
|
|
1173
|
+
* Type must be "object" for a JSON Schema object.
|
|
1174
|
+
*/
|
|
1175
|
+
type: 'object';
|
|
1176
|
+
/**
|
|
1177
|
+
* List of names of required property when generating this parameter. LLM will do
|
|
1178
|
+
* its best to generate the required properties in its function arguments. Property
|
|
1179
|
+
* must exist in properties.
|
|
1180
|
+
*/
|
|
1181
|
+
required?: Array<string>;
|
|
1182
|
+
}
|
|
1183
|
+
}
|
|
1184
|
+
interface CodeTool {
|
|
1185
|
+
/**
|
|
1186
|
+
* JavaScript code to execute in the sandbox.
|
|
1187
|
+
*/
|
|
1188
|
+
code: string;
|
|
1189
|
+
/**
|
|
1190
|
+
* Name of the tool. Must be unique within all tools available to LLM at any given
|
|
1191
|
+
* time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
|
|
1192
|
+
* 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
|
|
1193
|
+
* allowed).
|
|
1194
|
+
*/
|
|
1195
|
+
name: string;
|
|
1196
|
+
type: 'code';
|
|
1197
|
+
/**
|
|
1198
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
1199
|
+
* running.
|
|
1200
|
+
*/
|
|
1201
|
+
condition?: CodeTool.Condition;
|
|
1202
|
+
/**
|
|
1203
|
+
* Names of tools that must run before this one.
|
|
1204
|
+
*/
|
|
1205
|
+
depends_on?: Array<string>;
|
|
1206
|
+
/**
|
|
1207
|
+
* Describes what this tool does and when to call this tool.
|
|
1208
|
+
*/
|
|
1209
|
+
description?: string;
|
|
1210
|
+
/**
|
|
1211
|
+
* If true, play a typing sound on the agent audio track while this tool is
|
|
1212
|
+
* executing.
|
|
1213
|
+
*/
|
|
1214
|
+
enable_typing_sound?: boolean;
|
|
1215
|
+
/**
|
|
1216
|
+
* The description for the sentence agent say during execution. Only applicable
|
|
1217
|
+
* when speak_during_execution is true.
|
|
1218
|
+
*/
|
|
1219
|
+
execution_message_description?: string;
|
|
1220
|
+
/**
|
|
1221
|
+
* Type of execution message. "prompt" means the agent will use
|
|
1222
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
1223
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
1224
|
+
* to "prompt".
|
|
1225
|
+
*/
|
|
1226
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
1227
|
+
/**
|
|
1228
|
+
* A mapping of variable names to JSON paths in the code execution result. These
|
|
1229
|
+
* mapped values will be extracted and added as dynamic variables.
|
|
1230
|
+
*/
|
|
1231
|
+
response_variables?: {
|
|
1232
|
+
[key: string]: string;
|
|
1233
|
+
};
|
|
1234
|
+
/**
|
|
1235
|
+
* Determines whether the agent would call LLM another time and speak when the
|
|
1236
|
+
* result of function is obtained.
|
|
1237
|
+
*/
|
|
1238
|
+
speak_after_execution?: boolean;
|
|
1239
|
+
/**
|
|
1240
|
+
* Determines whether the agent would say sentence like "One moment, let me check
|
|
1241
|
+
* that." when executing the tool.
|
|
1242
|
+
*/
|
|
1243
|
+
speak_during_execution?: boolean;
|
|
1244
|
+
/**
|
|
1245
|
+
* The maximum time in milliseconds the code can run before it's considered
|
|
1246
|
+
* timeout. Defaults to 30,000 ms (30 s).
|
|
1247
|
+
*/
|
|
1248
|
+
timeout_ms?: number;
|
|
1249
|
+
}
|
|
1250
|
+
namespace CodeTool {
|
|
1251
|
+
/**
|
|
1252
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
1253
|
+
* running.
|
|
1254
|
+
*/
|
|
1255
|
+
interface Condition {
|
|
1256
|
+
equations: Array<Condition.Equation>;
|
|
1257
|
+
operator: '||' | '&&';
|
|
1258
|
+
type: 'equation';
|
|
1259
|
+
}
|
|
1260
|
+
namespace Condition {
|
|
1261
|
+
interface Equation {
|
|
1262
|
+
/**
|
|
1263
|
+
* Left side of the equation
|
|
1264
|
+
*/
|
|
1265
|
+
left: string;
|
|
1266
|
+
operator: '==' | '!=' | '>' | '>=' | '<' | '<=' | 'contains' | 'not_contains' | 'exists' | 'not_exist';
|
|
1267
|
+
/**
|
|
1268
|
+
* Right side of the equation. The right side of the equation not required when
|
|
1269
|
+
* "exists" or "not_exist" are selected.
|
|
1270
|
+
*/
|
|
1271
|
+
right?: string;
|
|
1272
|
+
}
|
|
1273
|
+
}
|
|
1274
|
+
}
|
|
1275
|
+
interface SendSMSTool {
|
|
1276
|
+
/**
|
|
1277
|
+
* Name of the tool. Must be unique within all tools available to LLM at any given
|
|
1278
|
+
* time (general tools + state tools + state edges).
|
|
1279
|
+
*/
|
|
1280
|
+
name: string;
|
|
1281
|
+
sms_content: SendSMSTool.SMSContentPredefined | SendSMSTool.SMSContentInferred | SendSMSTool.SMSContentTemplate;
|
|
1282
|
+
type: 'send_sms';
|
|
1283
|
+
/**
|
|
1284
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
1285
|
+
* running.
|
|
1286
|
+
*/
|
|
1287
|
+
condition?: SendSMSTool.Condition;
|
|
1288
|
+
/**
|
|
1289
|
+
* Names of tools that must run before this one.
|
|
1290
|
+
*/
|
|
1291
|
+
depends_on?: Array<string>;
|
|
1292
|
+
/**
|
|
1293
|
+
* Describes what the tool does, sometimes can also include information about when
|
|
1294
|
+
* to call the tool.
|
|
1295
|
+
*/
|
|
1296
|
+
description?: string;
|
|
1297
|
+
/**
|
|
1298
|
+
* Describes what to say before sending the SMS. Only applicable when
|
|
1299
|
+
* speak_during_execution is true.
|
|
1300
|
+
*/
|
|
1301
|
+
execution_message_description?: string;
|
|
1302
|
+
/**
|
|
1303
|
+
* Type of execution message. "prompt" means the agent will use
|
|
1304
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
1305
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
1306
|
+
* to "prompt".
|
|
1307
|
+
*/
|
|
1308
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
1309
|
+
/**
|
|
1310
|
+
* If true, the agent will speak a short line before sending the SMS. If omitted,
|
|
1311
|
+
* defaults to true (same as end_call / transfer_call tools).
|
|
1312
|
+
*/
|
|
1313
|
+
speak_during_execution?: boolean;
|
|
1314
|
+
}
|
|
1315
|
+
namespace SendSMSTool {
|
|
1316
|
+
interface SMSContentPredefined {
|
|
1317
|
+
/**
|
|
1318
|
+
* The static message to be sent in the SMS. Can contain dynamic variables.
|
|
1319
|
+
*/
|
|
1320
|
+
text?: string;
|
|
1321
|
+
type?: 'predefined';
|
|
1322
|
+
}
|
|
1323
|
+
interface SMSContentInferred {
|
|
1324
|
+
/**
|
|
1325
|
+
* The prompt to be used to help infer the SMS content. The model will take the
|
|
1326
|
+
* global prompt, the call transcript, and this prompt together to deduce the right
|
|
1327
|
+
* message to send. Can contain dynamic variables.
|
|
1328
|
+
*/
|
|
1329
|
+
prompt?: string;
|
|
1330
|
+
type?: 'inferred';
|
|
1331
|
+
}
|
|
1332
|
+
interface SMSContentTemplate {
|
|
1333
|
+
/**
|
|
1334
|
+
* The template to use for the SMS content. "info_collection" sends a predefined
|
|
1335
|
+
* message requesting information from the user.
|
|
1336
|
+
*/
|
|
1337
|
+
template: 'info_collection';
|
|
1338
|
+
type: 'template';
|
|
1339
|
+
}
|
|
1340
|
+
/**
|
|
1341
|
+
* Optional gate; the step only runs when the condition holds. Defaults to always
|
|
1342
|
+
* running.
|
|
1343
|
+
*/
|
|
1344
|
+
interface Condition {
|
|
1345
|
+
equations: Array<Condition.Equation>;
|
|
1346
|
+
operator: '||' | '&&';
|
|
1347
|
+
type: 'equation';
|
|
1348
|
+
}
|
|
1349
|
+
namespace Condition {
|
|
1350
|
+
interface Equation {
|
|
1351
|
+
/**
|
|
1352
|
+
* Left side of the equation
|
|
1353
|
+
*/
|
|
1354
|
+
left: string;
|
|
1355
|
+
operator: '==' | '!=' | '>' | '>=' | '<' | '<=' | 'contains' | 'not_contains' | 'exists' | 'not_exist';
|
|
1356
|
+
/**
|
|
1357
|
+
* Right side of the equation. The right side of the equation not required when
|
|
1358
|
+
* "exists" or "not_exist" are selected.
|
|
1359
|
+
*/
|
|
1360
|
+
right?: string;
|
|
1361
|
+
}
|
|
1362
|
+
}
|
|
1363
|
+
}
|
|
1364
|
+
interface AppTool {
|
|
1365
|
+
/**
|
|
1366
|
+
* The connection (App) this tool runs against. Must be a connection in the
|
|
1367
|
+
* organization whose provider matches this tool's provider.
|
|
1368
|
+
*/
|
|
1369
|
+
app_id: string;
|
|
1370
|
+
/**
|
|
1371
|
+
* Name of the catalog template within the provider, as listed by
|
|
1372
|
+
* list-app-templates.
|
|
1373
|
+
*/
|
|
1374
|
+
app_tool_template_name: string;
|
|
1375
|
+
/**
|
|
1376
|
+
* Name of the tool. Must be unique within the phase's tools; referenced by
|
|
1377
|
+
* depends_on.
|
|
1378
|
+
*/
|
|
1379
|
+
name: string;
|
|
1380
|
+
/**
|
|
1381
|
+
* Provider of the connection. Must match the connection's provider; supported
|
|
1382
|
+
* providers are listed by list-app-templates.
|
|
1383
|
+
*/
|
|
1384
|
+
provider: string;
|
|
1385
|
+
type: 'integration_app';
|
|
1386
|
+
/**
|
|
1387
|
+
* Names of tools that must run before this one.
|
|
1388
|
+
*/
|
|
1389
|
+
depends_on?: Array<string>;
|
|
1390
|
+
/**
|
|
1391
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
1392
|
+
* conversation. Overrides the catalog template's LLM-facing description.
|
|
1393
|
+
*/
|
|
1394
|
+
description?: string;
|
|
1395
|
+
/**
|
|
1396
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
1397
|
+
* conversation. If true, play a typing sound on the agent audio track while this
|
|
1398
|
+
* tool is executing. Useful when the tool takes a noticeable amount of time to
|
|
1399
|
+
* prevent silence on the call.
|
|
1400
|
+
*/
|
|
1401
|
+
enable_typing_sound?: boolean;
|
|
1402
|
+
/**
|
|
1403
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
1404
|
+
* conversation. The message for the agent to speak when executing the tool. Only
|
|
1405
|
+
* applicable when speak_during_execution is true.
|
|
1406
|
+
*/
|
|
1407
|
+
execution_message_description?: string;
|
|
1408
|
+
/**
|
|
1409
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
1410
|
+
* conversation. Type of execution message. "prompt" means the agent will use
|
|
1411
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
1412
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
1413
|
+
* to "prompt".
|
|
1414
|
+
*/
|
|
1415
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
1416
|
+
/**
|
|
1417
|
+
* What the agent and the transcript see of the tool's response. Omit to send the
|
|
1418
|
+
* full response. Does not affect response_variables, which are always extracted
|
|
1419
|
+
* from the raw response.
|
|
1420
|
+
*/
|
|
1421
|
+
output_selection?: AppTool.UnionMember0 | AppTool.UnionMember1;
|
|
1422
|
+
/**
|
|
1423
|
+
* The resolved input parameters, in order. Properties may pin a value with const
|
|
1424
|
+
* (including {{variable}} references) or provide a description for LLM inference.
|
|
1425
|
+
* Each property may also record selected*input_mode, the editor mode the user
|
|
1426
|
+
* selected ("const_enum", "const_boolean", "const_value", "description_custom", or
|
|
1427
|
+
* "description_preset"); it is stored and returned as-is, used only by the tool
|
|
1428
|
+
* config UI. Omit the key when no mode is recorded; when set, const*_ modes
|
|
1429
|
+
* require a non-empty const, and description\__ modes must omit const entirely.
|
|
1430
|
+
* Each parameter's required list must match the schema returned by the
|
|
1431
|
+
* corresponding step of the get-app-tool-schema loop.
|
|
1432
|
+
*/
|
|
1433
|
+
parameters?: Array<AppTool.Parameter>;
|
|
1434
|
+
/**
|
|
1435
|
+
* Mapping of a dynamic-variable name to the response field (dot-path) it is
|
|
1436
|
+
* populated from. Missing paths are ignored.
|
|
1437
|
+
*/
|
|
1438
|
+
response_variables?: {
|
|
1439
|
+
[key: string]: string;
|
|
1440
|
+
};
|
|
1441
|
+
/**
|
|
1442
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
1443
|
+
* conversation. Determines whether the agent would call LLM another time and speak
|
|
1444
|
+
* when the result of the tool is obtained.
|
|
1445
|
+
*/
|
|
1446
|
+
speak_after_execution?: boolean;
|
|
1447
|
+
/**
|
|
1448
|
+
* Only applies to during conversation functions; ignored by the pre/post
|
|
1449
|
+
* conversation. If true, will speak during execution.
|
|
1450
|
+
*/
|
|
1451
|
+
speak_during_execution?: boolean;
|
|
1452
|
+
}
|
|
1453
|
+
namespace AppTool {
|
|
1454
|
+
interface UnionMember0 {
|
|
1455
|
+
mode: 'all';
|
|
1456
|
+
/**
|
|
1457
|
+
* Not used at runtime; stored and returned as-is for the UI.
|
|
1458
|
+
*/
|
|
1459
|
+
fields?: Array<string>;
|
|
1460
|
+
}
|
|
1461
|
+
interface UnionMember1 {
|
|
1462
|
+
/**
|
|
1463
|
+
* The only response fields the agent and the transcript see, as dot-paths into the
|
|
1464
|
+
* response schema returned by get-app-tool-schema. Everything else is dropped.
|
|
1465
|
+
* Selecting a parent keeps its whole subtree. A plain segment traverses arrays
|
|
1466
|
+
* element-wise (deals.properties.amount keeps that field on every deal), while
|
|
1467
|
+
* key[n] selects one element (deals[0].id keeps only the first deal's id); paths
|
|
1468
|
+
* that match nothing contribute nothing.
|
|
1469
|
+
*/
|
|
1470
|
+
fields: Array<string>;
|
|
1471
|
+
mode: 'subset';
|
|
1472
|
+
}
|
|
1473
|
+
/**
|
|
1474
|
+
* The parameters the functions accepts, described as a JSON Schema object. See
|
|
1475
|
+
* [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
|
|
1476
|
+
* documentation about the format. Omitting parameters defines a function with an
|
|
1477
|
+
* empty parameter list.
|
|
1478
|
+
*/
|
|
1479
|
+
interface Parameter {
|
|
1480
|
+
/**
|
|
1481
|
+
* The value of properties is an object, where each key is the name of a property
|
|
1482
|
+
* and each value is a schema used to validate that property.
|
|
1483
|
+
*/
|
|
1484
|
+
properties: unknown;
|
|
1485
|
+
/**
|
|
1486
|
+
* Type must be "object" for a JSON Schema object.
|
|
1487
|
+
*/
|
|
1488
|
+
type: 'object';
|
|
1489
|
+
/**
|
|
1490
|
+
* List of names of required property when generating this parameter. LLM will do
|
|
1491
|
+
* its best to generate the required properties in its function arguments. Property
|
|
1492
|
+
* must exist in properties.
|
|
1493
|
+
*/
|
|
1494
|
+
required?: Array<string>;
|
|
1495
|
+
}
|
|
1496
|
+
}
|
|
1497
|
+
interface CustomTool {
|
|
1498
|
+
/**
|
|
1499
|
+
* Name of the tool. Must be unique within all tools available to LLM at any given
|
|
1500
|
+
* time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
|
|
1501
|
+
* 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
|
|
1502
|
+
* allowed).
|
|
1503
|
+
*/
|
|
1504
|
+
name: string;
|
|
1505
|
+
type: 'custom';
|
|
1506
|
+
/**
|
|
1507
|
+
* Describes what the tool does, sometimes can also include information about when
|
|
1508
|
+
* to call the tool.
|
|
1509
|
+
*/
|
|
1510
|
+
url: string;
|
|
1511
|
+
/**
|
|
1512
|
+
* If set to true, the parameters will be passed as root level JSON object instead
|
|
1513
|
+
* of nested under "args".
|
|
1514
|
+
*/
|
|
1515
|
+
args_at_root?: boolean;
|
|
1516
|
+
/**
|
|
1517
|
+
* Names of tools that must run before this one.
|
|
1518
|
+
*/
|
|
1519
|
+
depends_on?: Array<string>;
|
|
1520
|
+
/**
|
|
1521
|
+
* Describes what this tool does and when to call this tool.
|
|
1522
|
+
*/
|
|
1523
|
+
description?: string;
|
|
1524
|
+
/**
|
|
1525
|
+
* If true, play a typing sound on the agent audio track while this tool is
|
|
1526
|
+
* executing. Useful when the tool takes a noticeable amount of time to prevent
|
|
1527
|
+
* silence on the call.
|
|
1528
|
+
*/
|
|
1529
|
+
enable_typing_sound?: boolean;
|
|
1530
|
+
/**
|
|
1531
|
+
* The description for the sentence agent say during execution. Only applicable
|
|
1532
|
+
* when speak_during_execution is true. Can write what to say or even provide
|
|
1533
|
+
* examples. The default is "The message you will say to callee when calling this
|
|
1534
|
+
* tool. Make sure it fits into the conversation smoothly.".
|
|
1535
|
+
*/
|
|
1536
|
+
execution_message_description?: string;
|
|
1537
|
+
/**
|
|
1538
|
+
* Type of execution message. "prompt" means the agent will use
|
|
1539
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
1540
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
1541
|
+
* to "prompt".
|
|
1542
|
+
*/
|
|
1543
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
1544
|
+
/**
|
|
1545
|
+
* Headers to add to the request.
|
|
1546
|
+
*/
|
|
1547
|
+
headers?: {
|
|
1548
|
+
[key: string]: string;
|
|
1549
|
+
};
|
|
1550
|
+
/**
|
|
1551
|
+
* Maximum number of times to retry the request after a failed attempt, from 0 (no
|
|
1552
|
+
* retry) to 5. Retries happen on any failure, with exponential backoff between
|
|
1553
|
+
* attempts; the backoff delay is not configurable. `timeout_ms` applies per
|
|
1554
|
+
* attempt rather than as a budget across all attempts, so an attempt that times
|
|
1555
|
+
* out is still retried and the worst-case total duration is `timeout_ms`
|
|
1556
|
+
* multiplied by (`max_retry` + 1) as well as any latency incurred by the
|
|
1557
|
+
* exponential backoff + jitter between each retry. Only the final attempt's result
|
|
1558
|
+
* is reported to the agent. Because retries repeat the request, only set this
|
|
1559
|
+
* above 0 if your endpoint is idempotent — a retried request may be processed more
|
|
1560
|
+
* than once. Defaults to 0 (no retry).
|
|
1561
|
+
*/
|
|
1562
|
+
max_retry?: number;
|
|
1563
|
+
/**
|
|
1564
|
+
* Method to use for the request, default to POST.
|
|
1565
|
+
*/
|
|
1566
|
+
method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
1567
|
+
/**
|
|
1568
|
+
* How the tool's `parameters` are authored and shown in the dashboard editor —
|
|
1569
|
+
* "form" for the visual parameter builder, "json" for a raw JSON Schema. Both
|
|
1570
|
+
* produce the same `parameters` schema; this does not change how the request body
|
|
1571
|
+
* is encoded (see `args_at_root`).
|
|
1572
|
+
*/
|
|
1573
|
+
parameter_type?: 'json' | 'form';
|
|
1574
|
+
/**
|
|
1575
|
+
* The parameters the functions accepts, described as a JSON Schema object. See
|
|
1576
|
+
* [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
|
|
1577
|
+
* documentation about the format. Omitting parameters defines a function with an
|
|
1578
|
+
* empty parameter list.
|
|
1579
|
+
*/
|
|
1580
|
+
parameters?: CustomTool.Parameters;
|
|
1581
|
+
/**
|
|
1582
|
+
* Query parameters to append to the request URL.
|
|
1583
|
+
*/
|
|
1584
|
+
query_params?: {
|
|
1585
|
+
[key: string]: string;
|
|
1586
|
+
};
|
|
1587
|
+
/**
|
|
1588
|
+
* A mapping of variable names to JSON paths in the response body. These values
|
|
1589
|
+
* will be extracted from the response and made available as dynamic variables for
|
|
1590
|
+
* use.
|
|
1591
|
+
*/
|
|
1592
|
+
response_variables?: {
|
|
1593
|
+
[key: string]: string;
|
|
1594
|
+
};
|
|
1595
|
+
/**
|
|
1596
|
+
* Determines whether the agent would call LLM another time and speak when the
|
|
1597
|
+
* result of function is obtained. Usually this needs to get turned on so user can
|
|
1598
|
+
* get update for the function call.
|
|
1599
|
+
*/
|
|
1600
|
+
speak_after_execution?: boolean;
|
|
1601
|
+
/**
|
|
1602
|
+
* Determines whether the agent would say sentence like "One moment, let me check
|
|
1603
|
+
* that." when executing the function. Recommend to turn on if your function call
|
|
1604
|
+
* takes over 1s (including network) to complete, so that your agent remains
|
|
1605
|
+
* responsive.
|
|
1606
|
+
*/
|
|
1607
|
+
speak_during_execution?: boolean;
|
|
1608
|
+
/**
|
|
1609
|
+
* The maximum time in milliseconds the tool can run before it's considered
|
|
1610
|
+
* timeout. If the tool times out, the agent would have that info. The minimum
|
|
1611
|
+
* value allowed is 1000 ms (1 s), and maximum value allowed is 600,000 ms (10
|
|
1612
|
+
* min). By default, this is set to 120,000 ms (2 min).
|
|
1613
|
+
*/
|
|
1614
|
+
timeout_ms?: number;
|
|
1615
|
+
}
|
|
1616
|
+
namespace CustomTool {
|
|
1617
|
+
/**
|
|
1618
|
+
* The parameters the functions accepts, described as a JSON Schema object. See
|
|
1619
|
+
* [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for
|
|
1620
|
+
* documentation about the format. Omitting parameters defines a function with an
|
|
1621
|
+
* empty parameter list.
|
|
1622
|
+
*/
|
|
1623
|
+
interface Parameters {
|
|
1624
|
+
/**
|
|
1625
|
+
* The value of properties is an object, where each key is the name of a property
|
|
1626
|
+
* and each value is a schema used to validate that property.
|
|
1627
|
+
*/
|
|
1628
|
+
properties: unknown;
|
|
1629
|
+
/**
|
|
1630
|
+
* Type must be "object" for a JSON Schema object.
|
|
1631
|
+
*/
|
|
1632
|
+
type: 'object';
|
|
1633
|
+
/**
|
|
1634
|
+
* List of names of required property when generating this parameter. LLM will do
|
|
1635
|
+
* its best to generate the required properties in its function arguments. Property
|
|
1636
|
+
* must exist in properties.
|
|
1637
|
+
*/
|
|
1638
|
+
required?: Array<string>;
|
|
1639
|
+
}
|
|
1640
|
+
}
|
|
1641
|
+
interface CodeTool {
|
|
1642
|
+
/**
|
|
1643
|
+
* JavaScript code to execute in the sandbox.
|
|
1644
|
+
*/
|
|
1645
|
+
code: string;
|
|
1646
|
+
/**
|
|
1647
|
+
* Name of the tool. Must be unique within all tools available to LLM at any given
|
|
1648
|
+
* time (general tools + state tools + state edges). Must be consisted of a-z, A-Z,
|
|
1649
|
+
* 0-9, or contain underscores and dashes, with a maximum length of 64 (no space
|
|
1650
|
+
* allowed).
|
|
1651
|
+
*/
|
|
1652
|
+
name: string;
|
|
1653
|
+
type: 'code';
|
|
1654
|
+
/**
|
|
1655
|
+
* Names of tools that must run before this one.
|
|
1656
|
+
*/
|
|
1657
|
+
depends_on?: Array<string>;
|
|
1658
|
+
/**
|
|
1659
|
+
* Describes what this tool does and when to call this tool.
|
|
1660
|
+
*/
|
|
1661
|
+
description?: string;
|
|
1662
|
+
/**
|
|
1663
|
+
* If true, play a typing sound on the agent audio track while this tool is
|
|
1664
|
+
* executing.
|
|
1665
|
+
*/
|
|
1666
|
+
enable_typing_sound?: boolean;
|
|
1667
|
+
/**
|
|
1668
|
+
* The description for the sentence agent say during execution. Only applicable
|
|
1669
|
+
* when speak_during_execution is true.
|
|
1670
|
+
*/
|
|
1671
|
+
execution_message_description?: string;
|
|
1672
|
+
/**
|
|
1673
|
+
* Type of execution message. "prompt" means the agent will use
|
|
1674
|
+
* execution_message_description as a prompt to generate the message. "static_text"
|
|
1675
|
+
* means the agent will speak the execution_message_description directly. Defaults
|
|
1676
|
+
* to "prompt".
|
|
1677
|
+
*/
|
|
1678
|
+
execution_message_type?: 'prompt' | 'static_text';
|
|
1679
|
+
/**
|
|
1680
|
+
* A mapping of variable names to JSON paths in the code execution result. These
|
|
1681
|
+
* mapped values will be extracted and added as dynamic variables.
|
|
1682
|
+
*/
|
|
1683
|
+
response_variables?: {
|
|
1684
|
+
[key: string]: string;
|
|
1685
|
+
};
|
|
1686
|
+
/**
|
|
1687
|
+
* Determines whether the agent would call LLM another time and speak when the
|
|
1688
|
+
* result of function is obtained.
|
|
1689
|
+
*/
|
|
1690
|
+
speak_after_execution?: boolean;
|
|
1691
|
+
/**
|
|
1692
|
+
* Determines whether the agent would say sentence like "One moment, let me check
|
|
1693
|
+
* that." when executing the tool.
|
|
1694
|
+
*/
|
|
1695
|
+
speak_during_execution?: boolean;
|
|
1696
|
+
/**
|
|
1697
|
+
* The maximum time in milliseconds the code can run before it's considered
|
|
1698
|
+
* timeout. Defaults to 30,000 ms (30 s).
|
|
1699
|
+
*/
|
|
1700
|
+
timeout_ms?: number;
|
|
1701
|
+
}
|
|
803
1702
|
interface PronunciationDictionary {
|
|
804
1703
|
/**
|
|
805
1704
|
* The phonetic alphabet to use. MiniMax speech-02-turbo supports IPA and Pinyin.
|
|
@@ -972,7 +1871,7 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
972
1871
|
/**
|
|
973
1872
|
* The LLM model to use
|
|
974
1873
|
*/
|
|
975
|
-
model: 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-5-sonnet' | 'claude-4.5-haiku' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite' | 'gemini-3.5-flash' | 'gemini-3.5-flash-lite' | 'gemini-3.6-flash' | 'gemini-3.7-flash' | 'gemini-3.8-flash';
|
|
1874
|
+
model: 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-6-astra' | 'gpt-6-sol' | 'gpt-6.1-sol' | 'gpt-6-luna' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-5-opus' | 'claude-5.5-opus' | 'claude-5-sonnet' | 'claude-5.5-sonnet' | 'claude-4.5-haiku' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite' | 'gemini-3.5-flash' | 'gemini-3.5-flash-lite' | 'gemini-3.6-flash' | 'gemini-3.7-flash' | 'gemini-3.8-flash';
|
|
976
1875
|
/**
|
|
977
1876
|
* Type of model choice
|
|
978
1877
|
*/
|
|
@@ -1014,7 +1913,7 @@ export declare namespace BatchCallCreateBatchCallParams {
|
|
|
1014
1913
|
/**
|
|
1015
1914
|
* Select the underlying text LLM. If not set, would default to gpt-5.6-terra.
|
|
1016
1915
|
*/
|
|
1017
|
-
model?: 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-5-sonnet' | 'claude-4.5-haiku' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite' | 'gemini-3.5-flash' | 'gemini-3.5-flash-lite' | 'gemini-3.6-flash' | 'gemini-3.7-flash' | 'gemini-3.8-flash' | null;
|
|
1916
|
+
model?: 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-6-astra' | 'gpt-6-sol' | 'gpt-6.1-sol' | 'gpt-6-luna' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-5-opus' | 'claude-5.5-opus' | 'claude-5-sonnet' | 'claude-5.5-sonnet' | 'claude-4.5-haiku' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite' | 'gemini-3.5-flash' | 'gemini-3.5-flash-lite' | 'gemini-3.6-flash' | 'gemini-3.7-flash' | 'gemini-3.8-flash' | null;
|
|
1018
1917
|
/**
|
|
1019
1918
|
* If set to true, will use high priority pool with more dedicated resource to
|
|
1020
1919
|
* ensure lower and more consistent latency, default to false. This feature usually
|