Custom Translation API

Use your own provider API keys for direct machine translation

Custom Translation Engine API

When a custom API key is enabled, that engine's requests are sent directly from your machine to the provider. They no longer pass through the platform service and do not consume platform credits; you pay the provider instead.

This is a plan entitlement ("Custom machine translation API key"). Without it, saved credentials are kept but unused, and you can only disable providers — not enable new ones.

Supported Providers

ProviderCredentials
Baidu TranslateAPP ID, secret
Microsoft TranslatorAPI key, region (e.g. eastasia)
Volcengine TranslateAccess Key ID, Secret Access Key
NiuTrans V2APP ID, API key
Alibaba TranslateAccess Key ID, Access Key Secret

DeepL cannot be used directly from the desktop client; it is only available through the platform service (and is typically unreachable from mainland networks anyway).

Configuration

  1. Open Settings → Translation engines → Machine translation APIs
  2. Click Configure on the provider row
  3. Fill in the required credentials
  4. Optionally enable Enable after saving
  5. Save

Saving only records configuration — there is no connectivity test. Real availability shows up on the first translation request. The switch on the same row disables the provider at any time while keeping the credentials.

Request Routing

StatePathBilling
Provider enabled and credentials completeThis device → providerProvider
Disabled or credentials incompleteThis device → platform service → providerPlatform credits

In other words, direct connection only happens when "switch on + all required credentials present"; otherwise the request falls back to the platform service.

Notes

  1. Credentials are stored only in the local database and never uploaded
  2. If the provider supports IP allowlists, configure one on their side to limit key leakage risk
  3. If you use a proxy, set it under Network & advanced and restart
  4. Direct-mode results are still cached locally and remain available to memory/termbase features (term injection applies to LLM engines only)

FAQ

Q: I configured a key but translation still uses the platform and credits.

A: Check three things: the provider switch is on, all required credentials are filled, and the segment's selected engine is that provider. All three must hold for a direct request.

Q: How do I troubleshoot a failing connection?

A: Common causes: wrong key or APP ID, the language pair not enabled on the account, wrong region, unpaid balance, or network/proxy unreachable. Verify with the provider's own sample request first.

Q: Can I configure several providers at once?

A: Yes. Each has its own switch; pick the engine per translation in the dropdown.

Q: Who bills the custom API usage?

A: The provider, based on your usage. Transbox is not involved. Set usage alerts on the provider side.

Q: Do configurations survive a plan change?

A: Yes. Credentials are kept; they are simply unused while the plan does not include the feature.