Meldport
heygen · Audio

HeyGen Voice 1.0

Audio model · Available upstream

Text-to-speech with public voices and instant voice cloning from a single recording

Generation is available through the published Meldport configurations below. Review the exact quote before submitting.

Model ID
heygen-voice-1-0
Released
Oct 22, 2026
Billing unit
Characters

Meldport generation prices

HeyGen Voice 1.0

API configuration ID10212dca-f579-463e-b566-6ac1a7264177

text to audio

Text rateMeldport $0.036/ 1K characters

Final quote depends on text length. Check the exact quote before generating.

Variable billing details
API request and parameters

Use audio:generate on your API key. This configuration runs text to audio and returns audio/mpeg.

This configuration does not require an uploaded image. Choose a different configuration ID to change the workflow or output settings. Send only options listed below.

allowed_optionsJSON
{
  "voice": {
    "enum": [
      "fca00394b42949c2a939acd456e3291f",
      "41f17b4ebd334ac99a91c2aada5f86d7",
      "69a83c97b51a4bb5a3d0fb0ce1699431",
      "3195f3da04c94984a0a77a4b757c8119",
      "5f9c155f4108437f970c308c95b06e11",
      "6ab7f456be114a109f8c8006567f638c",
      "826be797681d4b1a92042b54b3c75c64",
      "9b71011176ac49ee8d0936c36566d665",
      "660022d4c7ff428cbb5787685e8df571",
      "f415c3cd23db47c1b4fe834387d26449",
      "7e48c8d406b04a8089c5eb3cd057cb2e",
      "d322a996ccc54505a170d5f9db7fd7dd",
      "049413e41c334753984c294d694afb5c",
      "880609d7e76e4360ba44e65f0774d4e6",
      "aa9746e325ff46d482a54fe5bc87890f",
      "83548de556df48ba8c09c42a57c51d85",
      "48476d5a314943149b9522fb666b128a",
      "7bb4df56d7714d33bb88ed1dde8128f6",
      "75300849b571414c8d62693289cb6509",
      "8be9884ebd16499fbe0efb274e769ed5",
      "95fae2bb58b647c58ea32e6667f86b0e",
      "a6752292cd204ac4a80a25fb575b1327",
      "f43e55ae9fb540c6b62e23081c951748",
      "742d54da82fb46a8be11480d9ec6e3c3"
    ],
    "type": "string",
    "labels": {
      "049413e41c334753984c294d694afb5c": "Lucian",
      "3195f3da04c94984a0a77a4b757c8119": "Elowen",
      "41f17b4ebd334ac99a91c2aada5f86d7": "Cecily",
      "48476d5a314943149b9522fb666b128a": "Noelle",
      "5f9c155f4108437f970c308c95b06e11": "Ewan",
      "660022d4c7ff428cbb5787685e8df571": "Iona",
      "69a83c97b51a4bb5a3d0fb0ce1699431": "Corinne",
      "6ab7f456be114a109f8c8006567f638c": "Felicity",
      "742d54da82fb46a8be11480d9ec6e3c3": "Weston",
      "75300849b571414c8d62693289cb6509": "Sabrina",
      "7bb4df56d7714d33bb88ed1dde8128f6": "Rory",
      "7e48c8d406b04a8089c5eb3cd057cb2e": "Jonah",
      "826be797681d4b1a92042b54b3c75c64": "Gareth",
      "83548de556df48ba8c09c42a57c51d85": "Nadine",
      "880609d7e76e4360ba44e65f0774d4e6": "Marielle",
      "8be9884ebd16499fbe0efb274e769ed5": "Simon",
      "95fae2bb58b647c58ea32e6667f86b0e": "Soren",
      "9b71011176ac49ee8d0936c36566d665": "Hugh",
      "a6752292cd204ac4a80a25fb575b1327": "Tabitha",
      "aa9746e325ff46d482a54fe5bc87890f": "Meredith",
      "d322a996ccc54505a170d5f9db7fd7dd": "Kieran",
      "f415c3cd23db47c1b4fe834387d26449": "Jocelyn",
      "f43e55ae9fb540c6b62e23081c951748": "Vincent",
      "fca00394b42949c2a939acd456e3291f": "Bram"
    },
    "required": true,
    "maxLength": 100
  },
  "language": {
    "enum": [
      "ar",
      "be",
      "bg",
      "ca",
      "cs",
      "da",
      "de",
      "el",
      "en",
      "es",
      "fa",
      "fi",
      "fr",
      "he",
      "hi",
      "hr",
      "hu",
      "id",
      "it",
      "ja",
      "ko",
      "mk",
      "ms",
      "nl",
      "pl",
      "pt",
      "ro",
      "ru",
      "sk",
      "sl",
      "sr",
      "sv",
      "ta",
      "th",
      "tl",
      "tr",
      "uk",
      "vi",
      "zh"
    ],
    "type": "string",
    "required": false,
    "maxLength": 10
  }
}

Replace the prompt and set a unique MELDPORT_IDEMPOTENCY_KEY for this operation. The example quotes the request and then creates one paid job. Read the billing rules before accepting variable charges.

generate.mjsJavaScript
const api = "https://api.meldport.com";
const key = process.env.MELDPORT_API_KEY;
const idempotencyKey = process.env.MELDPORT_IDEMPOTENCY_KEY;
if (!key || !idempotencyKey) throw new Error("Set your API key and a unique operation ID first.");

async function post(path, body) {
  const response = await fetch(api + path, {method: "POST",
    headers: {Authorization: `Bearer ${key}`, "Content-Type": "application/json"},
    body: JSON.stringify(body)});
  const result = await response.json();
  if (!response.ok) throw new Error(JSON.stringify(result.error));
  return result;
}

const request = {
  "configuration_id": "10212dca-f579-463e-b566-6ac1a7264177",
  "prompt": "Replace with your prompt or speech script.",
  "options": {
    "voice": "fca00394b42949c2a939acd456e3291f"
  },
  "input_asset_ids": []
};
const {data: quote} = await post("/v1/media/quotes", request);
console.log("Quote:", quote);
const result = await post("/v1/media/jobs", {
  ...request, idempotency_key: idempotencyKey,
  accepted_customer_price_microusd: quote.customer_price_microusd,
  accepted_maximum_reservation_microusd: quote.maximum_reservation_microusd,
  ...(quote.billing_policy_version === "actual-cost-v1"
    ? {billing_policy_version: "actual-cost-v1"} : {}),
});
console.log(result.job);
// Poll GET /v1/media/jobs/<job.id> with the same API key.
// Keep this operation ID for retries. A new ID requests another generation.

Poll the returned job ID. Download only after state is succeeded and billing_state is settled. Polling and download example.

About this model

HeyGen Voice 1.0 is HeyGen's text-to-speech model for spoken audio in 39 languages, with the language detected from the text when none is set. It speaks with a public voice or clones a new one from a single recording, and returns the cloned voice so later requests can reuse it. It suits voiceovers, narration for training and product videos, and localized content.

  • text to audio
  • audio to audio
  • checkpoint