hume 0.13.4 → 0.13.5

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 (46) hide show
  1. package/api/resources/empathicVoice/types/SessionSettings.d.ts +2 -0
  2. package/api/resources/tts/types/SnippetAudioChunk.d.ts +5 -0
  3. package/dist/api/resources/empathicVoice/types/SessionSettings.d.ts +2 -0
  4. package/dist/api/resources/tts/types/SnippetAudioChunk.d.ts +5 -0
  5. package/dist/serialization/resources/empathicVoice/types/SessionSettings.d.ts +1 -0
  6. package/dist/serialization/resources/empathicVoice/types/SessionSettings.js +1 -0
  7. package/dist/serialization/resources/tts/types/SnippetAudioChunk.d.ts +1 -0
  8. package/dist/serialization/resources/tts/types/SnippetAudioChunk.js +1 -0
  9. package/dist/version.d.ts +1 -1
  10. package/dist/version.js +1 -1
  11. package/dist/wrapper/SilenceFiller.d.ts +85 -0
  12. package/dist/wrapper/SilenceFiller.js +203 -0
  13. package/dist/wrapper/collate.d.ts +36 -0
  14. package/dist/wrapper/collate.js +126 -0
  15. package/dist/wrapper/index.d.ts +2 -0
  16. package/dist/wrapper/index.js +5 -1
  17. package/package.json +1 -1
  18. package/serialization/resources/empathicVoice/types/SessionSettings.d.ts +1 -0
  19. package/serialization/resources/empathicVoice/types/SessionSettings.js +1 -0
  20. package/serialization/resources/tts/types/SnippetAudioChunk.d.ts +1 -0
  21. package/serialization/resources/tts/types/SnippetAudioChunk.js +1 -0
  22. package/version.d.ts +1 -1
  23. package/version.js +1 -1
  24. package/wrapper/SilenceFiller.d.ts +85 -0
  25. package/wrapper/SilenceFiller.js +203 -0
  26. package/wrapper/collate.d.ts +36 -0
  27. package/wrapper/collate.js +126 -0
  28. package/wrapper/index.d.ts +2 -0
  29. package/wrapper/index.js +5 -1
  30. package/.mock/definition/api.yml +0 -12
  31. package/.mock/definition/empathic-voice/__package__.yml +0 -2971
  32. package/.mock/definition/empathic-voice/chat.yml +0 -175
  33. package/.mock/definition/empathic-voice/chatGroups.yml +0 -627
  34. package/.mock/definition/empathic-voice/chatWebhooks.yml +0 -30
  35. package/.mock/definition/empathic-voice/chats.yml +0 -506
  36. package/.mock/definition/empathic-voice/configs.yml +0 -842
  37. package/.mock/definition/empathic-voice/prompts.yml +0 -558
  38. package/.mock/definition/empathic-voice/tools.yml +0 -626
  39. package/.mock/definition/expression-measurement/__package__.yml +0 -1
  40. package/.mock/definition/expression-measurement/batch/__package__.yml +0 -1803
  41. package/.mock/definition/expression-measurement/stream/__package__.yml +0 -113
  42. package/.mock/definition/expression-measurement/stream/stream.yml +0 -438
  43. package/.mock/definition/tts/__package__.yml +0 -709
  44. package/.mock/definition/tts/streamInput.yml +0 -56
  45. package/.mock/definition/tts/voices.yml +0 -143
  46. package/.mock/fern.config.json +0 -4
