Ɔdebɔneyɛfo API
Fa Addavox localization ka wo adwumayɛ ho. Paw Video Dubbing API ma video localization a edi mũ a bere, QA, subtitles, ne kwan a edi mũ a wobɛfa so akɔ Review Editor no so denam nkonyaayi nkitahodi so. Wubetumi nso apaw ankorankoro ɔsom API ahorow no mu biara ama nnwuma afoforo, te sɛ nhoma bi a wobɛka anaasɛ nhoma bi a wobɛkyerɛ ase na woaka ho asɛm wɔ bere biako mu.
API Nsafoa
API safoa no yɛ Addavox akonta bi dea. Yɛ biako denam Start localizing button a ɛwɔ atifi hɔ no so, afei yɛ safoa bi wɔ app no mu — frɛ biara bɔ saa akontaabu no ho ka. Sɛ wopɛ sɛ wodi kan kyekye na wosɔ nkabom hwɛ a, bisa sandbox safoa wɔ app no mu.
Wɔtua API dwumadie ankorankoro firi wo sika a wode abɔ bosea no mu, a wode hyɛ mu na wohwɛ so wɔ wo Addavox akontaabuo mu. Video localization a edi mũ ne nea ɛyɛ soronko: ɛde bo koro no ara a nhyehyɛe a wopaw wɔ Plans & Pricing mu no di dwuma — wo nhyehyɛe no simma a ɛka ho, afei overage wɔ nhyehyɛe no bo so.
Woreyɛ nhyehyɛe ayɛ nkabom? Book a integration frɛ (ɛbue wɔ tab foforo mu)
URL a wɔde gyina so:
https://api.addavox.com/api/v1
Auth asɛmti no:
X- API -Key: WO_SAFO
Mpene & Tumi a Wɔde Ma
Ɛsɛ sɛ API abisadeɛ nyinaa ka pene adeɛ ne top-level mode field ho. Eyinom bom yɛ adwuma biara adansedi kyerɛwtohɔ a ɛkyerɛ sɛ wowɔ hokwan ahorow a ɛho hia ne ɔkasafo pene.
Mode field no na ɛkyerɛ nne nkabom: "voice_matched" de ɛnne a Wɔde Di Dwuma di dwuma, a ɛde ɔkasafo biara ankasa nne ne ne nkate kɔ kasa a wɔde asi wɔn ani so no mu; "standard" de nne ahorow a wɔahyɛ da ayɛ a wɔde ayɛ nneɛma di dwuma. Mode abien no nyinaa yɛ bo koro — nea wɔpaw no yɛ nea wɔde pene so ara kwa.
Voice-Matched Mode — Ɛhwehwɛ sɛ Woma Mpene a Edi Mu
Standard Mode — Nsɛm a Ɛwɔ Mu Hokwan Nkutoo
Afuw mu Nhwehwɛmu
| Prama | Korɔ | Ɛhia | Nkyerɛmu |
|---|---|---|---|
| mode | string | Ɔsoro-gyinabea | voice_matched anaasɛ standard |
| speaker_consent_obtained | boolean | nne_a ɛne ne ho hyia nkutoo | Mpene a ɛda adi pefee a efi akasafo a wobetumi ahu wɔn hɔ |
| content_rights_confirmed | boolean | Mode abien no nyinaa | Ownership anaa tumi krataa a ɛfata ma emu nsɛm no |
| eula_accepted | boolean | Mode abien no nyinaa | Gye Addavox EULA no tom. |
| attested_by | string | Mode abien no nyinaa | Email anaa nea ɛkyerɛ obi a ɔde asodi no to no so |
| attested_at | ISO 8601 | Mode abien no nyinaa | Wɔ nnɔnhwerew 24 akyi wɔ bere a wɔde bisae no mu |
Mfomso Mmara a Wɔde Mpene So
| HTTP | Mmara | Tebea |
|---|---|---|
| 403 | CONSENT_MISSING | No consent asɛm biara |
| 403 | CONSENT_INCOMPLETE | Attested_by a ɛyera anaasɛ attested_at a enni mu |
| 403 | CONSENT_NOT_AFFIRMED | Hokwan anaa EULA a wɔanhyɛ no den |
| 403 | CONSENT_EXPIRED | attested_at a ɛboro nnɔnhwerew 24 |
| 403 | SPEAKER_CONSENT_REQUIRED | voice_matched a ɔkasafo no mpene so |
| 400 | INVALID_MODE | Mode bo a ɛnteɛ |
API Nkyerɛkyerɛmu
Nkitahodi nhyehyɛe a edi mũ ne awiei afoforo wɔ hɔ denam OpenAPI so.
Full Video Localization
/api/v1/localize-video
API key
Video Dubbing
Full video dubbing: send a video URL + target languages, get localized videos back.
Request body
| Field | Type | Required | Description |
|---|---|---|---|
video_url | string | Yes | HTTPS URL of the source video to dub. |
target_languages | string[] | Yes | One or more target language codes. |
source_language | string | Yes | Language of the source video's spoken audio, e.g. 'en'. |
project_name | string | null | No | Optional project name. Defaults to 'API Video: {filename}'. |
enable_llm_qa | boolean | No | Opt-in LLM quality-review pass over translations before voice synthesis. Adds processing time. |
mode | LocalizationMode | No | Drives consent. Default 'voice_matched' (voice matching: each speaker's tone and emotion carried into the target language); 'standard' uses preset synthetic voices. |
consent | ConsentAttestation | Yes | Consent attestation; see Consent & Authorization. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Master job ID — poll for per-language status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
target_languages | string[] | Echoed target language codes. |
ConsentAttestation
speaker_consent_obtained | boolean | null | Attests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only. |
content_rights_confirmed | boolean | Attests ownership or a valid license to the content. Required in both modes. |
eula_accepted | boolean | Confirms the client has read and accepts the Addavox EULA. Required in both modes. |
attested_by | string | Email or identifier of the responsible individual or system. |
attested_at | string | ISO 8601 timestamp of attestation. Must be within 24 hours of the request. |
API Services
/api/v1/separate
API key
Voice Separation
Split caller-supplied audio into vocals + background stems (async job).
Request body
| Field | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | HTTPS URL of the source audio to separate. |
project_name | string | null | No | Optional project name. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Poll this job ID for status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
charge | ChargeInfo | Billing detail for this submission. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account credit balance after the charge, in USD. |
/api/v1/transcribe
API key
Transcribe
Transcribe caller-supplied audio and return a transcript (async job).
Request body
| Field | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | HTTPS URL of the source audio to transcribe. |
language | string | Yes | Spoken language of the audio (BCP-47), e.g. 'en-US'. |
project_name | string | null | No | Optional project name. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Poll this job ID for status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
charge | ChargeInfo | Billing detail for this submission. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account credit balance after the charge, in USD. |
/api/v1/pro-transcribe
API key
Pro Transcription
Separate, then transcribe the isolated vocals stem — a cleaner transcript (async job).
Request body
| Field | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | HTTPS URL of the source audio to transcribe. |
language | string | Yes | Spoken language of the audio (BCP-47), e.g. 'en-US'. |
project_name | string | null | No | Optional project name. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Poll this job ID for status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
charge | ChargeInfo | Billing detail for this submission. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account credit balance after the charge, in USD. |
/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
| Field | Type | Required | Description |
|---|---|---|---|
text | string | Yes | Text to translate. |
target_language | string | Yes | Target language code, e.g. 'es' or 'es-ES'. |
source_language | string | Yes | Source language code, e.g. 'en' or 'en-US'. |
Response
| Field | Type | Description |
|---|---|---|
translated_text | string | The translated text. |
source_language | string | Source language supplied on the request. |
target_language | string | Target language the text was translated into. |
charge | ChargeInfo | Billing detail for this translation. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account 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"}'
/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
| Field | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | HTTPS URL of the source audio; also used to identify/match speaker voices. |
source_language | string | Yes | Source language code, e.g. 'en-US'. |
target_language | string | Yes | Target language code, e.g. 'es-ES'. |
segments | ExternalSegment[] | Yes | The pre-segmented transcript to voice. |
project_name | string | null | No | Optional project name. Defaults to 'API: {source}->{target}'. |
consent | ConsentAttestation | Yes | Consent attestation; see Consent & Authorization. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Poll this job ID for status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
voice_type | string | Voice type resolved from the request mode. |
total_segments | integer | Echoed count of submitted segments. |
charge | ChargeInfo | Billing detail for this submission. |
ExternalSegment
source_text | string | Original text for this segment. |
start_time | number | Segment start, in seconds. Used for speaker-voice matching only, not output timing. |
end_time | number | Segment end, in seconds. Used for speaker-voice matching only, not output timing. |
words | object[] | Word-level timing; defaults to empty. |
speaker | object | null | Speaker metadata for voice selection. |
translated_text | string | null | Pre-supplied translation. If provided, translation is skipped for this segment. |
ConsentAttestation
speaker_consent_obtained | boolean | null | Attests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only. |
content_rights_confirmed | boolean | Attests ownership or a valid license to the content. Required in both modes. |
eula_accepted | boolean | Confirms the client has read and accepts the Addavox EULA. Required in both modes. |
attested_by | string | Email or identifier of the responsible individual or system. |
attested_at | string | ISO 8601 timestamp of attestation. Must be within 24 hours of the request. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account credit balance after the charge, in USD. |
/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
| Field | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | HTTPS URL of the source audio; also used to identify/match speaker voices. |
source_language | string | Yes | Source language code, e.g. 'en-US'. |
target_language | string | Yes | Target language code, e.g. 'es-ES'. |
segments | ExternalSegment[] | Yes | The pre-segmented transcript to voice. |
project_name | string | null | No | Optional project name. Defaults to 'API: {source}->{target}'. |
consent | ConsentAttestation | Yes | Consent attestation; see Consent & Authorization. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Poll this job ID for status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
voice_type | string | Voice type resolved from the request mode. |
total_segments | integer | Echoed count of submitted segments. |
charge | ChargeInfo | Billing detail for this submission. |
ExternalSegment
source_text | string | Original text for this segment. |
start_time | number | Segment start, in seconds. Used for speaker-voice matching only, not output timing. |
end_time | number | Segment end, in seconds. Used for speaker-voice matching only, not output timing. |
words | object[] | Word-level timing; defaults to empty. |
speaker | object | null | Speaker metadata for voice selection. |
translated_text | string | null | Pre-supplied translation. If provided, translation is skipped for this segment. |
ConsentAttestation
speaker_consent_obtained | boolean | null | Attests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only. |
content_rights_confirmed | boolean | Attests ownership or a valid license to the content. Required in both modes. |
eula_accepted | boolean | Confirms the client has read and accepts the Addavox EULA. Required in both modes. |
attested_by | string | Email or identifier of the responsible individual or system. |
attested_at | string | ISO 8601 timestamp of attestation. Must be within 24 hours of the request. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account credit balance after the charge, in USD. |
/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
| Field | Type | Required | Description |
|---|---|---|---|
audio_url | string | Yes | HTTPS URL of the source audio; also used to identify/match speaker voices. |
source_language | string | Yes | Source language code, e.g. 'en-US'. |
target_language | string | Yes | Target language code, e.g. 'es-ES'. |
segments | ExternalSegment[] | Yes | The pre-segmented transcript to voice. |
project_name | string | null | No | Optional project name. Defaults to 'API: {source}->{target}'. |
consent | ConsentAttestation | Yes | Consent attestation; see Consent & Authorization. |
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Poll this job ID for status. |
project_id | string | The project created for this job. |
status | string | Always 'queued' on submit. |
voice_type | string | Voice type resolved from the request mode. |
total_segments | integer | Echoed count of submitted segments. |
charge | ChargeInfo | Billing detail for this submission. |
ExternalSegment
source_text | string | Original text for this segment. |
start_time | number | Segment start, in seconds. Used for speaker-voice matching only, not output timing. |
end_time | number | Segment end, in seconds. Used for speaker-voice matching only, not output timing. |
words | object[] | Word-level timing; defaults to empty. |
speaker | object | null | Speaker metadata for voice selection. |
translated_text | string | null | Pre-supplied translation. If provided, translation is skipped for this segment. |
ConsentAttestation
speaker_consent_obtained | boolean | null | Attests that explicit consent has been obtained from all identifiable speakers. Required for voice_matched mode only. |
content_rights_confirmed | boolean | Attests ownership or a valid license to the content. Required in both modes. |
eula_accepted | boolean | Confirms the client has read and accepts the Addavox EULA. Required in both modes. |
attested_by | string | Email or identifier of the responsible individual or system. |
attested_at | string | ISO 8601 timestamp of attestation. Must be within 24 hours of the request. |
ChargeInfo
amount | number | Total amount charged for this submission, in USD. |
rate_per_min | number | Per-minute rate applied. |
duration_min | number | Billed minutes (for text services, characters/1000). |
num_languages | integer | Number of target languages billed. |
credit_balance_after | number | Account credit balance after the charge, in USD. |
Jobs & Results
/api/v1/jobs/{job_id}
API key
Job Status
Check the status of an external localization job.
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Echoes the job ID from the URL. |
type | string | Job type: voice | translate_voice | transcribe_translate_voice | video_dub. |
status | string | queued | running | completed | failed. For a video_dub job this is a true aggregate of its per-language children, not a per-child value. |
total_segments | integer | Total segment count. Always 0 on a video_dub master job. |
completed_segments | integer | Completed segment count. Always 0 on a video_dub master job. |
error | string | null | Failure message when status is 'failed'. |
/api/v1/jobs/{job_id}/result
API key
Job Result
Get the download URL for a completed external localization job.
Response
| Field | Type | Description |
|---|---|---|
transcript_url | string | null | (Transcription job) Signed URL of the transcript JSON. |
vocals_url | string | null | (Separation job) Signed URL of the vocals stem. |
background_url | string | null | (Separation job) Signed URL of the background stem. |
download_url | string | null | Signed URL (24h). Single voice track for an audio job, or a zip of all languages for a video dub. |
duration | number | null | (Audio job) Duration in seconds. |
file_size | integer | null | (Audio job) File size in bytes. |
project_id | string | null | (Video dub) The project ID. |
review_url | string | null | (Video dub) Web review URL for the project. |
languages | VideoJobResultLanguage[] | null | (Video dub) Per-language result URLs. |
VideoJobResultLanguage
language | string | Target language code for this result. |
video_url | string | null | Signed URL of the dubbed video (24h expiry). |
audio_url | string | null | Signed URL of the dubbed audio track (24h expiry). |
subtitle_url | string | null | Signed URL of the subtitle file (24h expiry). |
/api/v1/jobs/{job_id}
API key
Cancel Job
Cancel a queued or running job and refund the charge to the account balance.
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Echoes the cancelled job ID. |
status | string | Always 'cancelled'. |
refunded_amount | number | Amount refunded for the undelivered work, in USD. |
/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
| Field | Type | Description |
|---|---|---|
jobs | JobListItem[] | The page of jobs, newest first. |
total | integer | Total jobs matching the query, across all pages. |
limit | integer | Page size used. |
offset | integer | Page offset used. |
JobListItem
job_id | string | Job ID. |
project_id | string | Project the job belongs to. |
type | string | Job type. |
target_language | string | null | Target language code, if applicable. |
status | string | queued | running | completed | failed | cancelled. |
total_segments | integer | Total segment count. |
completed_segments | integer | Completed segment count. |
error | string | null | Failure message when the job failed. |
created_at | string | null | ISO 8601 creation time. |
started_at | string | null | ISO 8601 start time, if started. |
completed_at | string | null | ISO 8601 completion time, if finished. |
charge | JobListCharge | null | Charge summary, present if the job was billed. |
/api/v1/jobs/{job_id}/webhooks
API key
Webhook Log
Return the webhook delivery log for a job (all attempts, newest first).
Response
| Field | Type | Description |
|---|---|---|
job_id | string | Echoes the job ID from the URL. |
deliveries | WebhookDelivery[] | All delivery attempts for the job, newest first. |
WebhookDelivery
id | string | null | Delivery attempt ID. |
event | string | null | Event type delivered, e.g. 'job.completed'. |
attempt | integer | null | Attempt number for this event. |
status_code | integer | null | HTTP status returned by the endpoint, if any. |
error | string | null | Delivery error, if the attempt failed. |
delivered_at | string | null | ISO 8601 time of the attempt. |
/api/v1/jobs/{job_id}/webhooks/retry
API key
Retry Webhook
Re-trigger webhook delivery for the most recent event on a job.
Response
| Field | Type | Description |
|---|---|---|
status | string | Always 'queued' — the event was re-queued for delivery. |
event | string | The event type that was re-queued. |
Account & Reference
/api/v1/account
API key
Account
Return credit balance and current plan for the authenticated account.
Response
| Field | Type | Description |
|---|---|---|
account_id | string | The account's ID. |
credit_balance | number | Prepaid credit balance, in USD. |
plan_id | string | Current plan ID, e.g. 'free', 'creator'. |
plan_name | string | Human-readable plan name. |
included_minutes | integer | Localization minutes included in the plan per period. |
minutes_used | number | Included minutes used this period. |
minutes_remaining | number | Included minutes remaining this period. |
overage_rate | number | Per-minute overage rate once included minutes are exhausted, in USD. |
billing_interval | string | null | 'monthly' or 'annual'; null on the free plan. |
subscription_status | string | Subscription status, e.g. 'active', 'past_due', 'free'. |
/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
/api/v1/languages
API key
List Languages
Return supported languages. Query params: detail — if true, include provider metadata per language
/api/v1/projects/{project_id}/reviewers
API key
Invite Reviewer
Invite a reviewer to a project (API endpoint).
Request body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Reviewer's display name, used in the invite email. |
email | string | Yes | Where the magic-link invite is sent. |
language | string | Yes | Target language code the reviewer will edit. |
Response
| Field | Type | Description |
|---|---|---|
id | string | New reviewer ID. |
name | string | Echoed from the request. |
email | string | Echoed from the request. |
token | string | Magic-link token, embedded in the emailed URL. Expires 7 days from creation. |
expires_at | string | null | Currently always null — not populated by this call. |
API Ɔsom Boɔ a Wɔbɔ
Wɔtua ankorankoro dwumadie ho ka simma biara na ɛnyɛ nhyehyɛeɛ bi fã — wotua deɛ wofrɛ no nko ara, wɔ boɔ a ɛyɛ pɛpɛɛpɛ a afe afe sika biara nni mu. Video localization a edi mũ nkutoo na ɛtwetwe nhyehyɛe bi simma a ɛka ho no. Nnwuma a egyina nsɛm so no mita bɛyɛ nkyerɛwde 1,000 simma biara.
| Asoɛeɛ | Nea wode mena → nea wunya | Hyehyɛ |
|---|---|---|
| Ɛnne Ntetewmu | Audio → nne a ɛho tew + akyi nnwom | $0.02/min |
| Nkyerɛwee (STT) . | Audio → nkyerɛwee a wɔakyerɛw a wɔde nkyerɛwde a wɔde hyɛ mu ne bere a wɔde gyina nsɛmfua so | $0.02/min |
| Pro Nkyerɛwee | Audio → Voice Separation + Transcription (STT), eye ma ɔdio a ɛyɛ dede | $0.05/min |
| Nkyerɛaseɛ | Nkyerɛwee → nsɛm a wɔakyerɛ ase | $0.02/min |
| Ka asɛm (TTS) . | Nsɛm a wɔakyerɛ ase → ɔdio a wɔaka ho asɛm wɔ nne a wɔahyɛ ato hɔ a wopaw mu | $0.03/min |
| Nkyerɛase + Ka — nne a wɔahyɛ ato hɔ | Nsɛm → wɔakyerɛ ase, afei wɔde nne a wɔahyɛ ato hɔ ka ho asɛm. Ɛsɛ sɛ kasa a wonya fi mu ne kasa a wɔde di dwuma no yɛ soronko. | $0.06/min |
| Nkyerɛase + Ka — nne a ɛne no hyia | Nkyerɛwee + nne nhwɛsode (ne tenten a ɛba fam koraa nni hɔ; sikani 3–5 anaa nea ɛboro saa yɛ adwuma yiye) → wɔakyerɛ ase, afei wɔaka ho asɛm wɔ nne a ɛne no hyia mu. Ɛsɛ sɛ kasa a wonya fi mu ne kasa a wɔde di dwuma no yɛ soronko. | $0.08/min |
Video localization a edi mũ ne API service biako a wɔakyekyere nhyehyɛe bi: ɛtwetwe wo nhyehyɛe no simma a ɛka ho, afei overage wɔ nhyehyɛe rate no so. Hwɛ nhyehyɛe ne bo a wɔbɔ