文本翻译
将文本从源语言翻译为目标语言,支持 49 种语言、自动语言检测、正式/非正式语气控制、术语库管理、HTML/XML 标签保留及上下文优化。
请求端点
Endpoint
POST/v1/translate
认证
Authentication
需要 OAuth 2.0 Bearer Token。 查看认证说明
Authorization: Bearer {access_token}请求头
Request Headers
| Header | 值 | 必填 | 说明 |
|---|---|---|---|
| Authorization | Bearer YOUR_API_TOKEN | required | 认证凭据 |
| Content-Type | application/json | required | 请求体格式,必须为 JSON |
请求体大小上限 128 KiB,超过请使用文档翻译接口。
请求参数
Request Parameters
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| text | string | string[] | required | 待翻译文本。单条传 string,批量传 string[](最多 50 条)。返回顺序与输入顺序一致。 |
| target_lang | string | required | 目标语言代码(ISO 639-1),如 en、zh、ja。支持区域变体如 en-US、pt-BR。 |
| source_lang | string | optional | 源语言代码。省略时自动检测,响应中返回 detected_source_language。 |
| formality | string | optional | 语气控制:default(默认)| prefer_more(倾向正式)| prefer_less(倾向非正式)。仅部分目标语言支持,参见语气控制。 |
| glossary_id | string | optional | 术语库 ID,确保专业术语一致。须同时提供 source_lang。 |
| context | string | optional | 额外上下文信息,帮助引擎消除歧义。该文本不会被翻译,也不计入计费。 |
| split_sentences | string | optional | 句子分割策略:0(不分割)| 1(按标点和换行分割,默认)| nonewlines(仅按标点) |
| preserve_formatting | boolean | optional | 保留原文空格和换行格式,默认 false。对代码片段、诗歌建议设为 true。 |
| tag_handling | string | optional | 标签处理:xml / html。保留输入中的标签在译文对应位置。参见标签处理。 |
| ignore_tags | string[] | optional | 不翻译的标签列表,标签内文本保留原文。如 ["code","pre"]。 |
| show_billed_characters | boolean | optional | 是否返回计费字符数,默认 false。 |
| model_type | string | optional | 翻译模型:quality_optimized(质量优先,默认)| latency_optimized(速度优先) |
快速开始
Quick Start
curl -X POST https://api.itranslator.cc/v1/translate \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": "人工智能正在改变世界。",
"source_lang": "zh",
"target_lang": "en"
}'批量翻译
Batch Translation
将 text 参数设为字符串数组,即可在一次请求中翻译多条文本。响应中的 translations 数组与输入顺序一一对应。
curl -X POST https://api.itranslator.cc/v1/translate \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": ["你好", "谢谢", "再见"],
"target_lang": "en"
}'{
"translations": [
{ "detected_source_language": "zh", "text": "Hello" },
{ "detected_source_language": "zh", "text": "Thank you" },
{ "detected_source_language": "zh", "text": "Goodbye" }
],
"billed_characters": 6
}💡 单条文本 (
string) 返回扁平结构;批量文本 (string[]) 返回 translations 数组。语气控制
Formality Control
通过 formality 参数控制译文正式程度。在不支持的语言中,prefer_more/prefer_less 会自动回退为 default,不会报错。
| 取值 | 行为 |
|---|---|
| default | 默认语气,不做干预 |
| prefer_more | 倾向正式语气(不支持时回退默认) |
| prefer_less | 倾向非正式语气(不支持时回退默认) |
正式/非正式语气在以下目标语言中可用:中文、英语、日语、韩语、法语、德语、西班牙语、意大利语、葡萄牙语、荷兰语、俄语、波兰语。
日语 formality 对比
Japanese Formality Comparison
| 语气 | 译文 | 适用场景 |
|---|---|---|
| prefer_more | 資料をご確認いただけますでしょうか。 | 商务邮件、正式文档 |
| prefer_less | 資料、確認してもらえる? | 聊天、社交媒体 |
HTML/XML 标签处理
HTML/XML Tag Handling
设置 tag_handling 为 html 或 xml 后,API 会识别输入中的标签结构,将标签放到译文正确位置,仅翻译标签外的文本。
HTML 翻译
HTML Translation
curl -X POST https://api.itranslator.cc/v1/translate \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": "<p>Welcome to <strong>iTranslator</strong></p>",
"source_lang": "en",
"target_lang": "zh",
"tag_handling": "html"
}'{
"translated_text": "<p>欢迎使用<strong>iTranslator</strong></p>",
"source_lang": "en",
"target_lang": "zh",
"char_count": 15
}忽略指定标签
Ignore Specific Tags
ignore_tags 指定不翻译的标签,标签内文本保留原文,适用于代码块、变量名等场景。
curl -X POST https://api.itranslator.cc/v1/translate \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": "<p>Run <code>npm install</code> to start.</p>",
"source_lang": "en",
"target_lang": "zh",
"tag_handling": "html",
"ignore_tags": ["code"]
}'{
"translated_text": "<p>运行 <code>npm install</code> 开始。</p>",
"source_lang": "en",
"target_lang": "zh",
"char_count": 15
}上下文增强
Context Enhancement
context 参数传入额外上下文,帮助消除歧义、选择更准确的译法。适合短文本、一词多义的场景。
curl -X POST https://api.itranslator.cc/v1/translate \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": "bank",
"source_lang": "en",
"target_lang": "zh",
"context": "The river flows past the bank where people sit and fish."
}'{
"translated_text": "河岸",
"detected_source_language": "en",
"target_lang": "zh",
"char_count": 4
}💡 没有上下文时 "bank" 可能被译为"银行"。
context 本身不会被翻译,也不消耗配额。响应字段
Response Fields
| 字段 | 类型 | 说明 |
|---|---|---|
| translated_text | string | 翻译结果(单条文本时返回) |
| translations | object[] | 翻译结果数组(批量文本时返回),每项含 text 及 detected_source_language |
| source_lang | string | 源语言代码(指定时原样返回) |
| detected_source_language | string | 自动检测的源语言代码(未指定 source_lang 时返回) |
| target_lang | string | 目标语言代码 |
| char_count | integer | 输入文本字符数(不含空格和标点) |
| billed_characters | integer | 计费字符数(需 show_billed_characters=true) |
响应示例
Response Examples
基础翻译(指定源语言)
Basic (source specified)
{
"translated_text": "Artificial intelligence is changing the world.",
"source_lang": "zh",
"target_lang": "en",
"char_count": 10
}自动检测源语言
Auto-detect Source
{
"translated_text": "Guten Morgen",
"detected_source_language": "en",
"target_lang": "de",
"char_count": 12
}术语库 + 语气控制
Glossary + Formality
{
"translated_text": "当社は、お客様情報の保護に細心の注意を払っております。",
"source_lang": "zh",
"target_lang": "ja",
"char_count": 14,
"formality": "prefer_more",
"glossary_id": "a3f8c2e1-4d56-7890-abcd-ef1234567890"
}错误码
Error Codes
| HTTP Code | 错误码 | 说明 |
|---|---|---|
| 200 | 0 | 成功 |
| 400 | INVALID_PARAM | 缺少必填参数(text 或 target_lang)或格式错误 |
| 400 | TEXT_TOO_LONG | 文本超过字符上限 |
| 400 | UNSUPPORTED_LANG | 源语言或目标语言不支持 |
| 400 | GLOSSARY_REQUIRES_SOURCE | glossary_id 要求同时提供 source_lang |
| 401 | UNAUTHORIZED | Token 无效或已过期 |
| 403 | FORBIDDEN | 无权限访问 |
| 413 | BODY_TOO_LARGE | 请求体超过 128 KiB |
| 429 | RATE_LIMITED | 请求频率超限 |
| 456 | QUOTA_EXHAUSTED | 翻译配额用尽 |
| 500 | INTERNAL_ERROR | 服务器内部错误 |
使用说明
Notes
📌 最佳实践
- 自定源语言比自动检测更快,也避免歧义语言被误判。
- 批量翻译将多条文本合并为一次请求可减少网络开销,提高吞吐量。
- 翻译含 HTML/XML 的内容时启用
tag_handling,避免标签被错误翻译或丢失。 - 生产环境建议在服务端调用 API,避免将 Token 暴露给客户端。
- 翻译计费基于输入文本字符数,空格和标点不计入。
- 自动检测语言(省略
source_lang)会增加约 50ms 延迟。
iTranslator