Hume AI
App · Voice AI · 13 actions
Give your workflows a voice with Hume's Octave speech model: read any text aloud in a voice from Hume's library, design a new voice by describing it, or re-speak a recording in another voice. Then read back the conversations people have had with your Hume voice agents, with transcripts that carry what was said and how it sounded.
Actions
| Action | What it does |
|---|---|
| Change the voice in a recording | Re-speak an existing recording in another voice, keeping the original timing, emphasis and feeling. |
| Create a voice from a description | Describe a voice in words and Hume builds it, saves it under the name you give, and returns a sample so you can hear it. |
| Delete a saved voice | Permanently delete one of this account's saved voices. |
| Get a conversation recording | Save the audio of a conversation as a file. |
| Get a conversation transcript | Read back everything said in one conversation, turn by turn, with the three strongest expressions heard in each one. |
| Get a thread transcript | Read everything said across every conversation in a thread, in order, with the expressions heard in each turn. |
| Get a voice agent | Read a voice agent's current settings: the voice it speaks in, the instructions it follows, how it greets people and what it is allowed to do. |
| List conversation threads | When someone picks up where they left off, Hume keeps the conversations together as a thread. |
| List conversations | List the conversations people have had with this account's voice agents, newest first, with how each one ended and how long it ran. |
| List the conversations in a thread | List every conversation in one thread, newest first, so you can see how often someone came back and how each visit went. |
| List voice agents | List the voice agents set up on this account, with the voice each one speaks in and when it was last changed. |
| List voices | List the voices this account can speak with: the ones saved in the account, or the ones in Hume's library. |
| Turn text into speech | Read text aloud in a voice you choose and save it as an audio file. |
Change the voice in a recording
Re-speak an existing recording in another voice, keeping the original timing, emphasis and feeling. The recording has to be speech, between 12 seconds and three minutes long.
Inputs
- Recording
recordingtextRequired - The speech to re-voice: upload an MP3, WAV, M4A or OGG file, or use one an earlier step produced.
- Voice
voicetextRequired - The voice to speak in. The list holds your own saved voices and every voice in Hume's library. You can also type the name of one of your saved voices.
- Audio file type
audio_formattext - MP3 is small and plays anywhere. Choose WAV when the audio is going into editing software.One of:
mp3(MP3 (recommended)),wav(WAV (uncompressed)). Default:mp3.
Outputs
content_typetext- The file's type.
document_reftext- The saved file's reference.
documentslist- The saved audio file, ready for a later step to use.
duration_secondsnumber- How long the audio runs, in seconds.
filenametext- The file's name.
size_bytesnumber- The file's size.
spoken_texttext- The words as they were actually spoken.
urltext- Where the file can be played.
voicetext- The voice that spoke.
Example output
{
"content_type": "audio/mpeg",
"document_ref": "doc_01HZX8Q2F6",
"documents": [
{
"content_type": "audio/mpeg",
"document_ref": "doc_01HZX8Q2F6",
"filename": "hume-converted.mp3",
"size_bytes": 240118,
"url": "/actions/core/serve-document/doc_01HZX8Q2F6"
}
],
"filename": "hume-converted.mp3",
"size_bytes": 240118,
"url": "/actions/core/serve-document/doc_01HZX8Q2F6",
"voice": "f898a92e-685f-43fa-985b-a46920f0650b"
}Create a voice from a description
Describe a voice in words and Hume builds it, saves it under the name you give, and returns a sample so you can hear it. The saved voice can then be chosen in any speaking step.
Inputs
- Name it
nametextRequired - What to call this voice. You will pick it by this name later, so make it recognisable, such as 'Support line greeting'.
- Describe the voice
descriptiontextRequired - What the voice should sound like: age, accent, pace and character. For example, 'a calm woman in her forties with a soft Scottish accent, speaking slowly and reassuringly'.
- Sample words
sample_texttext - What the sample should say. Use a line the voice will really be used for, so the sample is a fair test.Default:
Hello! This is what I sound like. I can be warm and calm, or bright and quick, depending on what you need..
Outputs
content_typetext- The file's type.
document_reftext- The sample file's reference.
documentslist- The sample, saved as an audio file.
duration_secondsnumber- How long the sample runs, in seconds.
filenametext- The file's name.
sample_texttext- The words the sample speaks.
size_bytesnumber- The file's size.
urltext- Where the sample can be played.
voiceobject- The saved voice: its name, its id, and the value to put in a Voice field.
Example output
{
"content_type": "audio/mpeg",
"document_ref": "doc_01HZX8Q2F5",
"documents": [
{
"content_type": "audio/mpeg",
"document_ref": "doc_01HZX8Q2F5",
"filename": "hume-voice-support-line-greeting.mp3",
"size_bytes": 61240,
"url": "/actions/core/serve-document/doc_01HZX8Q2F5"
}
],
"duration_seconds": 6.8,
"filename": "hume-voice-support-line-greeting.mp3",
"sample_text": "Hello! This is what I sound like.",
"size_bytes": 61240,
"url": "/actions/core/serve-document/doc_01HZX8Q2F5",
"voice": {
"id": "c42352c0-4566-455d-b180-0f654b65b525",
"library": "Your saved voices",
"name": "Support line greeting",
"value": "CUSTOM_VOICE:c42352c0-4566-455d-b180-0f654b65b525"
}
}Delete a saved voice
Permanently delete one of this account's saved voices. Voices from Hume's library belong to everyone and cannot be deleted. Any workflow still using the voice will stop speaking.
Inputs
- Voice
nametextRequired - The saved voice to delete, by name.
Outputs
deletedtrue/false- True once the voice is gone.
nametext- The voice that was deleted.
Example output
{
"deleted": true,
"name": "Support line greeting"
}Get a conversation recording
Save the audio of a conversation as a file. Hume rebuilds the recording after the conversation ends, which takes a minute or two, so check 'is_ready' and try again after a Wait step if it is still being put together.
Inputs
- Conversation
conversation_idtextRequired - The conversation's id, as given back by 'List conversations'.
Outputs
content_typetext- The file's type.
conversation_idtext- The conversation the recording is of.
document_reftext- The saved file's reference.
documentslist- The saved recording, or nothing at all while it is not ready.
filenametext- The file's name.
is_readytrue/false- True when the recording was saved, false while Hume is still putting it together.
size_bytesnumber- The file's size.
statustext- What Hume says about the recording.
urltext- Where the recording can be played.
Example output
{
"content_type": "audio/mp4",
"conversation_id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"document_ref": "doc_01HZX8Q2F7",
"documents": [
{
"content_type": "audio/mp4",
"document_ref": "doc_01HZX8Q2F7",
"filename": "hume-conversation.mp4",
"size_bytes": 512044,
"url": "/actions/core/serve-document/doc_01HZX8Q2F7"
}
],
"filename": "hume-conversation.mp4",
"is_ready": true,
"size_bytes": 512044,
"status": "COMPLETE",
"url": "/actions/core/serve-document/doc_01HZX8Q2F7"
}Get a conversation transcript
Read back everything said in one conversation, turn by turn, with the three strongest expressions heard in each one. It also comes back as plain text, ready for an AI step to summarise.
Inputs
- Conversation
conversation_idtextRequired - The conversation's id, as given back by 'List conversations'.
- Include behind-the-scenes events
include_system_eventstrue/false - Also return the instructions the agent was given, the tools it called and the pauses in between. Off by default, so the transcript reads as a conversation.Default:
false.
Outputs
duration_secondsnumber- How long it ran, in seconds.
ended_attext- When it ended.
idtext- The conversation's id.
message_countnumber- How many turns were returned.
messageslist- Every turn in order, with who spoke, what they said, when, and the three strongest expressions heard in their voice.
started_attext- When it started.
statustext- How the conversation ended.
thread_idtext- The thread this conversation belongs to.
transcripttext- The whole conversation as plain text, ready to summarise.
turn_countnumber- How many events Hume recorded.
voice_agent_idtext- The voice agent that answered.
Example output
{
"duration_seconds": 18,
"ended_at": "2026-05-20T21:22:38Z",
"id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"message_count": 1,
"messages": [
{
"conversation_id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"expressions": [
{
"name": "Joy",
"score": 0.2964
},
{
"name": "Surprise (positive)",
"score": 0.2161
},
{
"name": "Interest",
"score": 0.2142
}
],
"said_at": "2026-05-20T21:22:36Z",
"speaker": "Person",
"text": "Hello.",
"type": "USER_MESSAGE"
}
],
"started_at": "2026-05-20T21:22:20Z",
"status": "USER_ENDED",
"thread_id": "9fc18597-3567-42d5-94d6-935bde84bf2f",
"transcript": "Person: Hello.",
"turn_count": 6,
"voice_agent_id": "1b60e1a0-cc59-424a-8d2c-189d354db3f3"
}Get a thread transcript
Read everything said across every conversation in a thread, in order, with the expressions heard in each turn. Use it to catch up on someone's whole history in one step.
Inputs
- Thread
thread_idtextRequired - The thread's id, as given back by 'List conversation threads'.
- Include behind-the-scenes events
include_system_eventstrue/false - Also return the instructions the agent was given, the tools it called and the pauses in between. Off by default, so the transcript reads as a conversation.Default:
false.
Outputs
message_countnumber- How many turns were returned.
messageslist- Every turn in order, with who spoke, what they said, when, and the three strongest expressions heard in their voice.
thread_idtext- The thread that was read.
transcripttext- The whole conversation as plain text, ready to summarise.
Example output
{
"message_count": 1,
"messages": [
{
"conversation_id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"expressions": [
{
"name": "Joy",
"score": 0.2964
},
{
"name": "Surprise (positive)",
"score": 0.2161
},
{
"name": "Interest",
"score": 0.2142
}
],
"said_at": "2026-05-20T21:22:36Z",
"speaker": "Person",
"text": "Hello.",
"type": "USER_MESSAGE"
}
],
"thread_id": "9fc18597-3567-42d5-94d6-935bde84bf2f",
"transcript": "Person: Hello."
}Get a voice agent
Read a voice agent's current settings: the voice it speaks in, the instructions it follows, how it greets people and what it is allowed to do.
Inputs
- Voice agent
voice_agenttextRequired - The voice agent to read.
Outputs
created_attext- When it was created.
evi_versiontext- Which version of EVI it runs on.
greetingtext- What it says when a conversation starts.
idtext- The voice agent's id.
instructionstext- What it has been told to do.
language_modeltext- The model behind its answers.
nametext- Its name.
toolslist- What it is allowed to do during a call.
updated_attext- When it was last changed.
versionnumber- Which version of it this is.
voice_nametext- The voice it speaks in.
Example output
{
"created_at": "2026-04-02T09:14:00Z",
"evi_version": "3",
"greeting": "Hi there, how can I help with the weather today?",
"id": "1b60e1a0-cc59-424a-8d2c-189d354db3f3",
"instructions": "You are an AI weather assistant.",
"language_model": "claude-sonnet-4-5",
"name": "Weather assistant",
"tools": [
"get_current_weather"
],
"updated_at": "2026-05-19T16:40:12Z",
"version": 2,
"voice_name": "Ava Song"
}List conversation threads
When someone picks up where they left off, Hume keeps the conversations together as a thread. This lists those threads, most recently active first, with how many conversations are in each.
Inputs
- Voice agent
voice_agenttext - Only include threads with this voice agent. Leave empty for all of them.
- Last spoken on or after
last_talked_on_or_afterdate and time - Only include threads whose most recent conversation started at or after this time.
- Last spoken on or before
last_talked_on_or_beforedate and time - Only include threads whose most recent conversation started before this time.
- How many to return
limitnumber - The most results to return.From 1 to 200. Default:
25.
Outputs
thread_countnumber- How many threads were returned.
threadslist- One entry per thread.
Example output
{
"thread_count": 1,
"threads": [
{
"conversation_count": 3,
"first_talked_at": "2026-05-18T14:02:11Z",
"id": "9fc18597-3567-42d5-94d6-935bde84bf2f",
"is_active": false,
"last_talked_at": "2026-05-20T21:22:20Z",
"most_recent_conversation_id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"voice_agent_id": "1b60e1a0-cc59-424a-8d2c-189d354db3f3"
}
]
}List conversations
List the conversations people have had with this account's voice agents, newest first, with how each one ended and how long it ran.
Inputs
- Voice agent
voice_agenttext - Only include conversations with this voice agent. Leave empty for all of them.
- How it ended
statustext - Only include conversations that ended this way.One of:
ACTIVE(Still going),USER_ENDED(The person hung up),USER_TIMEOUT(The person stopped responding),MAX_DURATION_TIMEOUT(Reached the time limit),INACTIVITY_TIMEOUT(Went quiet and timed out),ERROR(Ended with an error). - Started on or after
started_on_or_afterdate and time - Only include conversations from this time onwards.
- Started on or before
started_on_or_beforedate and time - Only include conversations from before this time.
- How many to return
limitnumber - The most results to return.From 1 to 200. Default:
25.
Outputs
conversation_countnumber- How many conversations were returned.
conversationslist- One entry per conversation, newest first.
thread_idtext- The thread these conversations belong to.
Example output
{
"conversation_count": 1,
"conversations": [
{
"duration_seconds": 18,
"ended_at": "2026-05-20T21:22:38Z",
"id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"started_at": "2026-05-20T21:22:20Z",
"status": "USER_ENDED",
"thread_id": "9fc18597-3567-42d5-94d6-935bde84bf2f",
"turn_count": 6,
"voice_agent_id": "1b60e1a0-cc59-424a-8d2c-189d354db3f3"
}
]
}List the conversations in a thread
List every conversation in one thread, newest first, so you can see how often someone came back and how each visit went.
Inputs
- Thread
thread_idtextRequired - The thread's id, as given back by 'List conversation threads'.
- How it ended
statustext - Only include conversations that ended this way.One of:
ACTIVE(Still going),USER_ENDED(The person hung up),USER_TIMEOUT(The person stopped responding),MAX_DURATION_TIMEOUT(Reached the time limit),INACTIVITY_TIMEOUT(Went quiet and timed out),ERROR(Ended with an error). - How many to return
limitnumber - The most results to return.From 1 to 200. Default:
25.
Outputs
conversation_countnumber- How many conversations were returned.
conversationslist- One entry per conversation, newest first.
thread_idtext- The thread these conversations belong to.
Example output
{
"conversation_count": 1,
"conversations": [
{
"duration_seconds": 18,
"ended_at": "2026-05-20T21:22:38Z",
"id": "470a49f6-1dec-4afe-8b61-035d3b2d63b0",
"started_at": "2026-05-20T21:22:20Z",
"status": "USER_ENDED",
"thread_id": "9fc18597-3567-42d5-94d6-935bde84bf2f",
"turn_count": 6,
"voice_agent_id": "1b60e1a0-cc59-424a-8d2c-189d354db3f3"
}
],
"thread_id": "9fc18597-3567-42d5-94d6-935bde84bf2f"
}List voice agents
List the voice agents set up on this account, with the voice each one speaks in and when it was last changed.
Inputs
- How many to return
limitnumber - The most results to return.From 1 to 200. Default:
25.
Outputs
voice_agent_countnumber- How many voice agents were returned.
voice_agentslist- One entry per voice agent.
Example output
{
"voice_agent_count": 1,
"voice_agents": [
{
"created_at": "2026-04-02T09:14:00Z",
"id": "1b60e1a0-cc59-424a-8d2c-189d354db3f3",
"language_model": "claude-sonnet-4-5",
"name": "Weather assistant",
"updated_at": "2026-05-19T16:40:12Z",
"version": 2,
"voice_name": "Ava Song"
}
]
}List voices
List the voices this account can speak with: the ones saved in the account, or the ones in Hume's library. Each entry carries the value to put in a Voice field.
Inputs
- Which voices
sourcetext - Where to list voices from.One of:
CUSTOM_VOICE(Your saved voices),HUME_AI(Hume's voice library). Default:CUSTOM_VOICE. - How many to return
limitnumber - The most results to return.From 1 to 200. Default:
25.
Outputs
voice_countnumber- How many voices were returned.
voiceslist- One entry per voice.
Example output
{
"voice_count": 1,
"voices": [
{
"id": "c42352c0-4566-455d-b180-0f654b65b525",
"library": "Your saved voices",
"name": "Support line greeting",
"value": "CUSTOM_VOICE:c42352c0-4566-455d-b180-0f654b65b525"
}
]
}Turn text into speech
Read text aloud in a voice you choose and save it as an audio file. Hume's Octave model reads for meaning, so a question sounds like a question and an apology sounds like one.
Inputs
- What to say
texttextRequired - The words to speak. Punctuation guides the delivery, so write it the way you would want it read.
- Voice
voicetextRequired - The voice to speak in. The list holds your own saved voices and every voice in Hume's library. You can also type the name of one of your saved voices.
- How to say it
acting_instructionstext - Direction for the delivery, such as 'warm and unhurried, like giving a friend good news'. Keep it under 100 characters. Leave empty for a natural read.
- Speaking speed
speednumber - 1 is the voice's natural pace. Below 1 is slower, above 1 is faster.From 0.75 to 1.5. Default:
1.0. - Audio file type
audio_formattext - MP3 is small and plays anywhere. Choose WAV when the audio is going into editing software.One of:
mp3(MP3 (recommended)),wav(WAV (uncompressed)). Default:mp3.
Outputs
content_typetext- The file's type.
document_reftext- The saved file's reference.
documentslist- The saved audio file, ready for a later step to use.
duration_secondsnumber- How long the audio runs, in seconds.
filenametext- The file's name.
size_bytesnumber- The file's size.
spoken_texttext- The words as they were actually spoken.
urltext- Where the file can be played.
voicetext- The voice that spoke.
Example output
{
"content_type": "audio/mpeg",
"document_ref": "doc_01HZX8Q2F4",
"documents": [
{
"content_type": "audio/mpeg",
"document_ref": "doc_01HZX8Q2F4",
"filename": "hume-speech.mp3",
"size_bytes": 84213,
"url": "/actions/core/serve-document/doc_01HZX8Q2F4"
}
],
"duration_seconds": 5.24,
"filename": "hume-speech.mp3",
"size_bytes": 84213,
"spoken_text": "Your order shipped this morning.",
"url": "/actions/core/serve-document/doc_01HZX8Q2F4",
"voice": "c42352c0-4566-455d-b180-0f654b65b525"
}