Tagata Atiina'e API

Tuufaatasia le fa'avasegaina o Addavox i lau faiga o galuega. Filifili le Fa'aliliuina o Vitio API mo le fa'avasegaina atoa o vitio fa'atasi ai ma le taimi, QA, ulutala, ma le avanoa atoa i le Iloiloga Faatonu e ala i so'otaga fa'ataulaitu. E mafai foi ona e filifilia so'o se tasi o API tautua mo isi galuega, e pei o le fa'amatalaina o se tusi po'o le fa'aliliuina ma le fa'amatalaina o se tusi i le taimi e tasi.

Ki API

O ki API e patino i se teugatupe Addavox. Fausia se tasi i le fa'amau Amata le fa'avasegaina i luga, ona faia lea o se ki i totonu o le app — o vala'au uma e totogi i lena teugatupe. Ina ia fausia ma fa'ata'ita'i se feso'ota'iga muamua, talosaga mo se ki sandbox i totonu o le app.

O auaunaga ta'ito'atasi API e totogi mai lau paleni aitalafu, lea e te fa'atumu ma pulea i lau teugatupe Addavox . O le tuusaunoaga o le vitio atoa o le fa'asalalauga: e fa'aogaina le tau tutusa e pei o le fuafuaga e te filifilia i Fuafuaga & Tau — o minute o lau fuafuaga e aofia ai, ona ova lea i le fua faatatau o le fuafuaga.

Fuafuaina se tu'ufa'atasiga? Fa'atulaga se vala'au fa'atasi (tatala i se tab fou)

URL Autu: https://api.addavox.com/api/v1

Ulutala Fa'amaonia: X- API -Ki: LAU_KI

API Fa'asinomaga

O lo'o maua le fa'atulagaga atoa o fegalegaleaiga ma isi fa'ai'uga fa'aopoopo e ala i le OpenAPI.

Full Video Localization

POST /api/v1/localize-video API key

Video Dubbing

Full video dubbing: send a video URL + target languages, get localized videos back.

Request body

