Skip to main content

Voice Harbor API

Use the Voice Harbor API to integrate biometric voice redaction into your own product or workflow. This page is for API usage only.
If you are using the Voice Harbor dashboard or playground, refer to the platform documentation instead.

Authentication

API requests require a valid developer usage token. Include it in the Authorization header:
-H "Authorization: Bearer YOUR_USAGE_TOKEN"

Processing Modes

Voice Harbor supports both synchronous and asynchronous API processing.

Synchronous jobs

Short audio files are typically processed synchronously and may return immediately in the response.

Asynchronous jobs

Longer audio files are processed asynchronously. When a job is handled asynchronously:
  • the job is accepted first
  • processing continues after submission
  • the result becomes available in the Jobs area when processing is complete
Async API jobs are associated with the account behind the developer token.

Example API Usage

Minimal biometric redaction request

curl -X POST https://voiceharbor.ai/api/speech-to-speech-biometric-redaction \
  -H "Authorization: Bearer YOUR_USAGE_TOKEN" \
  -F "source_audio=@./martin.wav;type=audio/wav" \
  --output result.wav

Custom biometric redaction request

curl -X POST https://voiceharbor.ai/api/speech-to-speech-biometric-redaction \
  -H "Authorization: Bearer YOUR_USAGE_TOKEN" \
  -F "source_audio=@./martin.wav;type=audio/wav" \
  -F "model_id=advanced" \
  -F "age=same" \
  -F "gender=opposite" \
  -F "emotion=sad" \
  -F "language=fr" \
  --output redacted_fr.wav

API Parameters

age
string
default:"young-adult"
Biometric age group to apply to the anonymized voice identity. Only used when avatar is not provided.Allowed values:
  • young-adult (18–39)
  • middle-aged-adult (40–59)
  • senior-adult (60+)
  • same
  • random
gender
string
default:"random"
Target gender of the anonymized voice identity.Allowed values:
  • same
  • opposite
  • random
  • f
  • m
language
string
default:"en"
Target language of the audio file.Allowed values:
  • en
  • fr
  • it
  • es
  • de
model_id
string
default:"mini"
Model variant for biometric voice print redaction.Allowed values:
  • mini 0.25 RTF
  • advanced 0.75 RTF
emotion
string
Optional emotion to apply to the anonymised identity.Allowed values:
  • happy
  • default
  • sad

Audio Input Requirements

To ensure reliable processing and accurate biometric redaction, uploaded audio files must meet the following requirements.

Supported File Formats

  • Guaranteed input support: WAV & MP3 (.wav, .mp3),
  • Output: WAV (.wav)

File Size Limits

  • Maximum file size: 10 MB per request
  • Files exceeding this limit will be rejected with a 413 Payload Too Large error
If you need higher limits for enterprise use cases, please contact support.

Audio Duration Limits

  • Minimum duration: more than 0 seconds
  • Maximum duration: 60 minutes (3600 seconds)
Files longer than 60 minutes are not accepted, even if they meet the file size limit.

Result Delivery

How you receive results depends on the size and duration of the file:
  • Short files may return immediately in the API response
  • Longer files are processed asynchronously
  • Async results are available from the Jobs area after processing completes