Translate
Translate text between languages using free translation APIs. No API key required.
Method 1: MyMemory API (Free, No Key)
Translate text:
code
exec: curl -s "https://api.mymemory.translated.net/get?q=TEXT_TO_TRANSLATE&langpair=SOURCE_LANG|TARGET_LANG" | jq -r '.responseData.translatedText'
Examples:
English to Chinese:
code
exec: curl -s "https://api.mymemory.translated.net/get?q=Hello%20World&langpair=en|zh" | jq -r '.responseData.translatedText'
Chinese to English:
code
exec: curl -s "https://api.mymemory.translated.net/get?q=你好世界&langpair=zh|en" | jq -r '.responseData.translatedText'
English to Japanese:
code
exec: curl -s "https://api.mymemory.translated.net/get?q=Good%20morning&langpair=en|ja" | jq -r '.responseData.translatedText'
With email (higher rate limit):
code
exec: curl -s "https://api.mymemory.translated.net/get?q=TEXT&langpair=en|zh&de=your@email.com" | jq -r '.responseData.translatedText'
Method 2: LibreTranslate (Self-Hosted or Public Instances)
If a public instance is available:
code
exec: curl -s -X POST "https://libretranslate.com/translate" -H "Content-Type: application/json" -d '{"q":"TEXT_TO_TRANSLATE","source":"en","target":"zh"}' | jq -r '.translatedText'
Detect language:
code
exec: curl -s -X POST "https://libretranslate.com/detect" -H "Content-Type: application/json" -d '{"q":"TEXT"}' | jq '.[0]'
List supported languages:
code
exec: curl -s "https://libretranslate.com/languages" | jq '.[].code'
Method 3: Lingva Translate (Google Translate Frontend, No Key)
code
exec: curl -s "https://lingva.ml/api/v1/SOURCE_LANG/TARGET_LANG/TEXT_URL_ENCODED" | jq -r '.translation'
Example:
code
exec: curl -s "https://lingva.ml/api/v1/en/zh/Hello%20World" | jq -r '.translation'
Translate a File
Read file, translate, save:
code
exec: TEXT=$(cat /path/to/input.txt | head -500 | python3 -c "import sys,urllib.parse; print(urllib.parse.quote(sys.stdin.read().strip()))") && curl -s "https://api.mymemory.translated.net/get?q=$TEXT&langpair=en|zh" | jq -r '.responseData.translatedText' > /path/to/output.txt
Common Language Codes
- •
en— English - •
zh— Chinese (Simplified) - •
zh-TW— Chinese (Traditional) - •
ja— Japanese - •
ko— Korean - •
es— Spanish - •
fr— French - •
de— German - •
ru— Russian - •
ar— Arabic - •
pt— Portuguese - •
it— Italian
Notes
- •MyMemory API: 5000 chars/day free (anonymous), 50000/day with email. Best for short texts.
- •LibreTranslate: some public instances may be rate-limited or down. Self-host for reliability.
- •Lingva: acts as a frontend to Google Translate; availability varies.
- •URL-encode text with spaces: replace spaces with
%20or use+. - •For long texts, split into chunks under the character limit.
- •All methods use
curlandjq— works on macOS, Linux, Windows (WSL).