FieldTypeRequiredDescription
video_urlstringYesHTTPS URL of the source video to dub.
target_languagesstring[]YesOne or more target language codes.
source_languagestringYesLanguage of the source video's spoken audio, e.g. 'en'.
project_namestring | nullNoOptional project name. Defaults to 'API Video: {filename}'.
enable_llm_qabooleanNoOpt-in LLM quality-review pass over translations before voice synthesis. Adds processing time.
modeLocalizationModeNoDrives consent. Default 'voice_matched' (voice matching: each speaker's tone and emotion carried into the target language); 'standard' uses preset synthetic voices.
consentConsentAttestationYesConsent attestation; see Consent & Authorization.

Response

FieldTypeDescription
job_idstringMaster job ID — poll for per-language status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
target_languagesstring[]Echoed target language codes.
ConsentAttestation
speaker_consent_obtainedboolean | nullAttests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only.
content_rights_confirmedbooleanAttests ownership or a valid license to the content. Required in both modes.
eula_acceptedbooleanConfirms the client has read and accepts the Addavox EULA. Required in both modes.
attested_bystringEmail or identifier of the responsible individual or system.
attested_atstringISO 8601 timestamp of attestation. Must be within 24 hours of the request.

API Services

POST /api/v1/separate API key

Voice Separation

Split caller-supplied audio into vocals + background stems (async job).

Request body

FieldTypeRequiredDescription
audio_urlstringYesHTTPS URL of the source audio to separate.
project_namestring | nullNoOptional project name.

Response

FieldTypeDescription
job_idstringPoll this job ID for status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
chargeChargeInfoBilling detail for this submission.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.
POST /api/v1/transcribe API key

Transcribe

Transcribe caller-supplied audio and return a transcript (async job).

Request body

FieldTypeRequiredDescription
audio_urlstringYesHTTPS URL of the source audio to transcribe.
languagestringYesSpoken language of the audio (BCP-47), e.g. 'en-US'.
project_namestring | nullNoOptional project name.

Response

FieldTypeDescription
job_idstringPoll this job ID for status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
chargeChargeInfoBilling detail for this submission.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.
POST /api/v1/pro-transcribe API key

Pro Transcription

Separate, then transcribe the isolated vocals stem — a cleaner transcript (async job).

Request body

FieldTypeRequiredDescription
audio_urlstringYesHTTPS URL of the source audio to transcribe.
languagestringYesSpoken language of the audio (BCP-47), e.g. 'en-US'.
project_namestring | nullNoOptional project name.

Response

FieldTypeDescription
job_idstringPoll this job ID for status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
chargeChargeInfoBilling detail for this submission.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.
POST /api/v1/translate API key

Translate

Machine-translate text from one language to another. Returns the translated text synchronously — no audio, no job to poll.

Request body

FieldTypeRequiredDescription
textstringYesText to translate.
target_languagestringYesTarget language code, e.g. 'es' or 'es-ES'.
source_languagestringYesSource language code, e.g. 'en' or 'en-US'.

Response

FieldTypeDescription
translated_textstringThe translated text.
source_languagestringSource language supplied on the request.
target_languagestringTarget language the text was translated into.
chargeChargeInfoBilling detail for this translation.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.

Example

curl -X POST https://api.addavox.com/api/v1/translate \
      -H "X-API-Key: $ADDAVOX_KEY" -H "Content-Type: application/json" \
      -d '{"text": "Hello", "target_language": "es"}'
POST /api/v1/narrate API key

Narrate

Narrate already-translated text into an audiobook, in a preset voice you choose. Preset (synth) voices only — no voice matching.

Request body

FieldTypeRequiredDescription
audio_urlstringYesHTTPS URL of the source audio; also used to identify/match speaker voices.
source_languagestringYesSource language code, e.g. 'en-US'.
target_languagestringYesTarget language code, e.g. 'es-ES'.
segmentsExternalSegment[]YesThe pre-segmented transcript to voice.
project_namestring | nullNoOptional project name. Defaults to 'API: {source}->{target}'.
consentConsentAttestationYesConsent attestation; see Consent & Authorization.

Response

FieldTypeDescription
job_idstringPoll this job ID for status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
voice_typestringVoice type resolved from the request mode.
total_segmentsintegerEchoed count of submitted segments.
chargeChargeInfoBilling detail for this submission.
ExternalSegment
source_textstringOriginal text for this segment.
start_timenumberSegment start, in seconds. Used for speaker-voice matching only, not output timing.
end_timenumberSegment end, in seconds. Used for speaker-voice matching only, not output timing.
wordsobject[]Word-level timing; defaults to empty.
speakerobject | nullSpeaker metadata for voice selection.
translated_textstring | nullPre-supplied translation. If provided, translation is skipped for this segment.
ConsentAttestation
speaker_consent_obtainedboolean | nullAttests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only.
content_rights_confirmedbooleanAttests ownership or a valid license to the content. Required in both modes.
eula_acceptedbooleanConfirms the client has read and accepts the Addavox EULA. Required in both modes.
attested_bystringEmail or identifier of the responsible individual or system.
attested_atstringISO 8601 timestamp of attestation. Must be within 24 hours of the request.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.
POST /api/v1/translate-narrate API key

Translate + Narrate — preset voice

Translate your text to the target language and narrate it in a preset voice. Source and target language must differ.

Request body

FieldTypeRequiredDescription
audio_urlstringYesHTTPS URL of the source audio; also used to identify/match speaker voices.
source_languagestringYesSource language code, e.g. 'en-US'.
target_languagestringYesTarget language code, e.g. 'es-ES'.
segmentsExternalSegment[]YesThe pre-segmented transcript to voice.
project_namestring | nullNoOptional project name. Defaults to 'API: {source}->{target}'.
consentConsentAttestationYesConsent attestation; see Consent & Authorization.

Response

FieldTypeDescription
job_idstringPoll this job ID for status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
voice_typestringVoice type resolved from the request mode.
total_segmentsintegerEchoed count of submitted segments.
chargeChargeInfoBilling detail for this submission.
ExternalSegment
source_textstringOriginal text for this segment.
start_timenumberSegment start, in seconds. Used for speaker-voice matching only, not output timing.
end_timenumberSegment end, in seconds. Used for speaker-voice matching only, not output timing.
wordsobject[]Word-level timing; defaults to empty.
speakerobject | nullSpeaker metadata for voice selection.
translated_textstring | nullPre-supplied translation. If provided, translation is skipped for this segment.
ConsentAttestation
speaker_consent_obtainedboolean | nullAttests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only.
content_rights_confirmedbooleanAttests ownership or a valid license to the content. Required in both modes.
eula_acceptedbooleanConfirms the client has read and accepts the Addavox EULA. Required in both modes.
attested_bystringEmail or identifier of the responsible individual or system.
attested_atstringISO 8601 timestamp of attestation. Must be within 24 hours of the request.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.
POST /api/v1/translate-narrate-matched API key

Translate + Narrate — matched voice

Translate your text to the target language and narrate it in a voice matched from an audio sample you provide. There is no minimum length; samples of about 3–5 seconds or more work best. Source and target language must differ.

Request body

FieldTypeRequiredDescription
audio_urlstringYesHTTPS URL of the source audio; also used to identify/match speaker voices.
source_languagestringYesSource language code, e.g. 'en-US'.
target_languagestringYesTarget language code, e.g. 'es-ES'.
segmentsExternalSegment[]YesThe pre-segmented transcript to voice.
project_namestring | nullNoOptional project name. Defaults to 'API: {source}->{target}'.
consentConsentAttestationYesConsent attestation; see Consent & Authorization.

Response

FieldTypeDescription
job_idstringPoll this job ID for status.
project_idstringThe project created for this job.
statusstringAlways 'queued' on submit.
voice_typestringVoice type resolved from the request mode.
total_segmentsintegerEchoed count of submitted segments.
chargeChargeInfoBilling detail for this submission.
ExternalSegment
source_textstringOriginal text for this segment.
start_timenumberSegment start, in seconds. Used for speaker-voice matching only, not output timing.
end_timenumberSegment end, in seconds. Used for speaker-voice matching only, not output timing.
wordsobject[]Word-level timing; defaults to empty.
speakerobject | nullSpeaker metadata for voice selection.
translated_textstring | nullPre-supplied translation. If provided, translation is skipped for this segment.
ConsentAttestation
speaker_consent_obtainedboolean | nullAttests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only.
content_rights_confirmedbooleanAttests ownership or a valid license to the content. Required in both modes.
eula_acceptedbooleanConfirms the client has read and accepts the Addavox EULA. Required in both modes.
attested_bystringEmail or identifier of the responsible individual or system.
attested_atstringISO 8601 timestamp of attestation. Must be within 24 hours of the request.
ChargeInfo
amountnumberTotal amount charged for this submission, in USD.
rate_per_minnumberPer-minute rate applied.
duration_minnumberBilled minutes (for text services, characters/1000).
num_languagesintegerNumber of target languages billed.
credit_balance_afternumberAccount credit balance after the charge, in USD.

Jobs & Results

GET /api/v1/jobs/{job_id} API key

Job Status

Check the status of an external localization job.

Response

FieldTypeDescription
job_idstringEchoes the job ID from the URL.
typestringJob type: voice | translate_voice | transcribe_translate_voice | video_dub.
statusstringqueued | running | completed | failed. For a video_dub job this is a true aggregate of its per-language children, not a per-child value.
total_segmentsintegerTotal segment count. Always 0 on a video_dub master job.
completed_segmentsintegerCompleted segment count. Always 0 on a video_dub master job.
errorstring | nullFailure message when status is 'failed'.
GET /api/v1/jobs/{job_id}/result API key

Job Result

Get the download URL for a completed external localization job.

Response

FieldTypeDescription
transcript_urlstring | null(Transcription job) Signed URL of the transcript JSON.
vocals_urlstring | null(Separation job) Signed URL of the vocals stem.
background_urlstring | null(Separation job) Signed URL of the background stem.
download_urlstring | nullSigned URL (24h). Single voice track for an audio job, or a zip of all languages for a video dub.
durationnumber | null(Audio job) Duration in seconds.
file_sizeinteger | null(Audio job) File size in bytes.
project_idstring | null(Video dub) The project ID.
review_urlstring | null(Video dub) Web review URL for the project.
languagesVideoJobResultLanguage[] | null(Video dub) Per-language result URLs.
VideoJobResultLanguage
languagestringTarget language code for this result.
video_urlstring | nullSigned URL of the dubbed video (24h expiry).
audio_urlstring | nullSigned URL of the dubbed audio track (24h expiry).
subtitle_urlstring | nullSigned URL of the subtitle file (24h expiry).
DELETE /api/v1/jobs/{job_id} API key

Cancel Job

Cancel a queued or running job and refund the charge to the account balance.

Response

FieldTypeDescription
job_idstringEchoes the cancelled job ID.
statusstringAlways 'cancelled'.
refunded_amountnumberAmount refunded for the undelivered work, in USD.
GET /api/v1/jobs API key

List Jobs

List localization jobs for the authenticated account. Query params: status — filter by queued | running | completed | failed | cancelled limit — max results (default 20, max 100) offset — pagination offset (default 0)

Response

FieldTypeDescription
jobsJobListItem[]The page of jobs, newest first.
totalintegerTotal jobs matching the query, across all pages.
limitintegerPage size used.
offsetintegerPage offset used.
JobListItem
job_idstringJob ID.
project_idstringProject the job belongs to.
typestringJob type.
target_languagestring | nullTarget language code, if applicable.
statusstringqueued | running | completed | failed | cancelled.
total_segmentsintegerTotal segment count.
completed_segmentsintegerCompleted segment count.
errorstring | nullFailure message when the job failed.
created_atstring | nullISO 8601 creation time.
started_atstring | nullISO 8601 start time, if started.
completed_atstring | nullISO 8601 completion time, if finished.
chargeJobListCharge | nullCharge summary, present if the job was billed.
GET /api/v1/jobs/{job_id}/webhooks API key

Webhook Log

Return the webhook delivery log for a job (all attempts, newest first).

Response

FieldTypeDescription
job_idstringEchoes the job ID from the URL.
deliveriesWebhookDelivery[]All delivery attempts for the job, newest first.
WebhookDelivery
idstring | nullDelivery attempt ID.
eventstring | nullEvent type delivered, e.g. 'job.completed'.
attemptinteger | nullAttempt number for this event.
status_codeinteger | nullHTTP status returned by the endpoint, if any.
errorstring | nullDelivery error, if the attempt failed.
delivered_atstring | nullISO 8601 time of the attempt.
POST /api/v1/jobs/{job_id}/webhooks/retry API key

Retry Webhook

Re-trigger webhook delivery for the most recent event on a job.

Response

FieldTypeDescription
statusstringAlways 'queued' — the event was re-queued for delivery.
eventstringThe event type that was re-queued.

Account & Reference

GET /api/v1/account API key

Account

Return credit balance and current plan for the authenticated account.

Response

FieldTypeDescription
account_idstringThe account's ID.
credit_balancenumberPrepaid credit balance, in USD.
plan_idstringCurrent plan ID, e.g. 'free', 'creator'.
plan_namestringHuman-readable plan name.
included_minutesintegerLocalization minutes included in the plan per period.
minutes_usednumberIncluded minutes used this period.
minutes_remainingnumberIncluded minutes remaining this period.
overage_ratenumberPer-minute overage rate once included minutes are exhausted, in USD.
billing_intervalstring | null'monthly' or 'annual'; null on the free plan.
subscription_statusstringSubscription status, e.g. 'active', 'past_due', 'free'.
GET /api/v1/voices API key

List Voices

Return available voices for a given language code. Query params: language — BCP-47 code, e.g. 'en-US', 'es-ES' (required) gender — optional filter: MALE | FEMALE

GET /api/v1/languages API key

List Languages

Return supported languages. Query params: detail — if true, include provider metadata per language

POST /api/v1/projects/{project_id}/reviewers API key

Invite Reviewer

Invite a reviewer to a project (API endpoint).

Request body

FieldTypeRequiredDescription
namestringYesReviewer's display name, used in the invite email.
emailstringYesWhere the magic-link invite is sent.
languagestringYesTarget language code the reviewer will edit.

Response

FieldTypeDescription
idstringNew reviewer ID.
namestringEchoed from the request.
emailstringEchoed from the request.
tokenstringMagic-link token, embedded in the emailed URL. Expires 7 days from creation.
expires_atstring | nullCurrently always null — not populated by this call.

Tau o Auaunaga API

E totogi auaunaga ta'itasi i le minute ma e le o se vaega o se fuafuaga — e te totogia na'o le mea e te vala'au i ai, i le fua fa'atatau e tasi e aunoa ma se fa'aitiitiga fa'aletausaga. E na'o le fa'asalalauga atoa o vitio e fa'avae i luga o minute o lo'o aofia i le fuafuaga. E tusa ma le 1,000 mata'itusi i le minute le aofa'i o auaunaga fa'avae i tusitusiga.

Auaunaga O le mea e te auina atu → o le mea e te mauaina Fua faatatau
Vavaeeseina o Leo Leo → leo mamā + pese i tua $0.02/min
Fa'aliliuga (STT) Leo → tusitusiga o le tusitusiga ma fa'ailoga ma le taimi e tusa ai ma upu $0.02/min
Fa'aliliuga Pro Leo → Vavaeeseina o Leo + Fa'aliliuga (STT), sili ona lelei mo leo pisapisao $0.05/min
Faaliliuga Tusitusiga → tusitusiga ua faaliliuina $0.02/min
Fa'amatala (TTS) Tusitusiga fa'aliliu → leo fa'amatala i se leo ua uma ona setiina e te filifilia $0.03/min
Faaliliu + Faamatala — leo ua uma ona setiina Tusitusiga → ua faaliliuina, ona faamatala lea i se leo ua uma ona faatulagaina. E tatau ona eseese le gagana na amata mai ai ma le gagana e faatatau i ai. $0.06/min
Faaliliu + Faamatala — leo fetaui Tusitusiga + se faʻataʻitaʻiga o le leo (leai se umi maualalo; 3–5 sekone pe sili atu e sili ona lelei) → faʻaliliuina, ona faʻamatala lea i le leo e fetaui. E tatau ona eseese le gagana na faʻaaogaina ma le gagana e faʻaaogaina. $0.08/min

O le fa'avasegaina atoa o vitio o le tautua API e feso'ota'i ma se fuafuaga: e fa'aaoga i minute o lau fuafuaga ua aofia ai, ona ova lea i le fua faatatau o le fuafuaga. Va'ai fuafuaga ma tau