Azure batch takes 10,000 inputs per job; Sume sends one text per job

Azure batch synthesis accepts up to 10,000 text inputs in a 2 MB JSON body. Sume TTS 1.0 takes one transcript of up to 20,000 characters per job.

4 min readSume
All posts

Azure's batch synthesis API takes many text inputs in one job: the page says a request with more than 10,000 text inputs returns a 400, and the maximum JSON payload is 2 megabytes. Sume TTS 1.0 is one text per job: a single transcript of 1 to 20,000 characters. A batch of lines on Sume is a batch of jobs, each with its own result.

Azure's limits are from its batch synthesis page, read 2026-10-01; Sume's from the OpenAPI schema behind the API reference.

How do the two job shapes differ?

Azure groups inputs; Sume groups nothing.

Job shape for many lines of text, read 2026-10-01.
ItemAzure batch synthesisSume TTS 1.0
Inputs per requestUp to 10,000 text inputsOne transcript
Size limit2 MB JSON payload20,000 characters
ResultOne ZIP; files numbered in input orderOne job result per request
Job idYou choose it, 3 to 64 charactersSume assigns it

How do I send many lines to Sume?

One request per line or per paragraph, each with its own Idempotency-Key. The key makes a retry adopt the original job instead of paying twice, per the schema. A webhook URL on each request gets a signed terminal event, so you do not poll 500 jobs by hand.

curl -X POST https://api.sume.com/v1/tts-1.0/generate \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: batch-42-line-0007" \
  -d '{
    "transcript": "Line seven of the batch.",
    "avatar_handle": "@narrator",
    "mode": "async"
  }'

Do I get a combined file like an Azure ZIP?

Not from TTS. Each Sume job returns its own audio. To join lines into one gapless file, use Timeline audio concat, which takes 1 to 20 ordered parts of Sume-hosted audio; see joining voiceover in one render.

Which is easier for a thousand short lines?

Azure, if you want one submit and one download. Sume, if you want each line as its own addressable job with its own failure and retry. Neither source gives a throughput figure for this, so size a pilot of a few hundred lines before committing.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume