Note: Current supported vendor endpoints (fully compatible):
• Microsoft Translator v3 (/translate?api-version=3.0)
• Google Translate v2 (/language/translate/v2)
• DeepL API v2 (/v2/translate)
Base URL:
https://cacheproxy.flouttranslate.com
Single endpoint replacing vendor-specific routes. Request and response formats remain identical to the original vendor APIs.
Required header:
x-flout-key: YOUR_FLOUT_CUSTOMER_KEY
This header is required for authorization and usage attribution. The proxy does not read customer keys from query parameters.
Optional tracking header:
x-flout-xref: YOUR_CUSTOMER_OR_PROJECT_REFERENCE
Use this optional reference to group proxy usage in reporting.
Engine values are internal identifiers (example: gv2, mv3) and may evolve over time. Use values documented here.
Vendor is selected using the engine request header.
engine: gv2 → Google Translate engine: mv3 → Microsoft Translator engine: dl2 → DeepL Translator
The engine replaces vendor-specific routes. All other request structure remains identical to the vendor API.
POST https://cacheproxy.flouttranslate.com
Content-Type: application/json x-flout-key: YOUR_FLOUT_CUSTOMER_KEY engine: gv2 x-goog-api-key: YOUR_GOOGLE_API_KEY
{
"q": ["Text one", "Text two"],
"target": "de",
"source": "en"
}
{
"data": {
"translations": [
{ "translatedText": "Text eins" },
{ "translatedText": "Text zwei" }
]
}
}
POST https://cacheproxy.flouttranslate.com?to=de&from=en
Content-Type: application/json x-flout-key: YOUR_FLOUT_CUSTOMER_KEY engine: mv3 Ocp-Apim-Subscription-Key: YOUR_MICROSOFT_KEY Ocp-Apim-Subscription-Region: YOUR_REGION
[
{ "Text": "Text one" },
{ "Text": "Text two" }
]
[
{
"translations": [
{ "text": "Text eins", "to": "de" }
]
},
{
"translations": [
{ "text": "Text zwei", "to": "de" }
]
}
]
POST https://cacheproxy.flouttranslate.com
Content-Type: application/json x-flout-key: YOUR_FLOUT_CUSTOMER_KEY engine: dl2 Authorization: DeepL-Auth-Key YOUR_DEEPL_API_KEY
DeepL credentials may also be supplied with DeepL-Auth-Key or x-deepl-api-key.
{
"text": ["Text one", "Text two"],
"target_lang": "DE",
"source_lang": "EN"
}
{
"translations": [
{
"detected_source_language": "EN",
"text": "Text eins"
},
{
"detected_source_language": "EN",
"text": "Text zwei"
}
]
}
curl -X POST "https://cacheproxy.flouttranslate.com" \
-H "Content-Type: application/json" \
-H "x-flout-key: YOUR_KEY" \
-H "engine: gv2" \
-H "x-goog-api-key: YOUR_GOOGLE_API_KEY" \
--data '{
"q": ["Hello world", "How are you?"],
"target": "de",
"source": "en"
}'
curl -X POST "https://cacheproxy.flouttranslate.com?to=de&from=en" \
-H "Content-Type: application/json" \
-H "x-flout-key: YOUR_KEY" \
-H "engine: mv3" \
-H "Ocp-Apim-Subscription-Key: YOUR_MICROSOFT_KEY" \
-H "Ocp-Apim-Subscription-Region: YOUR_REGION" \
--data '[
{ "Text": "Hello world" },
{ "Text": "How are you?" }
]'
curl -X POST "https://cacheproxy.flouttranslate.com" \
-H "Content-Type: application/json" \
-H "x-flout-key: YOUR_KEY" \
-H "engine: dl2" \
-H "Authorization: DeepL-Auth-Key YOUR_DEEPL_API_KEY" \
--data '{
"text": ["Hello world", "How are you?"],
"target_lang": "DE",
"source_lang": "EN"
}'
const response = await fetch(
"https://cacheproxy.flouttranslate.com",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"x-flout-key": "YOUR_KEY",
"engine": "gv2",
"x-goog-api-key": "YOUR_GOOGLE_API_KEY"
},
body: JSON.stringify({
q: ["Hello world", "How are you?"],
target: "de",
source: "en"
})
}
);
const data = await response.json();
console.log(data);
const response = await fetch(
"https://cacheproxy.flouttranslate.com?to=de&from=en",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"x-flout-key": "YOUR_KEY",
"engine": "mv3",
"Ocp-Apim-Subscription-Key": "YOUR_MICROSOFT_KEY",
"Ocp-Apim-Subscription-Region": "YOUR_REGION"
},
body: JSON.stringify([
{ Text: "Hello world" },
{ Text: "How are you?" }
])
}
);
const data = await response.json();
console.log(data);
const response = await fetch(
"https://cacheproxy.flouttranslate.com",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"x-flout-key": "YOUR_KEY",
"engine": "dl2",
"Authorization": "DeepL-Auth-Key YOUR_DEEPL_API_KEY"
},
body: JSON.stringify({
text: ["Hello world", "How are you?"],
target_lang: "DE",
source_lang: "EN"
})
}
);
const data = await response.json();
console.log(data);
By providing translation vendor API credentials to Flout Translate, you authorize Flout Translate to act as your agent for submitting translation requests to third-party translation providers on your behalf.
Flout Translate performs orchestration, caching, batching, and cost optimisation. Vendor services remain the property of their respective owners.
Flout Translate does not permanently or specifically store or persist your translation vendor API credentials. You provide those credentials on each call to the Flout Translate Proxy API and they are passed through to the translation vendor during the Flout back-end process if a translation is requested from the vendor. The credentials may persist in memory briefly during that process.