Supported Fonts
List the fonts and weights available for the Image Translate endpoint, plus the source-language codes the OCR step accepts.
Endpoint
GET /v1/image-translate/supported-fontsReturns the live registry of valid values for the /translate endpoint:
- which fonts cover each target language,
- the default font per target language,
- every
font_weightvalue the renderer accepts, - every
source_languagecode the OCR step accepts.
API-key authentication is required. This endpoint is free; it is not billed.
Call it on startup and cache the result — fonts and weights rarely change, but new ones are added over time.
Request
No parameters. Just send your API key.
Response
{
"success": true,
"requestId": "550e8400e29b41d4a716446655440000",
"data": {
"fontsByLanguage": {
"ko": ["Pretendard", "BMHANNAPro", "NotoSansKR"],
"zh-CN": ["NotoSansSC"],
"zh-TW": ["NotoSansSC"],
"ja": ["NotoSansKR", "NotoSansSC", "Pretendard"],
"en": ["Pretendard", "NotoSansKR", "NotoSansSC"]
},
"defaultByLanguage": {
"ko": "Pretendard",
"zh-CN": "NotoSansSC",
"ja": "NotoSansKR",
"en": "Pretendard"
},
"allFonts": ["Pretendard", "BMHANNAPro", "NotoSansKR", "NotoSansSC"],
"allWeights": [
"auto", "Thin", "Light", "Regular", "Medium",
"SemiBold", "Bold", "ExtraBold", "Black"
],
"supportedSourceLanguages": [
"auto", "ch", "zh", "zh-CN", "zh-TW", "chinese_cht",
"ja", "japan", "en"
]
}
}| Field | Type | Description |
|---|---|---|
fontsByLanguage | object | Per-target-language list of fonts whose glyph coverage is sufficient for that language. The first entry is the default. |
defaultByLanguage | object | Convenience map: target language → default font (first entry of fontsByLanguage[target]). |
allFonts | string[] | Every valid value of the font parameter on /translate. |
allWeights | string[] | Every valid value of the font_weight parameter on /translate. |
supportedSourceLanguages | string[] | Every valid value of the source_language parameter on /translate and /ocr. auto detects the language. |
Targets not listed in fontsByLanguage may render with reduced fidelity — pick a target that appears in the live response for best results.
Examples
cURL
curl -H "x-api-key: $APINOA_API_KEY" \
https://gateway.apinoa.com/v1/image-translate/supported-fontsPython — pick the default font for the user's target language
import requests
cfg = requests.get(
"https://gateway.apinoa.com/v1/image-translate/supported-fonts",
headers={"x-api-key": "YOUR_API_KEY"},
timeout=10,
).json()["data"]
target = "ko"
font = cfg["defaultByLanguage"].get(target, cfg["allFonts"][0])
print(f"Use font={font!r} for target_language={target!r}")Node.js / TypeScript — validate user input before calling /translate
const cfg = await fetch(
"https://gateway.apinoa.com/v1/image-translate/supported-fonts",
{ headers: { "x-api-key": process.env.APINOA_API_KEY! } },
).then((r) => r.json());
const { allFonts, allWeights, supportedSourceLanguages } = cfg.data;
function pickFont(target: string, requested?: string): string {
if (requested && allFonts.includes(requested)) return requested;
return cfg.data.defaultByLanguage[target] ?? allFonts[0];
}Errors
| Code | HTTP | When |
|---|---|---|
UNAUTHORIZED | 401 | Missing or invalid API key |
Pricing
Free; not billed.