Murf AI
App · Voice AI · 15 actions
Turn text into lifelike voice-overs with Murf AI, re-voice existing recordings, translate copy, clone a voice, and dub video into other languages.
Actions
| Action | What it does |
|---|---|
| Change a project's languages | Set which languages a dubbing project produces. |
| Change the voice in a recording | Re-speak an existing recording in a Murf voice, keeping what was said. |
| Check a dubbing job | See how a dubbing job is going and get the download links for whatever is finished. |
| Check a voice clone | See whether a voice clone is ready, and get its voice id once it is. |
| Create a dubbing project | Create a project that dubbing jobs can be filed under, so they can be reviewed and edited together in Murf Dub. |
| Create a voice clone | Clone a voice from a sample recording. |
| Delete a cloned voice | Permanently delete a cloned voice from your workspace. |
| Dub a file into a project | Dub a file using an existing project's languages, so the result can be reviewed and edited in Murf Dub afterwards. |
| Dub a video or audio file | Dub one file into other languages. |
| Generate speech | Turn text into a voice-over and save it as an audio file a later step can attach, upload or post. |
| List cloned voices | List the voices this workspace has cloned, with the id Murf's real-time streaming model addresses each one by. |
| List dubbing languages | List the languages Murf Dub can dub into, or dub from. |
| List dubbing projects | List the dubbing projects on your Murf Dub account. |
| List voices | List the Murf voices available to your account, with the languages and styles each one offers. |
| Translate text | Translate text into one of Murf's 22 languages, ready to feed straight into 'Generate speech'. |
Change a project's languages
Set which languages a dubbing project produces. This replaces the project's current languages: any you leave out are removed.
Inputs
- Project
project_idtextRequired - Which dubbing project to use.
- Dub into
target_localeslistRequired - Which languages to produce. Pick as many as you need.
Outputs
projectobject- The project as it now stands.
statustext- Status of the action execution ("success" on success).
Example output
{
"project": {
"description": "Q4 launch",
"dubbing_type": "AUTOMATED",
"name": "Launch video",
"project_id": "prj_90ab",
"source_locale": "en-US",
"target_locales": [
"fr-FR",
"de-DE",
"ja-JP"
]
},
"status": "success"
}Change the voice in a recording
Re-speak an existing recording in a Murf voice, keeping what was said. Saves the result as an audio file.
Inputs
- Recording
audiotextRequired - The audio to re-voice: upload a file, pick one from an earlier step, or paste a public link.
- New voice
voice_idtextRequired - The Murf voice to speak the recording in.
- Language
localetext - Which of the voice's languages to speak in. Leave blank for the voice's own language.
- Speaking style
styletext - How the line is delivered: conversational, promo, newscast and so on. Styles differ by voice and language. Leave blank for the voice's usual delivery.
- Speed
speednumber - Faster or slower than the voice's natural pace. 0 leaves it alone.From -50 to 50.
- Pitch
pitchnumber - Higher or lower than the voice's natural pitch. 0 leaves it alone.From -50 to 50.
- Keep the original delivery
keep_deliverytrue/false - Follow the speaker's pauses, rhythm and emphasis instead of the voice's usual reading.
- Keep the original accent
keep_accenttrue/false - Hold on to the speaker's accent in the new voice.
- File format
audio_formattext - MP3 suits email and the web; WAV suits editing.One of:
MP3(MP3 · small file, plays anywhere),WAV(WAV · uncompressed, best for editing),FLAC(FLAC · lossless but smaller than WAV),ALAW(A-law · 8-bit telephony),ULAW(μ-law · 8-bit telephony). Default:MP3. - Audio quality
sample_ratenumber - Leave blank unless the audio is for a phone system or for video.One of:
8000(8 kHz · phone systems),24000(24 kHz · speech),44100(44.1 kHz · CD quality (Murf's default)),48000(48 kHz · video and broadcast).
Outputs
characters_remainingnumber- Characters left in this billing cycle.
content_typetext- Media type of the saved audio.
document_reftext- Reference to the saved audio, for a later step.
documentslist- The re-voiced audio, saved and ready to use.
duration_secondsnumber- How long the new recording runs.
filenametext- Name of the saved file.
size_bytesnumber- Size of the saved audio in bytes.
statustext- Status of the action execution ("success" on success).
urltext- Download link for the audio.
Example output
{
"characters_remaining": 94850,
"content_type": "audio/mpeg",
"document_ref": "doc_4b9e10",
"documents": [
{
"content_type": "audio/mpeg",
"document_ref": "doc_4b9e10",
"filename": "interview-murf.mp3",
"size_bytes": 251004,
"url": "/actions/core/serve-document/doc_4b9e10"
}
],
"duration_seconds": 22.8,
"filename": "interview-murf.mp3",
"size_bytes": 251004,
"status": "success",
"url": "/actions/core/serve-document/doc_4b9e10"
}Check a dubbing job
See how a dubbing job is going and get the download links for whatever is finished. Murf expires those links 72 hours after the job completes.
Inputs
- Dubbing job
job_idtextRequired - The job id a dubbing step handed back.
Outputs
credits_remainingnumber- Credits left on the account.
credits_usednumber- Credits this job has used.
downloadslist- One entry per language, with its links.
failure_reasontext- Why the job failed, when it did.
finishedtrue/false- True once the job has stopped moving.
job_idtext- The job checked.
job_statustext- Where the job has got to, e.g. COMPLETED.
project_idtext- The project it belongs to, if any.
statustext- Status of the action execution ("success" on success).
Example output
{
"credits_remaining": 99,
"credits_used": 1,
"downloads": [
{
"download_srt_url": "https://murf.ai/dub/job_1a2b3c/fr-FR.srt",
"download_url": "https://murf.ai/dub/job_1a2b3c/fr-FR.mp4",
"error_message": "",
"locale": "fr-FR",
"status": "COMPLETED"
}
],
"failure_reason": "",
"finished": true,
"job_id": "job_1a2b3c",
"job_status": "COMPLETED",
"project_id": "",
"status": "success"
}Check a voice clone
See whether a voice clone is ready, and get its voice id once it is.
Inputs
- Clone request
request_idtextRequired - The request id 'Create a voice clone' handed back.
Outputs
clone_statustext- QUEUED, PROCESSING, COMPLETED or FAILED.
messagetext- What Murf said, including why it failed.
readytrue/false- True once the clone can be used to speak.
request_idtext- The request checked.
statustext- Status of the action execution ("success" on success).
voice_idtext- The cloned voice's id, once it is ready.
Example output
{
"clone_status": "COMPLETED",
"message": "SUCCESS",
"ready": true,
"request_id": "3f0a9c2e",
"status": "success",
"voice_id": "cln_8d21f4"
}Create a dubbing project
Create a project that dubbing jobs can be filed under, so they can be reviewed and edited together in Murf Dub.
Inputs
- Project name
nametextRequired - What to call the project in Murf Dub.
- Dub into
target_localeslistRequired - Which languages to produce. Pick as many as you need.
- How it's dubbed
dubbing_typetext - Automated is AI only. Expert QA is reviewed by Murf's team and takes longer.One of:
AUTOMATED(Automated · AI translation, delivered fastest),QA(Expert QA · reviewed by Murf's team, and editable afterwards). Default:AUTOMATED. - Spoken language
source_localetext - The language spoken in what you're dubbing. Leave blank and Murf works it out.
- Description
descriptiontext - An optional note about what the project is for.
Outputs
projectobject- The project that was created.
statustext- Status of the action execution ("success" on success).
Example output
{
"project": {
"description": "Q4 launch",
"dubbing_type": "AUTOMATED",
"name": "Launch video",
"project_id": "prj_90ab",
"source_locale": "en-US",
"target_locales": [
"fr-FR",
"de-DE"
]
},
"status": "success"
}Create a voice clone
Clone a voice from a sample recording. Cloning takes a little while; follow it with 'Check a voice clone'. Murf plays cloned voices through its real-time streaming model only, so a clone will not appear in 'Generate speech'.
Inputs
- Name
nametextRequired - What to call the cloned voice in Murf.
- Voice sample
audiotextRequired - A clear recording of the voice, up to 40 MB: upload a file, pick one from an earlier step, or paste a public link.
Outputs
messagetext- What Murf said in reply.
nametext- The name the clone was given.
request_idtext- Give this to 'Check a voice clone'.
statustext- Status of the action execution ("success" on success).
tagtext- The unique tag Murf files the clone under.
Example output
{
"message": "Voice clone request accepted",
"name": "Sam",
"request_id": "3f0a9c2e",
"status": "success",
"tag": "sam-9a1b2c3d"
}Delete a cloned voice
Permanently delete a cloned voice from your workspace. This cannot be undone.
Inputs
- Cloned voice
voice_idtextRequired - Which cloned voice to delete.
Outputs
deletedtrue/false- True once Murf has removed the voice.
messagetext- What Murf said in reply.
statustext- Status of the action execution ("success" on success).
voice_idtext- The voice that was deleted.
Example output
{
"deleted": true,
"message": "SUCCESS",
"status": "success",
"voice_id": "cln_8d21f4"
}Dub a file into a project
Dub a file using an existing project's languages, so the result can be reviewed and edited in Murf Dub afterwards.
Inputs
- Project
project_idtextRequired - Which dubbing project to use.
- Video or audio
filetextRequired - The file to dub: upload one, pick one from an earlier step, or paste a public link.
Outputs
dubbing_typetext- AUTOMATED or QA.
file_nametext- The file being dubbed.
job_idtext- Give this to 'Check a dubbing job'.
project_idtext- The project the job was filed under.
source_localetext- The language Murf is dubbing from.
statustext- Status of the action execution ("success" on success).
target_localeslist- The languages the project produces.
warningtext- Anything Murf flagged about the job.
Example output
{
"dubbing_type": "AUTOMATED",
"file_name": "launch-video.mp4",
"job_id": "job_4d5e6f",
"project_id": "prj_90ab",
"source_locale": "en-US",
"status": "success",
"target_locales": [
"fr-FR"
],
"warning": ""
}Dub a video or audio file
Dub one file into other languages. Dubbing runs in the background; follow it with 'Check a dubbing job'. Needs a Murf Dub API key on this connection.
Inputs
- Video or audio
filetextRequired - The file to dub: upload one, pick one from an earlier step, or paste a public link.
- Dub into
target_localeslistRequired - Which languages to produce. Pick as many as you need.
- Spoken language
source_localetext - The language spoken in what you're dubbing. Leave blank and Murf works it out.
Outputs
dubbing_typetext- AUTOMATED or QA.
file_nametext- The file being dubbed.
job_idtext- Give this to 'Check a dubbing job'.
source_localetext- The language Murf is dubbing from.
statustext- Status of the action execution ("success" on success).
target_localeslist- The languages being produced.
warningtext- Anything Murf flagged about the job.
Example output
{
"dubbing_type": "AUTOMATED",
"file_name": "launch-video.mp4",
"job_id": "job_1a2b3c",
"source_locale": "en-US",
"status": "success",
"target_locales": [
"fr-FR",
"de-DE"
],
"warning": ""
}Generate speech
Turn text into a voice-over and save it as an audio file a later step can attach, upload or post.
Inputs
- What to say
texttextRequired - The script to read out. Add a pause with [pause 1s].
- Voice
voice_idtextRequired - Which Murf voice to speak in.
- Language
localetext - Which of the voice's languages to speak in. Leave blank for the voice's own language.
- Speaking style
styletext - How the line is delivered: conversational, promo, newscast and so on. Styles differ by voice and language. Leave blank for the voice's usual delivery.
- Speed
speednumber - Faster or slower than the voice's natural pace. 0 leaves it alone.From -50 to 50.
- Pitch
pitchnumber - Higher or lower than the voice's natural pitch. 0 leaves it alone.From -50 to 50.
- File format
audio_formattext - MP3 suits email and the web; WAV suits editing.One of:
MP3(MP3 · small file, plays anywhere),WAV(WAV · uncompressed, best for editing),FLAC(FLAC · lossless but smaller than WAV),OGG(OGG · open format, small file),PCM(PCM · raw audio, no container),ALAW(A-law · 8-bit telephony),ULAW(μ-law · 8-bit telephony). Default:MP3. - Audio quality
sample_ratenumber - Leave blank unless the audio is for a phone system or for video.One of:
8000(8 kHz · phone systems),24000(24 kHz · speech),44100(44.1 kHz · CD quality (Murf's default)),48000(48 kHz · video and broadcast).
Outputs
characters_remainingnumber- Characters left in this billing cycle.
content_typetext- Media type of the saved audio.
document_reftext- Reference to the saved audio, for a later step.
documentslist- The saved audio file, ready to attach.
duration_secondsnumber- How long the voice-over runs.
filenametext- Name of the saved file.
size_bytesnumber- Size of the saved audio in bytes.
statustext- Status of the action execution ("success" on success).
urltext- Download link for the audio.
Example output
{
"characters_remaining": 96120,
"content_type": "audio/mpeg",
"document_ref": "doc_7f1c2a",
"documents": [
{
"content_type": "audio/mpeg",
"document_ref": "doc_7f1c2a",
"filename": "murf-speech.mp3",
"size_bytes": 48213,
"url": "/actions/core/serve-document/doc_7f1c2a"
}
],
"duration_seconds": 4.2,
"filename": "murf-speech.mp3",
"size_bytes": 48213,
"status": "success",
"url": "/actions/core/serve-document/doc_7f1c2a"
}List cloned voices
List the voices this workspace has cloned, with the id Murf's real-time streaming model addresses each one by.
Inputs
None.
Outputs
countnumber- How many cloned voices were returned.
statustext- Status of the action execution ("success" on success).
voiceslist- The workspace's cloned voices.
Example output
{
"count": 1,
"status": "success",
"voices": [
{
"created_at": "2026-09-01T10:24:00Z",
"name": "Sam",
"tag": "sam-9a1b2c3d",
"voice_id": "cln_8d21f4"
}
]
}List dubbing languages
List the languages Murf Dub can dub into, or dub from.
Inputs
- Which list
directiontextRequired - Languages you can dub into, or languages Murf can read.One of:
into(Languages you can dub into),from(Languages you can dub from). Default:into.
Outputs
countnumber- How many languages were returned.
directiontext- Which list was read (into or from).
languageslist- The languages Murf Dub supports.
statustext- Status of the action execution ("success" on success).
Example output
{
"count": 1,
"direction": "into",
"languages": [
{
"language": "French",
"locale": "fr-FR",
"supports": [
"AUTOMATED",
"QA"
]
}
],
"status": "success"
}List dubbing projects
List the dubbing projects on your Murf Dub account.
Inputs
- Maximum results
limitnumber - How many projects to return. Defaults to Murf's own page size.From 1 to 100.
- Continue from
cursortext - To read the next page, use the 'next cursor' from the previous run. Leave blank to start at the beginning.
Outputs
countnumber- How many projects were returned.
next_cursortext- Pass this back as 'Continue from' for the next page.
projectslist- The projects on the account.
statustext- Status of the action execution ("success" on success).
Example output
{
"count": 1,
"next_cursor": "",
"projects": [
{
"description": "Q4 launch",
"dubbing_type": "AUTOMATED",
"name": "Launch video",
"project_id": "prj_90ab",
"source_locale": "en-US",
"target_locales": [
"fr-FR",
"de-DE"
]
}
],
"status": "success"
}List voices
List the Murf voices available to your account, with the languages and styles each one offers.
Inputs
- Language
localetext - Only list voices that speak this language. Leave blank for all of them.
Outputs
countnumber- How many voices were returned.
statustext- Status of the action execution ("success" on success).
voiceslist- The voices that matched.
Example output
{
"count": 1,
"status": "success",
"voices": [
{
"description": "Young Adult",
"gender": "Female",
"locale": "en-US",
"locales": [
"en-US",
"es-ES"
],
"name": "Natalie",
"styles": [
"Promo",
"Conversational",
"Newscast"
],
"voice_id": "en-US-natalie"
}
]
}Translate text
Translate text into one of Murf's 22 languages, ready to feed straight into 'Generate speech'.
Inputs
- Text
texttextRequired - What to translate, up to 4,000 characters.
- Translate into
target_languagetextRequired - The language to translate into.One of:
bn-IN(Bangla (India) (bn-IN)),zh-CN(Chinese, Mandarin (China) (zh-CN)),hr-HR(Croatian (Croatia) (hr-HR)),nl-NL(Dutch (Netherlands) (nl-NL)),en-AU(English (Australia) (en-AU)),en-IN(English (India) (en-IN)),en-SCOTT(English (Scotland) (en-SCOTT)),en-UK(English (UK) (en-UK)),en-US(English (US & Canada) (en-US)),fr-FR(French (France) (fr-FR)), and 12 more.
Outputs
credits_usednumber- Murf credits this translation used.
statustext- Status of the action execution ("success" on success).
target_languagetext- The language it was translated into.
translated_texttext- The translation.
translationslist- Each piece of text with its translation.
Example output
{
"credits_used": 1.5,
"status": "success",
"target_language": "es-ES",
"translated_text": "Hola, mundo.",
"translations": [
{
"source_text": "Hello, world.",
"translated_text": "Hola, mundo."
}
]
}