@@ -1,2971 +0,0 @@
1
- errors:
2
- BadRequestError:
3
- status-code: 400
4
- type: ErrorResponse
5
- docs: Bad Request
6
- examples:
7
- - value: {}
8
- types:
9
- AssistantInput:
10
- docs: When provided, the input is spoken by EVI.
11
- properties:
12
- type:
13
- type: literal<"assistant_input">
14
- docs: >-
15
- The type of message sent through the socket; must be `assistant_input`
16
- for our server to correctly identify and process it as an Assistant
17
- Input message.
18
- custom_session_id:
19
- type: optional<string>
20
- docs: >-
21
- Used to manage conversational state, correlate frontend and backend
22
- data, and persist conversations across EVI sessions.
23
- text:
24
- type: string
25
- docs: >-
26
- Assistant text to synthesize into spoken audio and insert into the
27
- conversation.
28
-
29
-
30
- EVI uses this text to generate spoken audio using our proprietary
31
- expressive text-to-speech model. Our model adds appropriate emotional
32
- inflections and tones to the text based on the user's expressions and
33
- the context of the conversation. The synthesized audio is streamed
34
- back to the user as an [Assistant
35
- Message](/reference/speech-to-speech-evi/chat#receive.AssistantMessage).
36
- source:
37
- openapi: evi-asyncapi.json
38
- AudioConfiguration:
39
- properties:
40
- encoding:
41
- type: Encoding
42
- docs: Encoding format of the audio input, such as `linear16`.
43
- channels:
44
- type: integer
45
- docs: Number of audio channels.
46
- sample_rate:
47
- type: integer
48
- docs: >-
49
- Audio sample rate. Number of samples per second in the audio input,
50
- measured in Hertz.
51
- source:
52
- openapi: evi-asyncapi.json
53
- AudioInput:
54
- docs: When provided, the input is audio.
55
- properties:
56
- type:
57
- type: literal<"audio_input">
58
- docs: >-
59
- The type of message sent through the socket; must be `audio_input` for
60
- our server to correctly identify and process it as an Audio Input
61
- message.
62
-
63
-
64
- This message is used for sending audio input data to EVI for
65
- processing and expression measurement. Audio data should be sent as a
66
- continuous stream, encoded in Base64.
67
- custom_session_id:
68
- type: optional<string>
69
- docs: >-
70
- Used to manage conversational state, correlate frontend and backend
71
- data, and persist conversations across EVI sessions.
72
- data:
73
- type: string
74
- docs: >-
75
- Base64 encoded audio input to insert into the conversation.
76
-
77
-
78
- The content of an Audio Input message is treated as the user's speech
79
- to EVI and must be streamed continuously. Pre-recorded audio files are
80
- not supported.
81
-
82
-
83
- For optimal transcription quality, the audio data should be
84
- transmitted in small chunks.
85
-
86
-
87
- Hume recommends streaming audio with a buffer window of 20
88
- milliseconds (ms), or 100 milliseconds (ms) for web applications.
89
- source:
90
- openapi: evi-asyncapi.json
91
- BuiltInTool:
92
- enum:
93
- - web_search
94
- - hang_up
95
- docs: >-
96
- Name of the built-in tool. Set to `web_search` to equip EVI with the
97
- built-in Web Search tool.
98
- source:
99
- openapi: evi-asyncapi.json
100
- BuiltinToolConfig:
101
- properties:
102
- name:
103
- type: BuiltInTool
104
- fallback_content:
105
- type: optional<string>
106
- docs: >-
107
- Optional text passed to the supplemental LLM if the tool call fails.
108
- The LLM then uses this text to generate a response back to the user,
109
- ensuring continuity in the conversation.
110
- source:
111
- openapi: evi-asyncapi.json
112
- Context:
113
- properties:
114
- type:
115
- type: optional<ContextType>
116
- docs: >-
117
- The persistence level of the injected context. Specifies how long the
118
- injected context will remain active in the session.
119
-
120
-
121
- - **Temporary**: Context that is only applied to the following
122
- assistant response.
123
-
124
-
125
- - **Persistent**: Context that is applied to all subsequent assistant
126
- responses for the remainder of the Chat.
127
- text:
128
- type: string
129
- docs: >-
130
- The context to be injected into the conversation. Helps inform the
131
- LLM's response by providing relevant information about the ongoing
132
- conversation.
133
-
134
-
135
- This text will be appended to the end of
136
- [user_messages](/reference/speech-to-speech-evi/chat#receive.UserMessage.message.content)
137
- based on the chosen persistence level. For example, if you want to
138
- remind EVI of its role as a helpful weather assistant, the context you
139
- insert will be appended to the end of user messages as `{Context: You
140
- are a helpful weather assistant}`.
141
- source:
142
- openapi: evi-asyncapi.json
143
- ContextType:
144
- enum:
145
- - persistent
146
- - temporary
147
- source:
148
- openapi: evi-asyncapi.json
149
- Encoding:
150
- type: literal<"linear16">
151
- ErrorLevel:
152
- type: literal<"warn">
153
- PauseAssistantMessage:
154
- docs: >-
155
- Pause responses from EVI. Chat history is still saved and sent after
156
- resuming.
157
- properties:
158
- type:
159
- type: literal<"pause_assistant_message">
160
- docs: >-
161
- The type of message sent through the socket; must be
162
- `pause_assistant_message` for our server to correctly identify and
163
- process it as a Pause Assistant message.
164
-
165
-
166
- Once this message is sent, EVI will not respond until a [Resume
167
- Assistant
168
- message](/reference/speech-to-speech-evi/chat#send.ResumeAssistantMessage)
169
- is sent. When paused, EVI won't respond, but transcriptions of your
170
- audio inputs will still be recorded.
171
- custom_session_id:
172
- type: optional<string>
173
- docs: >-
174
- Used to manage conversational state, correlate frontend and backend
175
- data, and persist conversations across EVI sessions.
176
- source:
177
- openapi: evi-asyncapi.json
178
- ResumeAssistantMessage:
179
- docs: >-
180
- Resume responses from EVI. Chat history sent while paused will now be
181
- sent.
182
- properties:
183
- type:
184
- type: literal<"resume_assistant_message">
185
- docs: >-
186
- The type of message sent through the socket; must be
187
- `resume_assistant_message` for our server to correctly identify and
188
- process it as a Resume Assistant message.
189
-
190
-
191
- Upon resuming, if any audio input was sent during the pause, EVI will
192
- retain context from all messages sent but only respond to the last
193
- user message. (e.g., If you ask EVI two questions while paused and
194
- then send a `resume_assistant_message`, EVI will respond to the second
195
- question and have added the first question to its conversation
196
- context.)
197
- custom_session_id:
198
- type: optional<string>
199
- docs: >-
200
- Used to manage conversational state, correlate frontend and backend
201
- data, and persist conversations across EVI sessions.
202
- source:
203
- openapi: evi-asyncapi.json
204
- SessionSettingsVariablesValue:
205
- discriminated: false
206
- union:
207
- - string
208
- - double
209
- - boolean
210
- source:
211
- openapi: evi-asyncapi.json
212
- inline: true
213
- SessionSettings:
214
- docs: Settings for this chat session.
215
- properties:
216
- type:
217
- type: literal<"session_settings">
218
- docs: >-
219
- The type of message sent through the socket; must be
220
- `session_settings` for our server to correctly identify and process it
221
- as a Session Settings message.
222
-
223
-
224
- Session settings are temporary and apply only to the current Chat
225
- session. These settings can be adjusted dynamically based on the
226
- requirements of each session to ensure optimal performance and user
227
- experience.
228
-
229
-
230
- For more information, please refer to the [Session Settings
231
- guide](/docs/speech-to-speech-evi/configuration/session-settings).
232
- custom_session_id:
233
- type: optional<string>
234
- docs: >-
235
- Unique identifier for the session. Used to manage conversational
236
- state, correlate frontend and backend data, and persist conversations
237
- across EVI sessions.
238
-
239
-
240
- If included, the response sent from Hume to your backend will include
241
- this ID. This allows you to correlate frontend users with their
242
- incoming messages.
243
-
244
-
245
- It is recommended to pass a `custom_session_id` if you are using a
246
- Custom Language Model. Please see our guide to [using a custom
247
- language
248
- model](/docs/speech-to-speech-evi/guides/custom-language-model) with
249
- EVI to learn more.
250
- system_prompt:
251
- type: optional<string>
252
- docs: >-
253
- Instructions used to shape EVI's behavior, responses, and style for
254
- the session.
255
-
256
-
257
- When included in a Session Settings message, the provided Prompt
258
- overrides the existing one specified in the EVI configuration. If no
259
- Prompt was defined in the configuration, this Prompt will be the one
260
- used for the session.
261
-
262
-
263
- You can use the Prompt to define a specific goal or role for EVI,
264
- specifying how it should act or what it should focus on during the
265
- conversation. For example, EVI can be instructed to act as a customer
266
- support representative, a fitness coach, or a travel advisor, each
267
- with its own set of behaviors and response styles.
268
-
269
-
270
- For help writing a system prompt, see our [Prompting
271
- Guide](/docs/speech-to-speech-evi/guides/prompting).
272
- context:
273
- type: optional<Context>
274
- docs: >-
275
- Field for injecting additional context into the conversation, which is
276
- appended to the end of user messages for the session.
277
-
278
-
279
- When included in a Session Settings message, the provided context can
280
- be used to remind the LLM of its role in every user message, prevent
281
- it from forgetting important details, or add new relevant information
282
- to the conversation.
283
-
284
-
285
- Set to `null` to clear injected context.
286
- audio:
287
- type: optional<AudioConfiguration>
288
- docs: >-
289
- Configuration details for the audio input used during the session.
290
- Ensures the audio is being correctly set up for processing.
291
-
292
-
293
- This optional field is only required when the audio input is encoded
294
- in PCM Linear 16 (16-bit, little-endian, signed PCM WAV data). For
295
- detailed instructions on how to configure session settings for PCM
296
- Linear 16 audio, please refer to the [Session Settings
297
- guide](/docs/speech-to-speech-evi/configuration/session-settings).
298
- language_model_api_key:
299
- type: optional<string>
300
- docs: >-
301
- Third party API key for the supplemental language model.
302
-
303
-
304
- When provided, EVI will use this key instead of Hume's API key for the
305
- supplemental LLM. This allows you to bypass rate limits and utilize
306
- your own API key as needed.
307
- tools:
308
- type: optional<list<Tool>>
309
- docs: >-
310
- List of user-defined tools to enable for the session.
311
-
312
-
313
- Tools are resources used by EVI to perform various tasks, such as
314
- searching the web or calling external APIs. Built-in tools, like web
315
- search, are natively integrated, while user-defined tools are created
316
- and invoked by the user. To learn more, see our [Tool Use
317
- Guide](/docs/speech-to-speech-evi/features/tool-use).
318
- builtin_tools:
319
- type: optional<list<BuiltinToolConfig>>
320
- docs: >-
321
- List of built-in tools to enable for the session.
322
-
323
-
324
- Tools are resources used by EVI to perform various tasks, such as
325
- searching the web or calling external APIs. Built-in tools, like web
326
- search, are natively integrated, while user-defined tools are created
327
- and invoked by the user. To learn more, see our [Tool Use
328
- Guide](/docs/speech-to-speech-evi/features/tool-use).
329
-
330
-
331
- Currently, the only built-in tool Hume provides is **Web Search**.
332
- When enabled, Web Search equips EVI with the ability to search the web
333
- for up-to-date information.
334
- metadata:
335
- type: optional<map<string, unknown>>
336
- variables:
337
- type: optional<map<string, SessionSettingsVariablesValue>>
338
- docs: >-
339
- This field allows you to assign values to dynamic variables referenced
340
- in your system prompt.
341
-
342
-
343
- Each key represents the variable name, and the corresponding value is
344
- the specific content you wish to assign to that variable within the
345
- session. While the values for variables can be strings, numbers, or
346
- booleans, the value will ultimately be converted to a string when
347
- injected into your system prompt.
348
-
349
-
350
- Using this field, you can personalize responses based on
351
- session-specific details. For more guidance, see our [guide on using
352
- dynamic
353
- variables](/docs/speech-to-speech-evi/features/dynamic-variables).
354
- source:
355
- openapi: evi-asyncapi.json
356
- Tool:
357
- properties:
358
- type:
359
- type: ToolType
360
- docs: Type of tool. Set to `function` for user-defined tools.
361
- name:
362
- type: string
363
- docs: Name of the user-defined tool to be enabled.
364
- parameters:
365
- type: string
366
- docs: >-
367
- Parameters of the tool. Is a stringified JSON schema.
368
-
369
-
370
- These parameters define the inputs needed for the tool's execution,
371
- including the expected data type and description for each input field.
372
- Structured as a JSON schema, this format ensures the tool receives
373
- data in the expected format.
374
- description:
375
- type: optional<string>
376
- docs: >-
377
- An optional description of what the tool does, used by the
378
- supplemental LLM to choose when and how to call the function.
379
- fallback_content:
380
- type: optional<string>
381
- docs: >-
382
- Optional text passed to the supplemental LLM if the tool call fails.
383
- The LLM then uses this text to generate a response back to the user,
384
- ensuring continuity in the conversation.
385
- source:
386
- openapi: evi-asyncapi.json
387
- ToolErrorMessage:
388
- docs: When provided, the output is a function call error.
389
- properties:
390
- type:
391
- type: literal<"tool_error">
392
- docs: >-
393
- The type of message sent through the socket; for a Tool Error message,
394
- this must be `tool_error`.
395
-
396
-
397
- Upon receiving a [Tool Call
398
- message](/reference/speech-to-speech-evi/chat#receive.ToolCallMessage)
399
- and failing to invoke the function, this message is sent to notify EVI
400
- of the tool's failure.
401
- custom_session_id:
402
- type: optional<string>
403
- docs: >-
404
- Used to manage conversational state, correlate frontend and backend
405
- data, and persist conversations across EVI sessions.
406
- tool_type:
407
- type: optional<ToolType>
408
- docs: >-
409
- Type of tool called. Either `builtin` for natively implemented tools,
410
- like web search, or `function` for user-defined tools.
411
- tool_call_id:
412
- type: string
413
- docs: >-
414
- The unique identifier for a specific tool call instance.
415
-
416
-
417
- This ID is used to track the request and response of a particular tool
418
- invocation, ensuring that the Tool Error message is linked to the
419
- appropriate tool call request. The specified `tool_call_id` must match
420
- the one received in the [Tool Call
421
- message](/reference/speech-to-speech-evi/chat#receive.ToolCallMessage).
422
- content:
423
- type: optional<string>
424
- docs: >-
425
- Optional text passed to the supplemental LLM in place of the tool call
426
- result. The LLM then uses this text to generate a response back to the
427
- user, ensuring continuity in the conversation if the tool errors.
428
- error:
429
- type: string
430
- docs: Error message from the tool call, not exposed to the LLM or user.
431
- code:
432
- type: optional<string>
433
- docs: Error code. Identifies the type of error encountered.
434
- level:
435
- type: optional<ErrorLevel>
436
- docs: >-
437
- Indicates the severity of an error; for a Tool Error message, this
438
- must be `warn` to signal an unexpected event.
439
- source:
440
- openapi: evi-asyncapi.json
441
- ToolResponseMessage:
442
- docs: When provided, the output is a function call response.
443
- properties:
444
- type:
445
- type: literal<"tool_response">
446
- docs: >-
447
- The type of message sent through the socket; for a Tool Response
448
- message, this must be `tool_response`.
449
-
450
-
451
- Upon receiving a [Tool Call
452
- message](/reference/speech-to-speech-evi/chat#receive.ToolCallMessage)
453
- and successfully invoking the function, this message is sent to convey
454
- the result of the function call back to EVI.
455
- custom_session_id:
456
- type: optional<string>
457
- docs: >-
458
- Used to manage conversational state, correlate frontend and backend
459
- data, and persist conversations across EVI sessions.
460
- tool_call_id:
461
- type: string
462
- docs: >-
463
- The unique identifier for a specific tool call instance.
464
-
465
-
466
- This ID is used to track the request and response of a particular tool
467
- invocation, ensuring that the correct response is linked to the
468
- appropriate request. The specified `tool_call_id` must match the one
469
- received in the [Tool Call
470
- message](/reference/speech-to-speech-evi/chat#receive.ToolCallMessage.tool_call_id).
471
- content:
472
- type: string
473
- docs: >-
474
- Return value of the tool call. Contains the output generated by the
475
- tool to pass back to EVI.
476
- tool_name:
477
- type: optional<string>
478
- docs: >-
479
- Name of the tool.
480
-
481
-
482
- Include this optional field to help the supplemental LLM identify
483
- which tool generated the response. The specified `tool_name` must
484
- match the one received in the [Tool Call
485
- message](/reference/speech-to-speech-evi/chat#receive.ToolCallMessage).
486
- tool_type:
487
- type: optional<ToolType>
488
- docs: >-
489
- Type of tool called. Either `builtin` for natively implemented tools,
490
- like web search, or `function` for user-defined tools.
491
- source:
492
- openapi: evi-asyncapi.json
493
- ToolType:
494
- enum:
495
- - builtin
496
- - function
497
- source:
498
- openapi: evi-asyncapi.json
499
- UserInput:
500
- docs: >-
501
- User text to insert into the conversation. Text sent through a User Input
502
- message is treated as the user's speech to EVI. EVI processes this input
503
- and provides a corresponding response.
504
-
505
-
506
- Expression measurement results are not available for User Input messages,
507
- as the prosody model relies on audio input and cannot process text alone.
508
- properties:
509
- type:
510
- type: literal<"user_input">
511
- docs: >-
512
- The type of message sent through the socket; must be `user_input` for
513
- our server to correctly identify and process it as a User Input
514
- message.
515
- custom_session_id:
516
- type: optional<string>
517
- docs: >-
518
- Used to manage conversational state, correlate frontend and backend
519
- data, and persist conversations across EVI sessions.
520
- text:
521
- type: string
522
- docs: >-
523
- User text to insert into the conversation. Text sent through a User
524
- Input message is treated as the user's speech to EVI. EVI processes
525
- this input and provides a corresponding response.
526
-
527
-
528
- Expression measurement results are not available for User Input
529
- messages, as the prosody model relies on audio input and cannot
530
- process text alone.
531
- source:
532
- openapi: evi-asyncapi.json
533
- AssistantEnd:
534
- docs: When provided, the output is an assistant end message.
535
- properties:
536
- type:
537
- type: literal<"assistant_end">
538
- docs: >-
539
- The type of message sent through the socket; for an Assistant End
540
- message, this must be `assistant_end`.
541
-
542
-
543
- This message indicates the conclusion of the assistant's response,
544
- signaling that the assistant has finished speaking for the current
545
- conversational turn.
546
- custom_session_id:
547
- type: optional<string>
548
- docs: >-
549
- Used to manage conversational state, correlate frontend and backend
550
- data, and persist conversations across EVI sessions.
551
- source:
552
- openapi: evi-asyncapi.json
553
- AssistantMessage:
554
- docs: When provided, the output is an assistant message.
555
- properties:
556
- type:
557
- type: literal<"assistant_message">
558
- docs: >-
559
- The type of message sent through the socket; for an Assistant Message,
560
- this must be `assistant_message`.
561
-
562
-
563
- This message contains both a transcript of the assistant's response
564
- and the expression measurement predictions of the assistant's audio
565
- output.
566
- custom_session_id:
567
- type: optional<string>
568
- docs: >-
569
- Used to manage conversational state, correlate frontend and backend
570
- data, and persist conversations across EVI sessions.
571
- id:
572
- type: optional<string>
573
- docs: >-
574
- ID of the assistant message. Allows the Assistant Message to be
575
- tracked and referenced.
576
- message:
577
- type: ChatMessage
578
- docs: Transcript of the message.
579
- models:
580
- type: Inference
581
- docs: Inference model results.
582
- from_text:
583
- type: boolean
584
- docs: >-
585
- Indicates if this message was inserted into the conversation as text
586
- from an [Assistant Input
587
- message](/reference/speech-to-speech-evi/chat#send.AssistantInput.text).
588
- source:
589
- openapi: evi-asyncapi.json
590
- AssistantProsody:
591
- docs: When provided, the output is an Assistant Prosody message.
592
- properties:
593
- type:
594
- type: literal<"assistant_prosody">
595
- docs: >-
596
- The type of message sent through the socket; for an Assistant Prosody
597
- message, this must be `assistant_PROSODY`.
598
-
599
-
600
- This message the expression measurement predictions of the assistant's
601
- audio output.
602
- custom_session_id:
603
- type: optional<string>
604
- docs: >-
605
- Used to manage conversational state, correlate frontend and backend
606
- data, and persist conversations across EVI sessions.
607
- models:
608
- type: Inference
609
- docs: Inference model results.
610
- id:
611
- type: optional<string>
612
- docs: Unique identifier for the segment.
613
- source:
614
- openapi: evi-asyncapi.json
615
- AudioOutput:
616
- docs: >-
617
- The type of message sent through the socket; for an Audio Output message,
618
- this must be `audio_output`.
619
- properties:
620
- type:
621
- type: literal<"audio_output">
622
- docs: >-
623
- The type of message sent through the socket; for an Audio Output
624
- message, this must be `audio_output`.
625
- custom_session_id:
626
- type: optional<string>
627
- docs: >-
628
- Used to manage conversational state, correlate frontend and backend
629
- data, and persist conversations across EVI sessions.
630
- id:
631
- type: string
632
- docs: >-
633
- ID of the audio output. Allows the Audio Output message to be tracked
634
- and referenced.
635
- index:
636
- type: integer
637
- docs: Index of the chunk of audio relative to the whole audio segment.
638
- data:
639
- type: string
640
- docs: >-
641
- Base64 encoded audio output. This encoded audio is transmitted to the
642
- client, where it can be decoded and played back as part of the user
643
- interaction.
644
- source:
645
- openapi: evi-asyncapi.json
646
- ChatMessageToolResult:
647
- discriminated: false
648
- docs: Function call response from client.
649
- union:
650
- - type: ToolResponseMessage
651
- - type: ToolErrorMessage
652
- source:
653
- openapi: evi-asyncapi.json
654
- inline: true
655
- ChatMessage:
656
- properties:
657
- role:
658
- type: Role
659
- docs: Role of who is providing the message.
660
- content:
661
- type: optional<string>
662
- docs: Transcript of the message.
663
- tool_call:
664
- type: optional<ToolCallMessage>
665
- docs: Function call name and arguments.
666
- tool_result:
667
- type: optional<ChatMessageToolResult>
668
- docs: Function call response from client.
669
- source:
670
- openapi: evi-asyncapi.json
671
- ChatMetadata:
672
- docs: When provided, the output is a chat metadata message.
673
- properties:
674
- type:
675
- type: literal<"chat_metadata">
676
- docs: >-
677
- The type of message sent through the socket; for a Chat Metadata
678
- message, this must be `chat_metadata`.
679
-
680
-
681
- The Chat Metadata message is the first message you receive after
682
- establishing a connection with EVI and contains important identifiers
683
- for the current Chat session.
684
- custom_session_id:
685
- type: optional<string>
686
- docs: >-
687
- Used to manage conversational state, correlate frontend and backend
688
- data, and persist conversations across EVI sessions.
689
- chat_group_id:
690
- type: string
691
- docs: >-
692
- ID of the Chat Group.
693
-
694
-
695
- Used to resume a Chat when passed in the
696
- [resumed_chat_group_id](/reference/speech-to-speech-evi/chat#request.query.resumed_chat_group_id)
697
- query parameter of a subsequent connection request. This allows EVI to
698
- continue the conversation from where it left off within the Chat
699
- Group.
700
-
701
-
702
- Learn more about [supporting chat
703
- resumability](/docs/speech-to-speech-evi/faq#does-evi-support-chat-resumability)
704
- from the EVI FAQ.
705
- chat_id:
706
- type: string
707
- docs: >-
708
- ID of the Chat session. Allows the Chat session to be tracked and
709
- referenced.
710
- request_id:
711
- type: optional<string>
712
- docs: ID of the initiating request.
713
- source:
714
- openapi: evi-asyncapi.json
715
- EmotionScores:
716
- properties:
717
- Admiration: double
718
- Adoration: double
719
- Aesthetic Appreciation: double
720
- Amusement: double
721
- Anger: double
722
- Anxiety: double
723
- Awe: double
724
- Awkwardness: double
725
- Boredom: double
726
- Calmness: double
727
- Concentration: double
728
- Confusion: double
729
- Contemplation: double
730
- Contempt: double
731
- Contentment: double
732
- Craving: double
733
- Desire: double
734
- Determination: double
735
- Disappointment: double
736
- Disgust: double
737
- Distress: double
738
- Doubt: double
739
- Ecstasy: double
740
- Embarrassment: double
741
- Empathic Pain: double
742
- Entrancement: double
743
- Envy: double
744
- Excitement: double
745
- Fear: double
746
- Guilt: double
747
- Horror: double
748
- Interest: double
749
- Joy: double
750
- Love: double
751
- Nostalgia: double
752
- Pain: double
753
- Pride: double
754
- Realization: double
755
- Relief: double
756
- Romance: double
757
- Sadness: double
758
- Satisfaction: double
759
- Shame: double
760
- Surprise (negative): double
761
- Surprise (positive): double
762
- Sympathy: double
763
- Tiredness: double
764
- Triumph: double
765
- source:
766
- openapi: evi-asyncapi.json
767
- WebSocketError:
768
- docs: When provided, the output is an error message.
769
- properties:
770
- type:
771
- type: literal<"error">
772
- docs: >-
773
- The type of message sent through the socket; for a Web Socket Error
774
- message, this must be `error`.
775
-
776
-
777
- This message indicates a disruption in the WebSocket connection, such
778
- as an unexpected disconnection, protocol error, or data transmission
779
- issue.
780
- custom_session_id:
781
- type: optional<string>
782
- docs: >-
783
- Used to manage conversational state, correlate frontend and backend
784
- data, and persist conversations across EVI sessions.
785
- code:
786
- type: string
787
- docs: Error code. Identifies the type of error encountered.
788
- slug:
789
- type: string
790
- docs: >-
791
- Short, human-readable identifier and description for the error. See a
792
- complete list of error slugs on the [Errors
793
- page](/docs/resources/errors).
794
- message:
795
- type: string
796
- docs: Detailed description of the error.
797
- request_id:
798
- type: optional<string>
799
- docs: ID of the initiating request.
800
- source:
801
- openapi: evi-asyncapi.json
802
- Inference:
803
- properties:
804
- prosody:
805
- type: optional<ProsodyInference>
806
- docs: >-
807
- Prosody model inference results.
808
-
809
-
810
- EVI uses the prosody model to measure 48 emotions related to speech
811
- and vocal characteristics within a given expression.
812
- source:
813
- openapi: evi-asyncapi.json
814
- MillisecondInterval:
815
- properties:
816
- begin:
817
- type: integer
818
- docs: Start time of the interval in milliseconds.
819
- end:
820
- type: integer
821
- docs: End time of the interval in milliseconds.
822
- source:
823
- openapi: evi-asyncapi.json
824
- ProsodyInference:
825
- properties:
826
- scores:
827
- type: EmotionScores
828
- docs: >-
829
- The confidence scores for 48 emotions within the detected expression
830
- of an audio sample.
831
-
832
-
833
- Scores typically range from 0 to 1, with higher values indicating a
834
- stronger confidence level in the measured attribute.
835
-
836
-
837
- See our guide on [interpreting expression measurement
838
- results](/docs/expression-measurement/faq#how-do-i-interpret-my-results)
839
- to learn more.
840
- source:
841
- openapi: evi-asyncapi.json
842
- Role:
843
- enum:
844
- - assistant
845
- - system
846
- - user
847
- - all
848
- - tool
849
- source:
850
- openapi: evi-asyncapi.json
851
- ToolCallMessage:
852
- docs: When provided, the output is a tool call.
853
- properties:
854
- name:
855
- type: string
856
- docs: Name of the tool called.
857
- parameters:
858
- type: string
859
- docs: >-
860
- Parameters of the tool.
861
-
862
-
863
- These parameters define the inputs needed for the tool's execution,
864
- including the expected data type and description for each input field.
865
- Structured as a stringified JSON schema, this format ensures the tool
866
- receives data in the expected format.
867
- tool_call_id:
868
- type: string
869
- docs: >-
870
- The unique identifier for a specific tool call instance.
871
-
872
-
873
- This ID is used to track the request and response of a particular tool
874
- invocation, ensuring that the correct response is linked to the
875
- appropriate request.
876
- type:
877
- type: literal<"tool_call">
878
- docs: >-
879
- The type of message sent through the socket; for a Tool Call message,
880
- this must be `tool_call`.
881
-
882
-
883
- This message indicates that the supplemental LLM has detected a need
884
- to invoke the specified tool.
885
- custom_session_id:
886
- type: optional<string>
887
- docs: >-
888
- Used to manage conversational state, correlate frontend and backend
889
- data, and persist conversations across EVI sessions.
890
- tool_type:
891
- type: optional<ToolType>
892
- docs: >-
893
- Type of tool called. Either `builtin` for natively implemented tools,
894
- like web search, or `function` for user-defined tools.
895
- response_required:
896
- type: boolean
897
- docs: >-
898
- Indicates whether a response to the tool call is required from the
899
- developer, either in the form of a [Tool Response
900
- message](/reference/speech-to-speech-evi/chat#send.ToolResponseMessage)
901
- or a [Tool Error
902
- message](/reference/speech-to-speech-evi/chat#send.ToolErrorMessage).
903
- source:
904
- openapi: evi-asyncapi.json
905
- UserInterruption:
906
- docs: When provided, the output is an interruption.
907
- properties:
908
- type:
909
- type: literal<"user_interruption">
910
- docs: >-
911
- The type of message sent through the socket; for a User Interruption
912
- message, this must be `user_interruption`.
913
-
914
-
915
- This message indicates the user has interrupted the assistant's
916
- response. EVI detects the interruption in real-time and sends this
917
- message to signal the interruption event. This message allows the
918
- system to stop the current audio playback, clear the audio queue, and
919
- prepare to handle new user input.
920
- custom_session_id:
921
- type: optional<string>
922
- docs: >-
923
- Used to manage conversational state, correlate frontend and backend
924
- data, and persist conversations across EVI sessions.
925
- time:
926
- type: integer
927
- docs: Unix timestamp of the detected user interruption.
928
- source:
929
- openapi: evi-asyncapi.json
930
- UserMessage:
931
- docs: When provided, the output is a user message.
932
- properties:
933
- type:
934
- type: literal<"user_message">
935
- docs: >-
936
- The type of message sent through the socket; for a User Message, this
937
- must be `user_message`.
938
-
939
-
940
- This message contains both a transcript of the user's input and the
941
- expression measurement predictions if the input was sent as an [Audio
942
- Input message](/reference/speech-to-speech-evi/chat#send.AudioInput).
943
- Expression measurement predictions are not provided for a [User Input
944
- message](/reference/speech-to-speech-evi/chat#send.UserInput), as the
945
- prosody model relies on audio input and cannot process text alone.
946
- custom_session_id:
947
- type: optional<string>
948
- docs: >-
949
- Used to manage conversational state, correlate frontend and backend
950
- data, and persist conversations across EVI sessions.
951
- message:
952
- type: ChatMessage
953
- docs: Transcript of the message.
954
- models:
955
- type: Inference
956
- docs: Inference model results.
957
- time:
958
- type: MillisecondInterval
959
- docs: Start and End time of user message.
960
- from_text:
961
- type: boolean
962
- docs: >-
963
- Indicates if this message was inserted into the conversation as text
964
- from a [User
965
- Input](/reference/speech-to-speech-evi/chat#send.UserInput.text)
966
- message.
967
- interim:
968
- type: boolean
969
- docs: >-
970
- Indicates whether this `UserMessage` contains an interim (unfinalized)
971
- transcript.
972
-
973
-
974
- - `true`: the transcript is provisional; words may be repeated or
975
- refined in subsequent `UserMessage` responses as additional audio is
976
- processed.
977
-
978
- - `false`: the transcript is final and complete.
979
-
980
-
981
- Interim transcripts are only sent when the
982
- [`verbose_transcription`](/reference/speech-to-speech-evi/chat#request.query.verbose_transcription)
983
- query parameter is set to `true` in the initial handshake.
984
- source:
985
- openapi: evi-asyncapi.json
986
- JsonMessage:
987
- discriminated: false
988
- union:
989
- - type: AssistantEnd
990
- - type: AssistantMessage
991
- - type: AssistantProsody
992
- - type: ChatMetadata
993
- - type: WebSocketError
994
- - type: UserInterruption
995
- - type: UserMessage
996
- - type: ToolCallMessage
997
- - type: ToolResponseMessage
998
- - type: ToolErrorMessage
999
- source:
1000
- openapi: evi-asyncapi.json
1001
- HTTPValidationError:
1002
- properties:
1003
- detail:
1004
- type: optional<list<ValidationError>>
1005
- source:
1006
- openapi: evi-openapi.json
1007
- LanguageModelType:
1008
- enum:
1009
- - value: claude-3-7-sonnet-latest
1010
- name: Claude37SonnetLatest
1011
- - value: claude-3-5-sonnet-latest
1012
- name: Claude35SonnetLatest
1013
- - value: claude-3-5-haiku-latest
1014
- name: Claude35HaikuLatest
1015
- - value: claude-3-5-sonnet-20240620
1016
- name: Claude35Sonnet20240620
1017
- - value: claude-3-opus-20240229
1018
- name: Claude3Opus20240229
1019
- - value: claude-3-sonnet-20240229
1020
- name: Claude3Sonnet20240229
1021
- - value: claude-3-haiku-20240307
1022
- name: Claude3Haiku20240307
1023
- - value: claude-sonnet-4-20250514
1024
- name: ClaudeSonnet420250514
1025
- - value: us.anthropic.claude-3-5-haiku-20241022-v1:0
1026
- name: UsAnthropicClaude35Haiku20241022V10
1027
- - value: us.anthropic.claude-3-5-sonnet-20240620-v1:0
1028
- name: UsAnthropicClaude35Sonnet20240620V10
1029
- - value: us.anthropic.claude-3-haiku-20240307-v1:0
1030
- name: UsAnthropicClaude3Haiku20240307V10
1031
- - value: gpt-oss-120b
1032
- name: GptOss120B
1033
- - value: qwen-3-235b-a22b
1034
- name: Qwen3235BA22B
1035
- - value: qwen-3-235b-a22b-instruct-2507
1036
- name: Qwen3235BA22BInstruct2507
1037
- - value: qwen-3-235b-a22b-thinking-2507
1038
- name: Qwen3235BA22BThinking2507
1039
- - value: gemini-1.5-pro
1040
- name: Gemini15Pro
1041
- - value: gemini-1.5-flash
1042
- name: Gemini15Flash
1043
- - value: gemini-1.5-pro-002
1044
- name: Gemini15Pro002
1045
- - value: gemini-1.5-flash-002
1046
- name: Gemini15Flash002
1047
- - value: gemini-2.0-flash
1048
- name: Gemini20Flash
1049
- - value: gemini-2.5-flash
1050
- name: Gemini25Flash
1051
- - value: gemini-2.5-flash-preview-04-17
1052
- name: Gemini25FlashPreview0417
1053
- - value: gpt-4-turbo
1054
- name: Gpt4Turbo
1055
- - value: gpt-4-turbo-preview
1056
- name: Gpt4TurboPreview
1057
- - value: gpt-3.5-turbo-0125
1058
- name: Gpt35Turbo0125
1059
- - value: gpt-3.5-turbo
1060
- name: Gpt35Turbo
1061
- - value: gpt-4o
1062
- name: Gpt4O
1063
- - value: gpt-4o-mini
1064
- name: Gpt4OMini
1065
- - value: gpt-4.1
1066
- name: Gpt41
1067
- - value: gpt-5
1068
- name: Gpt5
1069
- - value: gpt-5-mini
1070
- name: Gpt5Mini
1071
- - value: gpt-5-nano
1072
- name: Gpt5Nano
1073
- - value: gemma-7b-it
1074
- name: Gemma7BIt
1075
- - value: llama3-8b-8192
1076
- name: Llama38B8192
1077
- - value: llama3-70b-8192
1078
- name: Llama370B8192
1079
- - value: llama-3.1-70b-versatile
1080
- name: Llama3170BVersatile
1081
- - value: llama-3.3-70b-versatile
1082
- name: Llama3370BVersatile
1083
- - value: llama-3.1-8b-instant
1084
- name: Llama318BInstant
1085
- - value: moonshotai/kimi-k2-instruct
1086
- name: MoonshotaiKimiK2Instruct
1087
- - value: accounts/fireworks/models/mixtral-8x7b-instruct
1088
- name: AccountsFireworksModelsMixtral8X7BInstruct
1089
- - value: accounts/fireworks/models/llama-v3p1-405b-instruct
1090
- name: AccountsFireworksModelsLlamaV3P1405BInstruct
1091
- - value: accounts/fireworks/models/llama-v3p1-70b-instruct
1092
- name: AccountsFireworksModelsLlamaV3P170BInstruct
1093
- - value: accounts/fireworks/models/llama-v3p1-8b-instruct
1094
- name: AccountsFireworksModelsLlamaV3P18BInstruct
1095
- - sonar
1096
- - value: sonar-pro
1097
- name: SonarPro
1098
- - sambanova
1099
- - value: DeepSeek-R1-Distill-Llama-70B
1100
- name: DeepSeekR1DistillLlama70B
1101
- - value: Llama-4-Maverick-17B-128E-Instruct
1102
- name: Llama4Maverick17B128EInstruct
1103
- - value: Qwen3-32B
1104
- name: Qwen332B
1105
- - ellm
1106
- - value: custom-language-model
1107
- name: CustomLanguageModel
1108
- - value: hume-evi-3-web-search
1109
- name: HumeEvi3WebSearch
1110
- source:
1111
- openapi: evi-openapi.json
1112
- ModelProviderEnum:
1113
- enum:
1114
- - GROQ
1115
- - OPEN_AI
1116
- - FIREWORKS
1117
- - ANTHROPIC
1118
- - CUSTOM_LANGUAGE_MODEL
1119
- - GOOGLE
1120
- - HUME_AI
1121
- - AMAZON_BEDROCK
1122
- - PERPLEXITY
1123
- - SAMBANOVA
1124
- - CEREBRAS
1125
- source:
1126
- openapi: evi-openapi.json
1127
- ValidationErrorLocItem:
1128
- discriminated: false
1129
- union:
1130
- - string
1131
- - integer
1132
- source:
1133
- openapi: evi-openapi.json
1134
- inline: true
1135
- ValidationError:
1136
- properties:
1137
- loc:
1138
- type: list<ValidationErrorLocItem>
1139
- msg: string
1140
- type: string
1141
- source:
1142
- openapi: evi-openapi.json
1143
- VoiceId:
1144
- properties:
1145
- id:
1146
- type: string
1147
- docs: ID of the voice in the `Voice Library`.
1148
- provider:
1149
- type: optional<VoiceProvider>
1150
- docs: Model provider associated with this Voice ID.
1151
- source:
1152
- openapi: evi-openapi.json
1153
- VoiceName:
1154
- properties:
1155
- name:
1156
- type: string
1157
- docs: Name of the voice in the `Voice Library`.
1158
- provider:
1159
- type: optional<VoiceProvider>
1160
- docs: Model provider associated with this Voice Name.
1161
- source:
1162
- openapi: evi-openapi.json
1163
- WebhookEventChatEnded:
1164
- properties:
1165
- event_name:
1166
- type: optional<literal<"chat_ended">>
1167
- docs: Always `chat_ended`.
1168
- end_time:
1169
- type: integer
1170
- docs: Unix timestamp (in milliseconds) indicating when the session ended.
1171
- duration_seconds:
1172
- type: integer
1173
- docs: Total duration of the session in seconds.
1174
- end_reason:
1175
- type: WebhookEventChatStatus
1176
- docs: Reason for the session's termination.
1177
- caller_number:
1178
- type: optional<string>
1179
- docs: >-
1180
- Phone number of the caller in E.164 format (e.g., `+12223333333`).
1181
- This field is included only if the Chat was created via the [Twilio
1182
- phone calling](/docs/empathic-voice-interface-evi/phone-calling)
1183
- integration.
1184
- custom_session_id:
1185
- type: optional<string>
1186
- docs: >-
1187
- User-defined session ID. Relevant only when employing a [custom
1188
- language
1189
- model](/docs/empathic-voice-interface-evi/custom-language-model) in
1190
- the EVI Config.
1191
- extends:
1192
- - WebhookEventBase
1193
- source:
1194
- openapi: evi-openapi.json
1195
- WebhookEventChatStartType:
1196
- enum:
1197
- - new_chat_group
1198
- - resumed_chat_group
1199
- source:
1200
- openapi: evi-openapi.json
1201
- WebhookEventChatStarted:
1202
- properties:
1203
- event_name:
1204
- type: optional<literal<"chat_started">>
1205
- docs: Always `chat_started`.
1206
- start_time:
1207
- type: integer
1208
- docs: Unix timestamp (in milliseconds) indicating when the session started.
1209
- chat_start_type:
1210
- type: WebhookEventChatStartType
1211
- docs: >-
1212
- Indicates whether the chat is the first in a new Chat Group
1213
- (`new_chat_group`) or the continuation of an existing chat group
1214
- (`resumed_chat_group`).
1215
- caller_number:
1216
- type: optional<string>
1217
- docs: >-
1218
- Phone number of the caller in E.164 format (e.g., `+12223333333`).
1219
- This field is included only if the Chat was created via the [Twilio
1220
- phone calling](/docs/empathic-voice-interface-evi/phone-calling)
1221
- integration.
1222
- custom_session_id:
1223
- type: optional<string>
1224
- docs: >-
1225
- User-defined session ID. Relevant only when employing a [custom
1226
- language
1227
- model](/docs/empathic-voice-interface-evi/custom-language-model) in
1228
- the EVI Config.
1229
- extends:
1230
- - WebhookEventBase
1231
- source:
1232
- openapi: evi-openapi.json
1233
- WebhookEventChatStatus:
1234
- enum:
1235
- - ACTIVE
1236
- - USER_ENDED
1237
- - USER_TIMEOUT
1238
- - INACTIVITY_TIMEOUT
1239
- - MAX_DURATION_TIMEOUT
1240
- - SILENCE_TIMEOUT
1241
- - ERROR
1242
- source:
1243
- openapi: evi-openapi.json
1244
- WebhookEvent:
1245
- discriminated: false
1246
- union:
1247
- - WebhookEventChatStarted
1248
- - WebhookEventChatEnded
1249
- source:
1250
- openapi: evi-openapi.json
1251
- WebhookEventBase:
1252
- docs: Represents the fields common to all webhook events.
1253
- properties:
1254
- chat_group_id:
1255
- type: string
1256
- docs: Unique ID of the **Chat Group** associated with the **Chat** session.
1257
- chat_id:
1258
- type: string
1259
- docs: Unique ID of the **Chat** session.
1260
- config_id:
1261
- type: optional<string>
1262
- docs: Unique ID of the EVI **Config** used for the session.
1263
- source:
1264
- openapi: evi-openapi.json
1265
- ErrorResponse:
1266
- properties:
1267
- error: optional<string>
1268
- message: optional<string>
1269
- code: optional<string>
1270
- source:
1271
- openapi: evi-openapi.json
1272
- ReturnPagedUserDefinedTools:
1273
- docs: A paginated list of user defined tool versions returned from the server
1274
- properties:
1275
- page_number:
1276
- type: integer
1277
- docs: >-
1278
- The page number of the returned list.
1279
-
1280
-
1281
- This value corresponds to the `page_number` parameter specified in the
1282
- request. Pagination uses zero-based indexing.
1283
- page_size:
1284
- type: integer
1285
- docs: >-
1286
- The maximum number of items returned per page.
1287
-
1288
-
1289
- This value corresponds to the `page_size` parameter specified in the
1290
- request.
1291
- total_pages:
1292
- type: integer
1293
- docs: The total number of pages in the collection.
1294
- tools_page:
1295
- docs: >-
1296
- List of tools returned for the specified `page_number` and
1297
- `page_size`.
1298
- type: list<optional<ReturnUserDefinedTool>>
1299
- source:
1300
- openapi: evi-openapi.json
1301
- ReturnUserDefinedToolToolType:
1302
- enum:
1303
- - BUILTIN
1304
- - FUNCTION
1305
- docs: >-
1306
- Type of Tool. Either `BUILTIN` for natively implemented tools, like web
1307
- search, or `FUNCTION` for user-defined tools.
1308
- inline: true
1309
- source:
1310
- openapi: evi-openapi.json
1311
- ReturnUserDefinedToolVersionType:
1312
- enum:
1313
- - FIXED
1314
- - LATEST
1315
- docs: >-
1316
- Versioning method for a Tool. Either `FIXED` for using a fixed version
1317
- number or `LATEST` for auto-updating to the latest version.
1318
- inline: true
1319
- source:
1320
- openapi: evi-openapi.json
1321
- ReturnUserDefinedTool:
1322
- docs: A specific tool version returned from the server
1323
- properties:
1324
- tool_type:
1325
- type: ReturnUserDefinedToolToolType
1326
- docs: >-
1327
- Type of Tool. Either `BUILTIN` for natively implemented tools, like
1328
- web search, or `FUNCTION` for user-defined tools.
1329
- id:
1330
- type: string
1331
- docs: Identifier for a Tool. Formatted as a UUID.
1332
- version:
1333
- type: integer
1334
- docs: >-
1335
- Version number for a Tool.
1336
-
1337
-
1338
- Tools, Configs, Custom Voices, and Prompts are versioned. This
1339
- versioning system supports iterative development, allowing you to
1340
- progressively refine tools and revert to previous versions if needed.
1341
-
1342
-
1343
- Version numbers are integer values representing different iterations
1344
- of the Tool. Each update to the Tool increments its version number.
1345
- version_type:
1346
- type: ReturnUserDefinedToolVersionType
1347
- docs: >-
1348
- Versioning method for a Tool. Either `FIXED` for using a fixed version
1349
- number or `LATEST` for auto-updating to the latest version.
1350
- version_description:
1351
- type: optional<string>
1352
- docs: An optional description of the Tool version.
1353
- name:
1354
- type: string
1355
- docs: Name applied to all versions of a particular Tool.
1356
- created_on:
1357
- type: long
1358
- docs: >-
1359
- Time at which the Tool was created. Measured in seconds since the Unix
1360
- epoch.
1361
- modified_on:
1362
- type: long
1363
- docs: >-
1364
- Time at which the Tool was last modified. Measured in seconds since
1365
- the Unix epoch.
1366
- fallback_content:
1367
- type: optional<string>
1368
- docs: >-
1369
- Optional text passed to the supplemental LLM in place of the tool call
1370
- result. The LLM then uses this text to generate a response back to the
1371
- user, ensuring continuity in the conversation if the Tool errors.
1372
- description:
1373
- type: optional<string>
1374
- docs: >-
1375
- An optional description of what the Tool does, used by the
1376
- supplemental LLM to choose when and how to call the function.
1377
- parameters:
1378
- type: string
1379
- docs: >-
1380
- Stringified JSON defining the parameters used by this version of the
1381
- Tool.
1382
-
1383
-
1384
- These parameters define the inputs needed for the Tool's execution,
1385
- including the expected data type and description for each input field.
1386
- Structured as a stringified JSON schema, this format ensures the tool
1387
- receives data in the expected format.
1388
- source:
1389
- openapi: evi-openapi.json
1390
- ReturnPagedPrompts:
1391
- docs: A paginated list of prompt versions returned from the server
1392
- properties:
1393
- page_number:
1394
- type: integer
1395
- docs: >-
1396
- The page number of the returned list.
1397
-
1398
-
1399
- This value corresponds to the `page_number` parameter specified in the
1400
- request. Pagination uses zero-based indexing.
1401
- page_size:
1402
- type: integer
1403
- docs: >-
1404
- The maximum number of items returned per page.
1405
-
1406
-
1407
- This value corresponds to the `page_size` parameter specified in the
1408
- request.
1409
- total_pages:
1410
- type: integer
1411
- docs: The total number of pages in the collection.
1412
- prompts_page:
1413
- docs: >-
1414
- List of prompts returned for the specified `page_number` and
1415
- `page_size`.
1416
- type: list<optional<ReturnPrompt>>
1417
- source:
1418
- openapi: evi-openapi.json
1419
- ReturnPrompt:
1420
- docs: A Prompt associated with this Config.
1421
- properties:
1422
- name:
1423
- type: string
1424
- docs: Name applied to all versions of a particular Prompt.
1425
- id:
1426
- type: string
1427
- docs: Identifier for a Prompt. Formatted as a UUID.
1428
- text:
1429
- type: string
1430
- docs: >-
1431
- Instructions used to shape EVI's behavior, responses, and style.
1432
-
1433
-
1434
- You can use the Prompt to define a specific goal or role for EVI,
1435
- specifying how it should act or what it should focus on during the
1436
- conversation. For example, EVI can be instructed to act as a customer
1437
- support representative, a fitness coach, or a travel advisor, each
1438
- with its own set of behaviors and response styles. For help writing a
1439
- system prompt, see our [Prompting
1440
- Guide](/docs/speech-to-speech-evi/guides/prompting).
1441
- version:
1442
- type: integer
1443
- docs: >-
1444
- Version number for a Prompt.
1445
-
1446
-
1447
- Prompts, Configs, Custom Voices, and Tools are versioned. This
1448
- versioning system supports iterative development, allowing you to
1449
- progressively refine prompts and revert to previous versions if
1450
- needed.
1451
-
1452
-
1453
- Version numbers are integer values representing different iterations
1454
- of the Prompt. Each update to the Prompt increments its version
1455
- number.
1456
- version_description:
1457
- type: optional<string>
1458
- docs: An optional description of the Prompt version.
1459
- version_type:
1460
- type: ReturnPromptVersionType
1461
- docs: >-
1462
- Versioning method for a Prompt. Either `FIXED` for using a fixed
1463
- version number or `LATEST` for auto-updating to the latest version.
1464
- created_on:
1465
- type: long
1466
- docs: >-
1467
- Time at which the Prompt was created. Measured in seconds since the
1468
- Unix epoch.
1469
- modified_on:
1470
- type: long
1471
- docs: >-
1472
- Time at which the Prompt was last modified. Measured in seconds since
1473
- the Unix epoch.
1474
- source:
1475
- openapi: evi-openapi.json
1476
- ReturnPagedConfigs:
1477
- docs: A paginated list of config versions returned from the server
1478
- properties:
1479
- page_number:
1480
- type: optional<integer>
1481
- docs: >-
1482
- The page number of the returned list.
1483
-
1484
-
1485
- This value corresponds to the `page_number` parameter specified in the
1486
- request. Pagination uses zero-based indexing.
1487
- page_size:
1488
- type: optional<integer>
1489
- docs: >-
1490
- The maximum number of items returned per page.
1491
-
1492
-
1493
- This value corresponds to the `page_size` parameter specified in the
1494
- request.
1495
- total_pages:
1496
- type: integer
1497
- docs: The total number of pages in the collection.
1498
- configs_page:
1499
- type: optional<list<ReturnConfig>>
1500
- docs: >-
1501
- List of configs returned for the specified `page_number` and
1502
- `page_size`.
1503
- source:
1504
- openapi: evi-openapi.json
1505
- ReturnConfig:
1506
- docs: A specific config version returned from the server
1507
- properties:
1508
- name:
1509
- type: optional<string>
1510
- docs: Name applied to all versions of a particular Config.
1511
- id:
1512
- type: optional<string>
1513
- docs: Identifier for a Config. Formatted as a UUID.
1514
- version:
1515
- type: optional<integer>
1516
- docs: >-
1517
- Version number for a Config.
1518
-
1519
-
1520
- Configs, Prompts, Custom Voices, and Tools are versioned. This
1521
- versioning system supports iterative development, allowing you to
1522
- progressively refine configurations and revert to previous versions if
1523
- needed.
1524
-
1525
-
1526
- Version numbers are integer values representing different iterations
1527
- of the Config. Each update to the Config increments its version
1528
- number.
1529
- tools:
1530
- type: optional<list<optional<ReturnUserDefinedTool>>>
1531
- docs: List of user-defined tools associated with this Config.
1532
- version_description:
1533
- type: optional<string>
1534
- docs: An optional description of the Config version.
1535
- language_model:
1536
- type: optional<ReturnLanguageModel>
1537
- docs: >-
1538
- The supplemental language model associated with this Config.
1539
-
1540
-
1541
- This model is used to generate longer, more detailed responses from
1542
- EVI. Choosing an appropriate supplemental language model for your use
1543
- case is crucial for generating fast, high-quality responses from EVI.
1544
- builtin_tools:
1545
- type: optional<list<optional<ReturnBuiltinTool>>>
1546
- docs: List of built-in tools associated with this Config.
1547
- evi_version:
1548
- type: optional<string>
1549
- docs: >-
1550
- Specifies the EVI version to use. See our [EVI Version
1551
- Guide](/docs/speech-to-speech-evi/configuration/evi-version) for
1552
- differences between versions.
1553
-
1554
-
1555
- **We're officially sunsetting EVI versions 1 and 2 on August 30,
1556
- 2025**. To keep things running smoothly, be sure to [migrate to EVI
1557
- 3](/docs/speech-to-speech-evi/configuration/evi-version#migrating-to-evi-3)
1558
- before then.
1559
- timeouts: optional<ReturnTimeoutSpecs>
1560
- nudges: optional<ReturnNudgeSpec>
1561
- event_messages: optional<ReturnEventMessageSpecs>
1562
- ellm_model:
1563
- type: optional<ReturnEllmModel>
1564
- docs: >-
1565
- The eLLM setup associated with this Config.
1566
-
1567
-
1568
- Hume's eLLM (empathic Large Language Model) is a multimodal language
1569
- model that takes into account both expression measures and language.
1570
- The eLLM generates short, empathic language responses and guides
1571
- text-to-speech (TTS) prosody.
1572
- voice:
1573
- type: optional<ReturnVoice>
1574
- docs: A voice specification associated with this Config.
1575
- prompt: optional<ReturnPrompt>
1576
- webhooks:
1577
- type: optional<list<optional<ReturnWebhookSpec>>>
1578
- docs: Map of webhooks associated with this config.
1579
- created_on:
1580
- type: optional<long>
1581
- docs: >-
1582
- Time at which the Config was created. Measured in seconds since the
1583
- Unix epoch.
1584
- modified_on:
1585
- type: optional<long>
1586
- docs: >-
1587
- Time at which the Config was last modified. Measured in seconds since
1588
- the Unix epoch.
1589
- source:
1590
- openapi: evi-openapi.json
1591
- ReturnPagedChatsPaginationDirection:
1592
- enum:
1593
- - ASC
1594
- - DESC
1595
- docs: >-
1596
- Indicates the order in which the paginated results are presented, based on
1597
- their creation date.
1598
-
1599
-
1600
- It shows `ASC` for ascending order (chronological, with the oldest records
1601
- first) or `DESC` for descending order (reverse-chronological, with the
1602
- newest records first). This value corresponds to the `ascending_order`
1603
- query parameter used in the request.
1604
- inline: true
1605
- source:
1606
- openapi: evi-openapi.json
1607
- ReturnPagedChats:
1608
- docs: A paginated list of chats returned from the server
1609
- properties:
1610
- page_number:
1611
- type: integer
1612
- docs: >-
1613
- The page number of the returned list.
1614
-
1615
-
1616
- This value corresponds to the `page_number` parameter specified in the
1617
- request. Pagination uses zero-based indexing.
1618
- page_size:
1619
- type: integer
1620
- docs: >-
1621
- The maximum number of items returned per page.
1622
-
1623
-
1624
- This value corresponds to the `page_size` parameter specified in the
1625
- request.
1626
- total_pages:
1627
- type: integer
1628
- docs: The total number of pages in the collection.
1629
- pagination_direction:
1630
- type: ReturnPagedChatsPaginationDirection
1631
- docs: >-
1632
- Indicates the order in which the paginated results are presented,
1633
- based on their creation date.
1634
-
1635
-
1636
- It shows `ASC` for ascending order (chronological, with the oldest
1637
- records first) or `DESC` for descending order (reverse-chronological,
1638
- with the newest records first). This value corresponds to the
1639
- `ascending_order` query parameter used in the request.
1640
- chats_page:
1641
- docs: >-
1642
- List of Chats and their metadata returned for the specified
1643
- `page_number` and `page_size`.
1644
- type: list<ReturnChat>
1645
- source:
1646
- openapi: evi-openapi.json
1647
- ReturnChatPagedEventsStatus:
1648
- enum:
1649
- - ACTIVE
1650
- - USER_ENDED
1651
- - USER_TIMEOUT
1652
- - MAX_DURATION_TIMEOUT
1653
- - INACTIVITY_TIMEOUT
1654
- - ERROR
1655
- docs: >-
1656
- Indicates the current state of the chat. There are six possible statuses:
1657
-
1658
-
1659
- - `ACTIVE`: The chat is currently active and ongoing.
1660
-
1661
-
1662
- - `USER_ENDED`: The chat was manually ended by the user.
1663
-
1664
-
1665
- - `USER_TIMEOUT`: The chat ended due to a user-defined timeout.
1666
-
1667
-
1668
- - `MAX_DURATION_TIMEOUT`: The chat ended because it reached the maximum
1669
- allowed duration.
1670
-
1671
-
1672
- - `INACTIVITY_TIMEOUT`: The chat ended due to an inactivity timeout.
1673
-
1674
-
1675
- - `ERROR`: The chat ended unexpectedly due to an error.
1676
- inline: true
1677
- source:
1678
- openapi: evi-openapi.json
1679
- ReturnChatPagedEventsPaginationDirection:
1680
- enum:
1681
- - ASC
1682
- - DESC
1683
- docs: >-
1684
- Indicates the order in which the paginated results are presented, based on
1685
- their creation date.
1686
-
1687
-
1688
- It shows `ASC` for ascending order (chronological, with the oldest records
1689
- first) or `DESC` for descending order (reverse-chronological, with the
1690
- newest records first). This value corresponds to the `ascending_order`
1691
- query parameter used in the request.
1692
- inline: true
1693
- source:
1694
- openapi: evi-openapi.json
1695
- ReturnChatPagedEvents:
1696
- docs: >-
1697
- A description of chat status with a paginated list of chat events returned
1698
- from the server
1699
- properties:
1700
- id:
1701
- type: string
1702
- docs: Identifier for a Chat. Formatted as a UUID.
1703
- chat_group_id:
1704
- type: string
1705
- docs: >-
1706
- Identifier for the Chat Group. Any chat resumed from this Chat will
1707
- have the same `chat_group_id`. Formatted as a UUID.
1708
- status:
1709
- type: ReturnChatPagedEventsStatus
1710
- docs: >-
1711
- Indicates the current state of the chat. There are six possible
1712
- statuses:
1713
-
1714
-
1715
- - `ACTIVE`: The chat is currently active and ongoing.
1716
-
1717
-
1718
- - `USER_ENDED`: The chat was manually ended by the user.
1719
-
1720
-
1721
- - `USER_TIMEOUT`: The chat ended due to a user-defined timeout.
1722
-
1723
-
1724
- - `MAX_DURATION_TIMEOUT`: The chat ended because it reached the
1725
- maximum allowed duration.
1726
-
1727
-
1728
- - `INACTIVITY_TIMEOUT`: The chat ended due to an inactivity timeout.
1729
-
1730
-
1731
- - `ERROR`: The chat ended unexpectedly due to an error.
1732
- start_timestamp:
1733
- type: long
1734
- docs: >-
1735
- Time at which the Chat started. Measured in seconds since the Unix
1736
- epoch.
1737
- end_timestamp:
1738
- type: optional<long>
1739
- docs: >-
1740
- Time at which the Chat ended. Measured in seconds since the Unix
1741
- epoch.
1742
- pagination_direction:
1743
- type: ReturnChatPagedEventsPaginationDirection
1744
- docs: >-
1745
- Indicates the order in which the paginated results are presented,
1746
- based on their creation date.
1747
-
1748
-
1749
- It shows `ASC` for ascending order (chronological, with the oldest
1750
- records first) or `DESC` for descending order (reverse-chronological,
1751
- with the newest records first). This value corresponds to the
1752
- `ascending_order` query parameter used in the request.
1753
- events_page:
1754
- docs: List of Chat Events for the specified `page_number` and `page_size`.
1755
- type: list<ReturnChatEvent>
1756
- metadata:
1757
- type: optional<string>
1758
- docs: Stringified JSON with additional metadata about the chat.
1759
- page_number:
1760
- type: integer
1761
- docs: >-
1762
- The page number of the returned list.
1763
-
1764
-
1765
- This value corresponds to the `page_number` parameter specified in the
1766
- request. Pagination uses zero-based indexing.
1767
- page_size:
1768
- type: integer
1769
- docs: >-
1770
- The maximum number of items returned per page.
1771
-
1772
-
1773
- This value corresponds to the `page_size` parameter specified in the
1774
- request.
1775
- total_pages:
1776
- type: integer
1777
- docs: The total number of pages in the collection.
1778
- config: optional<ReturnConfigSpec>
1779
- source:
1780
- openapi: evi-openapi.json
1781
- ReturnChatAudioReconstructionStatus:
1782
- enum:
1783
- - QUEUED
1784
- - IN_PROGRESS
1785
- - COMPLETE
1786
- - ERROR
1787
- - CANCELLED
1788
- docs: >-
1789
- Indicates the current state of the audio reconstruction job. There are
1790
- five possible statuses:
1791
-
1792
-
1793
- - `QUEUED`: The reconstruction job is waiting to be processed.
1794
-
1795
-
1796
- - `IN_PROGRESS`: The reconstruction is currently being processed.
1797
-
1798
-
1799
- - `COMPLETE`: The audio reconstruction is finished and ready for download.
1800
-
1801
-
1802
- - `ERROR`: An error occurred during the reconstruction process.
1803
-
1804
-
1805
- - `CANCELED`: The reconstruction job has been canceled.
1806
- inline: true
1807
- source:
1808
- openapi: evi-openapi.json
1809
- ReturnChatAudioReconstruction:
1810
- docs: >-
1811
- List of chat audio reconstructions returned for the specified page number
1812
- and page size.
1813
- properties:
1814
- id:
1815
- type: string
1816
- docs: Identifier for the chat. Formatted as a UUID.
1817
- user_id:
1818
- type: string
1819
- docs: Identifier for the user that owns this chat. Formatted as a UUID.
1820
- status:
1821
- type: ReturnChatAudioReconstructionStatus
1822
- docs: >-
1823
- Indicates the current state of the audio reconstruction job. There are
1824
- five possible statuses:
1825
-
1826
-
1827
- - `QUEUED`: The reconstruction job is waiting to be processed.
1828
-
1829
-
1830
- - `IN_PROGRESS`: The reconstruction is currently being processed.
1831
-
1832
-
1833
- - `COMPLETE`: The audio reconstruction is finished and ready for
1834
- download.
1835
-
1836
-
1837
- - `ERROR`: An error occurred during the reconstruction process.
1838
-
1839
-
1840
- - `CANCELED`: The reconstruction job has been canceled.
1841
- filename:
1842
- type: optional<string>
1843
- docs: Name of the chat audio reconstruction file.
1844
- modified_at:
1845
- type: optional<long>
1846
- docs: >-
1847
- The timestamp of the most recent status change for this audio
1848
- reconstruction, formatted milliseconds since the Unix epoch.
1849
- signed_audio_url:
1850
- type: optional<string>
1851
- docs: Signed URL used to download the chat audio reconstruction file.
1852
- signed_url_expiration_timestamp_millis:
1853
- type: optional<long>
1854
- docs: >-
1855
- The timestamp when the signed URL will expire, formatted as a Unix
1856
- epoch milliseconds.
1857
- source:
1858
- openapi: evi-openapi.json
1859
- ReturnPagedChatGroupsPaginationDirection:
1860
- enum:
1861
- - ASC
1862
- - DESC
1863
- docs: >-
1864
- Indicates the order in which the paginated results are presented, based on
1865
- their creation date.
1866
-
1867
-
1868
- It shows `ASC` for ascending order (chronological, with the oldest records
1869
- first) or `DESC` for descending order (reverse-chronological, with the
1870
- newest records first). This value corresponds to the `ascending_order`
1871
- query parameter used in the request.
1872
- inline: true
1873
- source:
1874
- openapi: evi-openapi.json
1875
- ReturnPagedChatGroups:
1876
- docs: A paginated list of chat_groups returned from the server
1877
- properties:
1878
- page_number:
1879
- type: integer
1880
- docs: >-
1881
- The page number of the returned list.
1882
-
1883
-
1884
- This value corresponds to the `page_number` parameter specified in the
1885
- request. Pagination uses zero-based indexing.
1886
- page_size:
1887
- type: integer
1888
- docs: >-
1889
- The maximum number of items returned per page.
1890
-
1891
-
1892
- This value corresponds to the `page_size` parameter specified in the
1893
- request.
1894
- total_pages:
1895
- type: integer
1896
- docs: The total number of pages in the collection.
1897
- pagination_direction:
1898
- type: ReturnPagedChatGroupsPaginationDirection
1899
- docs: >-
1900
- Indicates the order in which the paginated results are presented,
1901
- based on their creation date.
1902
-
1903
-
1904
- It shows `ASC` for ascending order (chronological, with the oldest
1905
- records first) or `DESC` for descending order (reverse-chronological,
1906
- with the newest records first). This value corresponds to the
1907
- `ascending_order` query parameter used in the request.
1908
- chat_groups_page:
1909
- docs: >-
1910
- List of Chat Groups and their metadata returned for the specified
1911
- `page_number` and `page_size`.
1912
- type: list<ReturnChatGroup>
1913
- source:
1914
- openapi: evi-openapi.json
1915
- ReturnChatGroupPagedChatsPaginationDirection:
1916
- enum:
1917
- - ASC
1918
- - DESC
1919
- docs: >-
1920
- Indicates the order in which the paginated results are presented, based on
1921
- their creation date.
1922
-
1923
-
1924
- It shows `ASC` for ascending order (chronological, with the oldest records
1925
- first) or `DESC` for descending order (reverse-chronological, with the
1926
- newest records first). This value corresponds to the `ascending_order`
1927
- query parameter used in the request.
1928
- inline: true
1929
- source:
1930
- openapi: evi-openapi.json
1931
- ReturnChatGroupPagedChats:
1932
- docs: >-
1933
- A description of chat_group and its status with a paginated list of each
1934
- chat in the chat_group
1935
- properties:
1936
- id:
1937
- type: string
1938
- docs: >-
1939
- Identifier for the Chat Group. Any Chat resumed from this Chat Group
1940
- will have the same `chat_group_id`. Formatted as a UUID.
1941
- first_start_timestamp:
1942
- type: long
1943
- docs: >-
1944
- Time at which the first Chat in this Chat Group was created. Measured
1945
- in seconds since the Unix epoch.
1946
- most_recent_start_timestamp:
1947
- type: long
1948
- docs: >-
1949
- Time at which the most recent Chat in this Chat Group was created.
1950
- Measured in seconds since the Unix epoch.
1951
- num_chats:
1952
- type: integer
1953
- docs: The total number of Chats associated with this Chat Group.
1954
- page_number:
1955
- type: integer
1956
- docs: >-
1957
- The page number of the returned list.
1958
-
1959
-
1960
- This value corresponds to the `page_number` parameter specified in the
1961
- request. Pagination uses zero-based indexing.
1962
- page_size:
1963
- type: integer
1964
- docs: >-
1965
- The maximum number of items returned per page.
1966
-
1967
-
1968
- This value corresponds to the `page_size` parameter specified in the
1969
- request.
1970
- total_pages:
1971
- type: integer
1972
- docs: The total number of pages in the collection.
1973
- pagination_direction:
1974
- type: ReturnChatGroupPagedChatsPaginationDirection
1975
- docs: >-
1976
- Indicates the order in which the paginated results are presented,
1977
- based on their creation date.
1978
-
1979
-
1980
- It shows `ASC` for ascending order (chronological, with the oldest
1981
- records first) or `DESC` for descending order (reverse-chronological,
1982
- with the newest records first). This value corresponds to the
1983
- `ascending_order` query parameter used in the request.
1984
- chats_page:
1985
- docs: List of Chats for the specified `page_number` and `page_size`.
1986
- type: list<ReturnChat>
1987
- active:
1988
- type: optional<boolean>
1989
- docs: >-
1990
- Denotes whether there is an active Chat associated with this Chat
1991
- Group.
1992
- source:
1993
- openapi: evi-openapi.json
1994
- ReturnChatGroupPagedEventsPaginationDirection:
1995
- enum:
1996
- - ASC
1997
- - DESC
1998
- docs: >-
1999
- Indicates the order in which the paginated results are presented, based on
2000
- their creation date.
2001
-
2002
-
2003
- It shows `ASC` for ascending order (chronological, with the oldest records
2004
- first) or `DESC` for descending order (reverse-chronological, with the
2005
- newest records first). This value corresponds to the `ascending_order`
2006
- query parameter used in the request.
2007
- inline: true
2008
- source:
2009
- openapi: evi-openapi.json
2010
- ReturnChatGroupPagedEvents:
2011
- docs: >-
2012
- A paginated list of chat events that occurred across chats in this
2013
- chat_group from the server
2014
- properties:
2015
- id:
2016
- type: string
2017
- docs: >-
2018
- Identifier for the Chat Group. Any Chat resumed from this Chat Group
2019
- will have the same `chat_group_id`. Formatted as a UUID.
2020
- page_number:
2021
- type: integer
2022
- docs: >-
2023
- The page number of the returned list.
2024
-
2025
-
2026
- This value corresponds to the `page_number` parameter specified in the
2027
- request. Pagination uses zero-based indexing.
2028
- page_size:
2029
- type: integer
2030
- docs: >-
2031
- The maximum number of items returned per page.
2032
-
2033
-
2034
- This value corresponds to the `page_size` parameter specified in the
2035
- request.
2036
- total_pages:
2037
- type: integer
2038
- docs: The total number of pages in the collection.
2039
- pagination_direction:
2040
- type: ReturnChatGroupPagedEventsPaginationDirection
2041
- docs: >-
2042
- Indicates the order in which the paginated results are presented,
2043
- based on their creation date.
2044
-
2045
-
2046
- It shows `ASC` for ascending order (chronological, with the oldest
2047
- records first) or `DESC` for descending order (reverse-chronological,
2048
- with the newest records first). This value corresponds to the
2049
- `ascending_order` query parameter used in the request.
2050
- events_page:
2051
- docs: List of Chat Events for the specified `page_number` and `page_size`.
2052
- type: list<ReturnChatEvent>
2053
- source:
2054
- openapi: evi-openapi.json
2055
- ReturnChatGroupPagedAudioReconstructionsPaginationDirection:
2056
- enum:
2057
- - ASC
2058
- - DESC
2059
- docs: >-
2060
- Indicates the order in which the paginated results are presented, based on
2061
- their creation date.
2062
-
2063
-
2064
- It shows `ASC` for ascending order (chronological, with the oldest records
2065
- first) or `DESC` for descending order (reverse-chronological, with the
2066
- newest records first). This value corresponds to the `ascending_order`
2067
- query parameter used in the request.
2068
- inline: true
2069
- source:
2070
- openapi: evi-openapi.json
2071
- ReturnChatGroupPagedAudioReconstructions:
2072
- docs: A paginated list of chat reconstructions for a particular chatgroup
2073
- properties:
2074
- id:
2075
- type: string
2076
- docs: Identifier for the chat group. Formatted as a UUID.
2077
- user_id:
2078
- type: string
2079
- docs: Identifier for the user that owns this chat. Formatted as a UUID.
2080
- num_chats:
2081
- type: integer
2082
- docs: Total number of chats in this chatgroup
2083
- page_number:
2084
- type: integer
2085
- docs: >-
2086
- The page number of the returned list.
2087
-
2088
-
2089
- This value corresponds to the `page_number` parameter specified in the
2090
- request. Pagination uses zero-based indexing.
2091
- page_size:
2092
- type: integer
2093
- docs: >-
2094
- The maximum number of items returned per page.
2095
-
2096
-
2097
- This value corresponds to the `page_size` parameter specified in the
2098
- request.
2099
- total_pages:
2100
- type: integer
2101
- docs: The total number of pages in the collection.
2102
- pagination_direction:
2103
- type: ReturnChatGroupPagedAudioReconstructionsPaginationDirection
2104
- docs: >-
2105
- Indicates the order in which the paginated results are presented,
2106
- based on their creation date.
2107
-
2108
-
2109
- It shows `ASC` for ascending order (chronological, with the oldest
2110
- records first) or `DESC` for descending order (reverse-chronological,
2111
- with the newest records first). This value corresponds to the
2112
- `ascending_order` query parameter used in the request.
2113
- audio_reconstructions_page:
2114
- docs: >-
2115
- List of chat audio reconstructions returned for the specified page
2116
- number and page size.
2117
- type: list<ReturnChatAudioReconstruction>
2118
- source:
2119
- openapi: evi-openapi.json
2120
- ReturnPromptVersionType:
2121
- enum:
2122
- - FIXED
2123
- - LATEST
2124
- docs: >-
2125
- Versioning method for a Prompt. Either `FIXED` for using a fixed version
2126
- number or `LATEST` for auto-updating to the latest version.
2127
- inline: true
2128
- source:
2129
- openapi: evi-openapi.json
2130
- PostedConfigPromptSpec:
2131
- docs: >-
2132
- Identifies which prompt to use in a a config OR how to create a new prompt
2133
- to use in the config
2134
- properties:
2135
- id:
2136
- type: optional<string>
2137
- docs: Identifier for a Prompt. Formatted as a UUID.
2138
- version:
2139
- type: optional<integer>
2140
- docs: >-
2141
- Version number for a Prompt. Version numbers should be integers. The
2142
- combination of configId and version number is unique.
2143
- text:
2144
- type: optional<string>
2145
- docs: Text used to create a new prompt for a particular config.
2146
- source:
2147
- openapi: evi-openapi.json
2148
- PostedLanguageModel:
2149
- docs: A LanguageModel to be posted to the server
2150
- properties:
2151
- model_provider:
2152
- type: optional<ModelProviderEnum>
2153
- docs: The provider of the supplemental language model.
2154
- model_resource:
2155
- type: optional<LanguageModelType>
2156
- docs: String that specifies the language model to use with `model_provider`.
2157
- temperature:
2158
- type: optional<float>
2159
- docs: >-
2160
- The model temperature, with values between 0 to 1 (inclusive).
2161
-
2162
-
2163
- Controls the randomness of the LLM's output, with values closer to 0
2164
- yielding focused, deterministic responses and values closer to 1
2165
- producing more creative, diverse responses.
2166
- source:
2167
- openapi: evi-openapi.json
2168
- PostedEllmModel:
2169
- docs: A eLLM model configuration to be posted to the server
2170
- properties:
2171
- allow_short_responses:
2172
- type: optional<boolean>
2173
- docs: |-
2174
- Boolean indicating if the eLLM is allowed to generate short responses.
2175
-
2176
- If omitted, short responses from the eLLM are enabled by default.
2177
- source:
2178
- openapi: evi-openapi.json
2179
- PostedUserDefinedToolSpec:
2180
- docs: A specific tool identifier to be posted to the server
2181
- properties:
2182
- id:
2183
- type: string
2184
- docs: Identifier for a Tool. Formatted as a UUID.
2185
- version:
2186
- type: optional<integer>
2187
- docs: >-
2188
- Version number for a Tool.
2189
-
2190
-
2191
- Tools, Configs, Custom Voices, and Prompts are versioned. This
2192
- versioning system supports iterative development, allowing you to
2193
- progressively refine tools and revert to previous versions if needed.
2194
-
2195
-
2196
- Version numbers are integer values representing different iterations
2197
- of the Tool. Each update to the Tool increments its version number.
2198
- source:
2199
- openapi: evi-openapi.json
2200
- PostedBuiltinToolName:
2201
- enum:
2202
- - web_search
2203
- - hang_up
2204
- docs: >-
2205
- Name of the built-in tool to use. Hume supports the following built-in
2206
- tools:
2207
-
2208
-
2209
- - **web_search:** enables EVI to search the web for up-to-date information
2210
- when applicable.
2211
-
2212
- - **hang_up:** closes the WebSocket connection when appropriate (e.g.,
2213
- after detecting a farewell in the conversation).
2214
-
2215
-
2216
- For more information, see our guide on [using built-in
2217
- tools](/docs/speech-to-speech-evi/features/tool-use#using-built-in-tools).
2218
- inline: true
2219
- source:
2220
- openapi: evi-openapi.json
2221
- PostedBuiltinTool:
2222
- docs: A configuration of a built-in tool to be posted to the server
2223
- properties:
2224
- name:
2225
- type: PostedBuiltinToolName
2226
- docs: >-
2227
- Name of the built-in tool to use. Hume supports the following built-in
2228
- tools:
2229
-
2230
-
2231
- - **web_search:** enables EVI to search the web for up-to-date
2232
- information when applicable.
2233
-
2234
- - **hang_up:** closes the WebSocket connection when appropriate (e.g.,
2235
- after detecting a farewell in the conversation).
2236
-
2237
-
2238
- For more information, see our guide on [using built-in
2239
- tools](/docs/speech-to-speech-evi/features/tool-use#using-built-in-tools).
2240
- fallback_content:
2241
- type: optional<string>
2242
- docs: >-
2243
- Optional text passed to the supplemental LLM in place of the tool call
2244
- result. The LLM then uses this text to generate a response back to the
2245
- user, ensuring continuity in the conversation if the Tool errors.
2246
- source:
2247
- openapi: evi-openapi.json
2248
- PostedEventMessageSpecs:
2249
- docs: >-
2250
- Collection of event messages returned by the server.
2251
-
2252
-
2253
- Event messages are sent by the server when specific events occur during a
2254
- chat session. These messages are used to configure behaviors for EVI, such
2255
- as controlling how EVI starts a new conversation.
2256
- properties:
2257
- on_new_chat:
2258
- type: optional<PostedEventMessageSpec>
2259
- docs: >-
2260
- Specifies the initial message EVI provides when a new chat is started,
2261
- such as a greeting or welcome message.
2262
- on_inactivity_timeout:
2263
- type: optional<PostedEventMessageSpec>
2264
- docs: >-
2265
- Specifies the message EVI provides when the chat is about to be
2266
- disconnected due to a user inactivity timeout, such as a message
2267
- mentioning a lack of user input for a period of time.
2268
-
2269
-
2270
- Enabling an inactivity message allows developers to use this message
2271
- event for "checking in" with the user if they are not responding to
2272
- see if they are still active.
2273
-
2274
-
2275
- If the user does not respond in the number of seconds specified in the
2276
- `inactivity_timeout` field, then EVI will say the message and the user
2277
- has 15 seconds to respond. If they respond in time, the conversation
2278
- will continue; if not, the conversation will end.
2279
-
2280
-
2281
- However, if the inactivity message is not enabled, then reaching the
2282
- inactivity timeout will immediately end the connection.
2283
- on_max_duration_timeout:
2284
- type: optional<PostedEventMessageSpec>
2285
- docs: >-
2286
- Specifies the message EVI provides when the chat is disconnected due
2287
- to reaching the maximum chat duration, such as a message mentioning
2288
- the time limit for the chat has been reached.
2289
- source:
2290
- openapi: evi-openapi.json
2291
- PostedNudgeSpec:
2292
- docs: A nudge specification posted to the server
2293
- properties:
2294
- enabled:
2295
- type: optional<boolean>
2296
- docs: >-
2297
- If true, EVI will 'nudge' the user to speak after a determined
2298
- interval of silence.
2299
- interval_secs:
2300
- type: optional<integer>
2301
- docs: The interval of inactivity (in seconds) before a nudge is triggered.
2302
- source:
2303
- openapi: evi-openapi.json
2304
- PostedTimeoutSpecsInactivity:
2305
- docs: >-
2306
- Specifies the duration of user inactivity (in seconds) after which the EVI
2307
- WebSocket connection will be automatically disconnected. Default is 600
2308
- seconds (10 minutes).
2309
-
2310
-
2311
- Accepts a minimum value of 30 seconds and a maximum value of 1,800
2312
- seconds.
2313
- properties:
2314
- duration_secs:
2315
- type: optional<integer>
2316
- docs: >-
2317
- Duration in seconds for the timeout (e.g. 600 seconds represents 10
2318
- minutes).
2319
- enabled:
2320
- type: boolean
2321
- docs: >-
2322
- Boolean indicating if this timeout is enabled.
2323
-
2324
-
2325
- If set to false, EVI will not timeout due to a specified duration of
2326
- user inactivity being reached. However, the conversation will
2327
- eventually disconnect after 1,800 seconds (30 minutes), which is the
2328
- maximum WebSocket duration limit for EVI.
2329
- source:
2330
- openapi: evi-openapi.json
2331
- inline: true
2332
- PostedTimeoutSpecsMaxDuration:
2333
- docs: >-
2334
- Specifies the maximum allowed duration (in seconds) for an EVI WebSocket
2335
- connection before it is automatically disconnected. Default is 1,800
2336
- seconds (30 minutes).
2337
-
2338
-
2339
- Accepts a minimum value of 30 seconds and a maximum value of 1,800
2340
- seconds.
2341
- properties:
2342
- duration_secs:
2343
- type: optional<integer>
2344
- docs: >-
2345
- Duration in seconds for the timeout (e.g. 600 seconds represents 10
2346
- minutes).
2347
- enabled:
2348
- type: boolean
2349
- docs: >-
2350
- Boolean indicating if this timeout is enabled.
2351
-
2352
-
2353
- If set to false, EVI will not timeout due to a specified maximum
2354
- duration being reached. However, the conversation will eventually
2355
- disconnect after 1,800 seconds (30 minutes), which is the maximum
2356
- WebSocket duration limit for EVI.
2357
- source:
2358
- openapi: evi-openapi.json
2359
- inline: true
2360
- PostedTimeoutSpecs:
2361
- docs: >-
2362
- Collection of timeout specifications returned by the server.
2363
-
2364
-
2365
- Timeouts are sent by the server when specific time-based events occur
2366
- during a chat session. These specifications set the inactivity timeout and
2367
- the maximum duration an EVI WebSocket connection can stay open before it
2368
- is automatically disconnected.
2369
- properties:
2370
- inactivity:
2371
- type: optional<PostedTimeoutSpecsInactivity>
2372
- docs: >-
2373
- Specifies the duration of user inactivity (in seconds) after which the
2374
- EVI WebSocket connection will be automatically disconnected. Default
2375
- is 600 seconds (10 minutes).
2376
-
2377
-
2378
- Accepts a minimum value of 30 seconds and a maximum value of 1,800
2379
- seconds.
2380
- max_duration:
2381
- type: optional<PostedTimeoutSpecsMaxDuration>
2382
- docs: >-
2383
- Specifies the maximum allowed duration (in seconds) for an EVI
2384
- WebSocket connection before it is automatically disconnected. Default
2385
- is 1,800 seconds (30 minutes).
2386
-
2387
-
2388
- Accepts a minimum value of 30 seconds and a maximum value of 1,800
2389
- seconds.
2390
- source:
2391
- openapi: evi-openapi.json
2392
- PostedWebhookEventType:
2393
- enum:
2394
- - chat_started
2395
- - chat_ended
2396
- docs: Events this URL is subscribed to
2397
- inline: true
2398
- source:
2399
- openapi: evi-openapi.json
2400
- PostedWebhookSpec:
2401
- docs: URL and settings for a specific webhook to be posted to the server
2402
- properties:
2403
- url:
2404
- type: string
2405
- docs: >-
2406
- The URL where event payloads will be sent. This must be a valid https
2407
- URL to ensure secure communication. The server at this URL must accept
2408
- POST requests with a JSON payload.
2409
- events:
2410
- docs: >-
2411
- The list of events the specified URL is subscribed to.
2412
-
2413
-
2414
- See our [webhooks
2415
- guide](/docs/speech-to-speech-evi/configuration/build-a-configuration#supported-events)
2416
- for more information on supported events.
2417
- type: list<PostedWebhookEventType>
2418
- source:
2419
- openapi: evi-openapi.json
2420
- ReturnLanguageModel:
2421
- docs: A specific LanguageModel
2422
- properties:
2423
- model_provider:
2424
- type: optional<ModelProviderEnum>
2425
- docs: The provider of the supplemental language model.
2426
- model_resource:
2427
- type: optional<LanguageModelType>
2428
- docs: String that specifies the language model to use with `model_provider`.
2429
- temperature:
2430
- type: optional<float>
2431
- docs: >-
2432
- The model temperature, with values between 0 to 1 (inclusive).
2433
-
2434
-
2435
- Controls the randomness of the LLM's output, with values closer to 0
2436
- yielding focused, deterministic responses and values closer to 1
2437
- producing more creative, diverse responses.
2438
- source:
2439
- openapi: evi-openapi.json
2440
- ReturnEllmModel:
2441
- docs: A specific eLLM Model configuration
2442
- properties:
2443
- allow_short_responses:
2444
- type: boolean
2445
- docs: |-
2446
- Boolean indicating if the eLLM is allowed to generate short responses.
2447
-
2448
- If omitted, short responses from the eLLM are enabled by default.
2449
- source:
2450
- openapi: evi-openapi.json
2451
- ReturnBuiltinToolToolType:
2452
- enum:
2453
- - BUILTIN
2454
- - FUNCTION
2455
- docs: >-
2456
- Type of Tool. Either `BUILTIN` for natively implemented tools, like web
2457
- search, or `FUNCTION` for user-defined tools.
2458
- inline: true
2459
- source:
2460
- openapi: evi-openapi.json
2461
- ReturnBuiltinTool:
2462
- docs: A specific builtin tool version returned from the server
2463
- properties:
2464
- tool_type:
2465
- type: ReturnBuiltinToolToolType
2466
- docs: >-
2467
- Type of Tool. Either `BUILTIN` for natively implemented tools, like
2468
- web search, or `FUNCTION` for user-defined tools.
2469
- name:
2470
- type: string
2471
- docs: Name applied to all versions of a particular Tool.
2472
- fallback_content:
2473
- type: optional<string>
2474
- docs: >-
2475
- Optional text passed to the supplemental LLM in place of the tool call
2476
- result. The LLM then uses this text to generate a response back to the
2477
- user, ensuring continuity in the conversation if the Tool errors.
2478
- source:
2479
- openapi: evi-openapi.json
2480
- ReturnEventMessageSpecs:
2481
- docs: >-
2482
- Collection of event messages returned by the server.
2483
-
2484
-
2485
- Event messages are sent by the server when specific events occur during a
2486
- chat session. These messages are used to configure behaviors for EVI, such
2487
- as controlling how EVI starts a new conversation.
2488
- properties:
2489
- on_new_chat:
2490
- type: optional<ReturnEventMessageSpec>
2491
- docs: >-
2492
- Specifies the initial message EVI provides when a new chat is started,
2493
- such as a greeting or welcome message.
2494
- on_inactivity_timeout:
2495
- type: optional<ReturnEventMessageSpec>
2496
- docs: >-
2497
- Specifies the message EVI provides when the chat is about to be
2498
- disconnected due to a user inactivity timeout, such as a message
2499
- mentioning a lack of user input for a period of time.
2500
-
2501
-
2502
- Enabling an inactivity message allows developers to use this message
2503
- event for "checking in" with the user if they are not responding to
2504
- see if they are still active.
2505
-
2506
-
2507
- If the user does not respond in the number of seconds specified in the
2508
- `inactivity_timeout` field, then EVI will say the message and the user
2509
- has 15 seconds to respond. If they respond in time, the conversation
2510
- will continue; if not, the conversation will end.
2511
-
2512
-
2513
- However, if the inactivity message is not enabled, then reaching the
2514
- inactivity timeout will immediately end the connection.
2515
- on_max_duration_timeout:
2516
- type: optional<ReturnEventMessageSpec>
2517
- docs: >-
2518
- Specifies the message EVI provides when the chat is disconnected due
2519
- to reaching the maximum chat duration, such as a message mentioning
2520
- the time limit for the chat has been reached.
2521
- source:
2522
- openapi: evi-openapi.json
2523
- ReturnTimeoutSpecs:
2524
- docs: >-
2525
- Collection of timeout specifications returned by the server.
2526
-
2527
-
2528
- Timeouts are sent by the server when specific time-based events occur
2529
- during a chat session. These specifications set the inactivity timeout and
2530
- the maximum duration an EVI WebSocket connection can stay open before it
2531
- is automatically disconnected.
2532
- properties:
2533
- inactivity:
2534
- type: ReturnTimeoutSpec
2535
- docs: >-
2536
- Specifies the duration of user inactivity (in seconds) after which the
2537
- EVI WebSocket connection will be automatically disconnected. Default
2538
- is 600 seconds (10 minutes).
2539
-
2540
-
2541
- Accepts a minimum value of 30 seconds and a maximum value of 1,800
2542
- seconds.
2543
- max_duration:
2544
- type: ReturnTimeoutSpec
2545
- docs: >-
2546
- Specifies the maximum allowed duration (in seconds) for an EVI
2547
- WebSocket connection before it is automatically disconnected. Default
2548
- is 1,800 seconds (30 minutes).
2549
-
2550
-
2551
- Accepts a minimum value of 30 seconds and a maximum value of 1,800
2552
- seconds.
2553
- source:
2554
- openapi: evi-openapi.json
2555
- ReturnNudgeSpec:
2556
- docs: A specific nudge configuration returned from the server
2557
- properties:
2558
- enabled:
2559
- type: boolean
2560
- docs: EVI will nudge user after inactivity
2561
- interval_secs:
2562
- type: optional<integer>
2563
- docs: Time interval in seconds after which the nudge will be sent.
2564
- source:
2565
- openapi: evi-openapi.json
2566
- ReturnWebhookEventType:
2567
- enum:
2568
- - chat_started
2569
- - chat_ended
2570
- docs: Events this URL is subscribed to
2571
- inline: true
2572
- source:
2573
- openapi: evi-openapi.json
2574
- ReturnWebhookSpec:
2575
- docs: Collection of webhook URL endpoints to be returned from the server
2576
- properties:
2577
- url:
2578
- type: string
2579
- docs: >-
2580
- The URL where event payloads will be sent. This must be a valid https
2581
- URL to ensure secure communication. The server at this URL must accept
2582
- POST requests with a JSON payload.
2583
- events:
2584
- docs: >-
2585
- The list of events the specified URL is subscribed to.
2586
-
2587
-
2588
- See our [webhooks
2589
- guide](/docs/speech-to-speech-evi/configuration/build-a-configuration#supported-events)
2590
- for more information on supported events.
2591
- type: list<ReturnWebhookEventType>
2592
- source:
2593
- openapi: evi-openapi.json
2594
- ReturnChatStatus:
2595
- enum:
2596
- - ACTIVE
2597
- - USER_ENDED
2598
- - USER_TIMEOUT
2599
- - MAX_DURATION_TIMEOUT
2600
- - INACTIVITY_TIMEOUT
2601
- - ERROR
2602
- docs: >-
2603
- Indicates the current state of the chat. There are six possible statuses:
2604
-
2605
-
2606
- - `ACTIVE`: The chat is currently active and ongoing.
2607
-
2608
-
2609
- - `USER_ENDED`: The chat was manually ended by the user.
2610
-
2611
-
2612
- - `USER_TIMEOUT`: The chat ended due to a user-defined timeout.
2613
-
2614
-
2615
- - `MAX_DURATION_TIMEOUT`: The chat ended because it reached the maximum
2616
- allowed duration.
2617
-
2618
-
2619
- - `INACTIVITY_TIMEOUT`: The chat ended due to an inactivity timeout.
2620
-
2621
-
2622
- - `ERROR`: The chat ended unexpectedly due to an error.
2623
- inline: true
2624
- source:
2625
- openapi: evi-openapi.json
2626
- ReturnChat:
2627
- docs: A description of chat and its status
2628
- properties:
2629
- id:
2630
- type: string
2631
- docs: Identifier for a Chat. Formatted as a UUID.
2632
- chat_group_id:
2633
- type: string
2634
- docs: >-
2635
- Identifier for the Chat Group. Any chat resumed from this Chat will
2636
- have the same `chat_group_id`. Formatted as a UUID.
2637
- status:
2638
- type: ReturnChatStatus
2639
- docs: >-
2640
- Indicates the current state of the chat. There are six possible
2641
- statuses:
2642
-
2643
-
2644
- - `ACTIVE`: The chat is currently active and ongoing.
2645
-
2646
-
2647
- - `USER_ENDED`: The chat was manually ended by the user.
2648
-
2649
-
2650
- - `USER_TIMEOUT`: The chat ended due to a user-defined timeout.
2651
-
2652
-
2653
- - `MAX_DURATION_TIMEOUT`: The chat ended because it reached the
2654
- maximum allowed duration.
2655
-
2656
-
2657
- - `INACTIVITY_TIMEOUT`: The chat ended due to an inactivity timeout.
2658
-
2659
-
2660
- - `ERROR`: The chat ended unexpectedly due to an error.
2661
- start_timestamp:
2662
- type: long
2663
- docs: >-
2664
- Time at which the Chat started. Measured in seconds since the Unix
2665
- epoch.
2666
- end_timestamp:
2667
- type: optional<long>
2668
- docs: >-
2669
- Time at which the Chat ended. Measured in seconds since the Unix
2670
- epoch.
2671
- event_count:
2672
- type: optional<long>
2673
- docs: The total number of events currently in this chat.
2674
- metadata:
2675
- type: optional<string>
2676
- docs: Stringified JSON with additional metadata about the chat.
2677
- config: optional<ReturnConfigSpec>
2678
- source:
2679
- openapi: evi-openapi.json
2680
- ReturnChatEventRole:
2681
- enum:
2682
- - USER
2683
- - AGENT
2684
- - SYSTEM
2685
- - TOOL
2686
- docs: >-
2687
- The role of the entity which generated the Chat Event. There are four
2688
- possible values:
2689
-
2690
- - `USER`: The user, capable of sending user messages and interruptions.
2691
-
2692
- - `AGENT`: The assistant, capable of sending agent messages.
2693
-
2694
- - `SYSTEM`: The backend server, capable of transmitting errors.
2695
-
2696
- - `TOOL`: The function calling mechanism.
2697
- inline: true
2698
- source:
2699
- openapi: evi-openapi.json
2700
- ReturnChatEventType:
2701
- enum:
2702
- - FUNCTION_CALL
2703
- - FUNCTION_CALL_RESPONSE
2704
- - CHAT_END_MESSAGE
2705
- - AGENT_MESSAGE
2706
- - SYSTEM_PROMPT
2707
- - USER_RECORDING_START_MESSAGE
2708
- - RESUME_ONSET
2709
- - USER_INTERRUPTION
2710
- - CHAT_START_MESSAGE
2711
- - PAUSE_ONSET
2712
- - USER_MESSAGE
2713
- docs: >-
2714
- Type of Chat Event. There are eleven Chat Event types:
2715
-
2716
- - `SYSTEM_PROMPT`: The system prompt used to initialize the session.
2717
-
2718
- - `CHAT_START_MESSAGE`: Marks the beginning of the chat session.
2719
-
2720
- - `USER_RECORDING_START_MESSAGE`: Marks when the client began streaming
2721
- audio and the start of audio processing.
2722
-
2723
- - `USER_MESSAGE`: A message sent by the user.
2724
-
2725
- - `USER_INTERRUPTION`: A user-initiated interruption while the assistant
2726
- is speaking.
2727
-
2728
- - `AGENT_MESSAGE`: A response generated by the assistant.
2729
-
2730
- - `FUNCTION_CALL`: A record of a tool invocation by the assistant.
2731
-
2732
- - `FUNCTION_CALL_RESPONSE`: The result of a previously invoked function or
2733
- tool.
2734
-
2735
- - `PAUSE_ONSET`: Marks when the client sent a `pause_assistant_message` to
2736
- pause the assistant.
2737
-
2738
- - `RESUME_ONSET`: Marks when the client sent a `resume_assistant_message`
2739
- to resume the assistant.
2740
-
2741
- - `CHAT_END_MESSAGE`: Indicates the end of the chat session.
2742
- inline: true
2743
- source:
2744
- openapi: evi-openapi.json
2745
- ReturnChatEvent:
2746
- docs: A description of a single event in a chat returned from the server
2747
- properties:
2748
- id:
2749
- type: string
2750
- docs: Identifier for a Chat Event. Formatted as a UUID.
2751
- chat_id:
2752
- type: string
2753
- docs: Identifier for the Chat this event occurred in. Formatted as a UUID.
2754
- timestamp:
2755
- type: long
2756
- docs: >-
2757
- Time at which the Chat Event occurred. Measured in seconds since the
2758
- Unix epoch.
2759
- role:
2760
- type: ReturnChatEventRole
2761
- docs: >-
2762
- The role of the entity which generated the Chat Event. There are four
2763
- possible values:
2764
-
2765
- - `USER`: The user, capable of sending user messages and
2766
- interruptions.
2767
-
2768
- - `AGENT`: The assistant, capable of sending agent messages.
2769
-
2770
- - `SYSTEM`: The backend server, capable of transmitting errors.
2771
-
2772
- - `TOOL`: The function calling mechanism.
2773
- type:
2774
- type: ReturnChatEventType
2775
- docs: >-
2776
- Type of Chat Event. There are eleven Chat Event types:
2777
-
2778
- - `SYSTEM_PROMPT`: The system prompt used to initialize the session.
2779
-
2780
- - `CHAT_START_MESSAGE`: Marks the beginning of the chat session.
2781
-
2782
- - `USER_RECORDING_START_MESSAGE`: Marks when the client began
2783
- streaming audio and the start of audio processing.
2784
-
2785
- - `USER_MESSAGE`: A message sent by the user.
2786
-
2787
- - `USER_INTERRUPTION`: A user-initiated interruption while the
2788
- assistant is speaking.
2789
-
2790
- - `AGENT_MESSAGE`: A response generated by the assistant.
2791
-
2792
- - `FUNCTION_CALL`: A record of a tool invocation by the assistant.
2793
-
2794
- - `FUNCTION_CALL_RESPONSE`: The result of a previously invoked
2795
- function or tool.
2796
-
2797
- - `PAUSE_ONSET`: Marks when the client sent a
2798
- `pause_assistant_message` to pause the assistant.
2799
-
2800
- - `RESUME_ONSET`: Marks when the client sent a
2801
- `resume_assistant_message` to resume the assistant.
2802
-
2803
- - `CHAT_END_MESSAGE`: Indicates the end of the chat session.
2804
- message_text:
2805
- type: optional<string>
2806
- docs: >-
2807
- The text of the Chat Event. This field contains the message content
2808
- for each event type listed in the `type` field.
2809
- emotion_features:
2810
- type: optional<string>
2811
- docs: >-
2812
- Stringified JSON containing the prosody model inference results.
2813
-
2814
-
2815
- EVI uses the prosody model to measure 48 expressions related to speech
2816
- and vocal characteristics. These results contain a detailed emotional
2817
- and tonal analysis of the audio. Scores typically range from 0 to 1,
2818
- with higher values indicating a stronger confidence level in the
2819
- measured attribute.
2820
- metadata:
2821
- type: optional<string>
2822
- docs: Stringified JSON with additional metadata about the chat event.
2823
- source:
2824
- openapi: evi-openapi.json
2825
- ReturnConfigSpec:
2826
- docs: The Config associated with this Chat.
2827
- properties:
2828
- id:
2829
- type: string
2830
- docs: Identifier for a Config. Formatted as a UUID.
2831
- version:
2832
- type: optional<integer>
2833
- docs: >-
2834
- Version number for a Config.
2835
-
2836
-
2837
- Configs, Prompts, Custom Voices, and Tools are versioned. This
2838
- versioning system supports iterative development, allowing you to
2839
- progressively refine configurations and revert to previous versions if
2840
- needed.
2841
-
2842
-
2843
- Version numbers are integer values representing different iterations
2844
- of the Config. Each update to the Config increments its version
2845
- number.
2846
- source:
2847
- openapi: evi-openapi.json
2848
- ReturnChatGroup:
2849
- docs: A description of chat_group and its status
2850
- properties:
2851
- id:
2852
- type: string
2853
- docs: >-
2854
- Identifier for the Chat Group. Any Chat resumed from this Chat Group
2855
- will have the same `chat_group_id`. Formatted as a UUID.
2856
- first_start_timestamp:
2857
- type: long
2858
- docs: >-
2859
- Time at which the first Chat in this Chat Group was created. Measured
2860
- in seconds since the Unix epoch.
2861
- most_recent_start_timestamp:
2862
- type: long
2863
- docs: >-
2864
- Time at which the most recent Chat in this Chat Group was created.
2865
- Measured in seconds since the Unix epoch.
2866
- most_recent_chat_id:
2867
- type: optional<string>
2868
- docs: >-
2869
- The `chat_id` of the most recent Chat in this Chat Group. Formatted as
2870
- a UUID.
2871
- most_recent_config: optional<ReturnConfigSpec>
2872
- num_chats:
2873
- type: integer
2874
- docs: The total number of Chats in this Chat Group.
2875
- active:
2876
- type: optional<boolean>
2877
- docs: >-
2878
- Denotes whether there is an active Chat associated with this Chat
2879
- Group.
2880
- source:
2881
- openapi: evi-openapi.json
2882
- PostedEventMessageSpec:
2883
- docs: Settings for a specific event_message to be posted to the server
2884
- properties:
2885
- enabled:
2886
- type: boolean
2887
- docs: >-
2888
- Boolean indicating if this event message is enabled.
2889
-
2890
-
2891
- If set to `true`, a message will be sent when the circumstances for
2892
- the specific event are met.
2893
- text:
2894
- type: optional<string>
2895
- docs: >-
2896
- Text to use as the event message when the corresponding event occurs.
2897
- If no text is specified, EVI will generate an appropriate message
2898
- based on its current context and the system prompt.
2899
- source:
2900
- openapi: evi-openapi.json
2901
- PostedTimeoutSpec:
2902
- docs: Settings for a specific timeout to be posted to the server
2903
- properties:
2904
- enabled:
2905
- type: boolean
2906
- docs: Boolean indicating if this event message is enabled.
2907
- duration_secs:
2908
- type: optional<integer>
2909
- docs: Duration in seconds for the timeout.
2910
- source:
2911
- openapi: evi-openapi.json
2912
- ReturnEventMessageSpec:
2913
- docs: A specific event message configuration to be returned from the server
2914
- properties:
2915
- enabled:
2916
- type: boolean
2917
- docs: >-
2918
- Boolean indicating if this event message is enabled.
2919
-
2920
-
2921
- If set to `true`, a message will be sent when the circumstances for
2922
- the specific event are met.
2923
- text:
2924
- type: optional<string>
2925
- docs: >-
2926
- Text to use as the event message when the corresponding event occurs.
2927
- If no text is specified, EVI will generate an appropriate message
2928
- based on its current context and the system prompt.
2929
- source:
2930
- openapi: evi-openapi.json
2931
- ReturnTimeoutSpec:
2932
- docs: A specific timeout configuration to be returned from the server
2933
- properties:
2934
- enabled:
2935
- type: boolean
2936
- docs: >-
2937
- Boolean indicating if this timeout is enabled.
2938
-
2939
-
2940
- If set to false, EVI will not timeout due to a specified duration
2941
- being reached. However, the conversation will eventually disconnect
2942
- after 1,800 seconds (30 minutes), which is the maximum WebSocket
2943
- duration limit for EVI.
2944
- duration_secs:
2945
- type: optional<integer>
2946
- docs: >-
2947
- Duration in seconds for the timeout (e.g. 600 seconds represents 10
2948
- minutes).
2949
- source:
2950
- openapi: evi-openapi.json
2951
- VoiceRef:
2952
- discriminated: false
2953
- union:
2954
- - type: VoiceId
2955
- - type: VoiceName
2956
- source:
2957
- openapi: evi-openapi.json
2958
- ReturnVoice:
2959
- docs: An Octave voice available for text-to-speech
2960
- properties:
2961
- id: optional<string>
2962
- name: optional<string>
2963
- provider: optional<VoiceProvider>
2964
- source:
2965
- openapi: evi-openapi.json
2966
- VoiceProvider:
2967
- enum:
2968
- - HUME_AI
2969
- - CUSTOM_VOICE
2970
- source:
2971
- openapi: evi-openapi.json