帮助与文档 > 产品文档 > 自然语言翻译 > API文档 > 批量翻译服务
批量翻译服务

批量翻译 API 简介

批量翻译:文本翻译词典接口,输出词典基本释义、网络释义、词组、同近义词、例句等信息。

说明

Hi,您好,欢迎使用有道智云批量翻译API接口服务。如果您想快速体验服务,建议您前往 翻译体验中心 或者在体验中心右下侧找到小程序二维码,扫描进行体验。

本文档主要针对需要集成HTTP API的技术开发工程师,详细描述批量翻译能力相关的技术内容。

如果您有与我们商务合作的需求,可以通过以下方式联系我们:

商务邮箱: AIcloud_Business@corp.youdao.com

如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:

客服QQ:1906538062

智云翻译技术交流QQ 1群: 652880659

智云翻译技术交流QQ 2群: 669384425

智云翻译技术交流QQ 3群: 807539209

智云翻译技术交流QQ 4群: 936752411

联系邮箱: zhiyun@corp.youdao.com

温馨提示:

  • 本文档主要针对开发人员,接入测试前需要获取 应用ID应用密钥 ,并绑定实例;如果您还没有,请按照 新手指南 获取。
  • 平台向每个账户赠送50元的体验金,供用户集成前测试所用,具体资费规则详见 批量翻译服务报价

接口说明

批量翻译API接口提供有道的翻译服务,包含了中英翻译和小语种翻译功能。您只需要通过调用批量翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,就可以得到相应的翻译结果。

批量翻译API HTTPS地址:

https://openapi.youdao.com/v2/api

协议须知

调用方在集成批量翻译API时,请遵循以下规则。

规则描述
传输方式HTTPS
请求方式GET/POST
字符编码统一使用UTF-8 编码
请求格式表单
响应格式JSON

接口调用参数

调用API需要向接口发送以下字段来访问服务。

字段名类型含义必填备注
qtext要翻译的文本.可指定多个Trueq=苹果&q=橘子
fromtext源语言True语言列表 (可设置为auto)
totext目标语言True语言列表
appKeytext应用标识(应用ID)True可在 应用管理 查看
salttext随机字符串,可使用UUID进行生产Truehfa12lak56ja9gjl
signtext签名信息:sha256(appKey+q+salt+密钥)Truexxxxx
exttext翻译结果音频格式,支持mp3falsemp3
voicetext翻译结果发音选择,0为女声,1为男声,默认为女声false0
signTypetext签名类型truev1
detectLeveltext语言检测粒度描述。影响翻译时i字段的内容合并做语言检测,还是分别进行检测;取值为0或1,取值为0时合并检测,取值为1时分别检测false
verifyLangtext是否对语言方向进行二次核实。当用户不确定传入的参数是否正确时,可将该参数置为true,表示需要进行二次核实,系统将额外返回一个检测到的核实结果.默认为falsefalse

签名生成方法如下:
signType=v3;
sign=sha256(应用ID+input+salt+curtime+应用密钥);
其中,input的计算方式为:input=q前10个字符 + q长度 + q后10个字符(当q长度大于20)或 input=q字符串(当q长度小于等于20);

注意:

  1. voice 没有男声的,会输出女声。
  2. 发音需要在控制台创建tts实例,并绑定应用才能使用,否则点击发音会报110错误。
  3. 接口salt+curtime来防重放(即一个请求不可以被请求2次),所以salt最好为UUID。

不同语言获取时间戳,请参看此链接

如果对签名有疑问,可以参看各语言demo。

输出结果

返回的结果是json格式,包含字段与FROM和TO的值有关,具体说明如下:

字段名类型含义备注
errorCodetext错误返回码一定存在
errorIndexJSONArray错误结果的序号结果部分出错时存在。序号与输入的i字段顺序一一对应,序号从0开始。JSONArray中元素为int类型
translateResultsJSONArray翻译结果批量请求中存在正确结果时,一定存在。JSONArray中元素为JSONObject类型,JSONObject中一定包含query、translation和type字段(均为String类型),分别表示翻译原句、翻译结果和翻译所用的语言方向。

示例

{
    "errorCode": 返回结果代码,
    "errorIndex": [
        1 //序号从0开始
    ],
    "translateResults": [
        {
            "query": 第一个q字段中的原文句子,
            "translation": 第一个i字段对应的译文句子,
            "type": 第一个q字段实际翻译语言方向,
            "verifyResult": 第一个q字段语言方向核实结果
            
        }, 
        {
            "query": 第二个q字段中的原文句子,
            "translation": 第二个q字段对应的译文句子,
            "type": 第二个q字段实际翻译语言方向,
            "verifyResult": 第一个q字段语言方向核实结果
        }
    ...
    ]
}

支持语言

下表为各语言对应代码:

语言代码
中文zh-CHS
中文繁体zh-CHT
英文en
日文ja
韩文ko
法文fr
西班牙文es
葡萄牙文pt
意大利文it
俄文ru
越南文vi
德文de
阿拉伯文ar
印尼文id
南非荷兰语af
波斯尼亚语bs
保加利亚语bg
粤语yue
加泰隆语ca
克罗地亚语hr
捷克语cs
丹麦语da
荷兰语nl
爱沙尼亚语et
斐济语fj
芬兰语fi
希腊语el
海地克里奥尔语ht
希伯来语he
印地语hi
白苗语mww
匈牙利语hu
斯瓦希里语sw
克林贡语tlh
拉脱维亚语lv
立陶宛语lt
马来语ms
马耳他语mt
挪威语no
波斯语fa
波兰语pl
克雷塔罗奥托米语otq
罗马尼亚语ro
塞尔维亚语(西里尔文)sr-Cyrl
塞尔维亚语(拉丁文)sr-Latn
斯洛伐克语sk
斯洛文尼亚语sl
瑞典语sv
塔希提语ty
泰语th
汤加语to
土耳其语tr
乌克兰语uk
乌尔都语ur
威尔士语cy
尤卡坦玛雅语yua
阿尔巴尼亚语sq
阿姆哈拉语am
亚美尼亚语hy
阿塞拜疆语az
孟加拉语bn
巴斯克语eu
白俄罗斯语be
宿务语ceb
科西嘉语co
世界语eo
菲律宾语tl
弗里西语fy
加利西亚语gl
格鲁吉亚语ka
古吉拉特语gu
豪萨语ha
夏威夷语haw
冰岛语is
伊博语ig
爱尔兰语ga
爪哇语jw
卡纳达语kn
哈萨克语kk
高棉语km
库尔德语ku
柯尔克孜语ky
老挝语lo
拉丁语la
卢森堡语lb
马其顿语mk
马尔加什语mg
马拉雅拉姆语ml
毛利语mi
马拉地语mr
蒙古语mn
缅甸语my
尼泊尔语ne
齐切瓦语ny
普什图语ps
旁遮普语pa
萨摩亚语sm
苏格兰盖尔语gd
塞索托语st
修纳语sn
信德语sd
僧伽罗语si
索马里语so
巽他语su
塔吉克语tg
泰米尔语ta
泰卢固语te
乌兹别克语uz
南非科萨语xh
意第绪语yi
约鲁巴语yo
南非祖鲁语zu
自动识别auto

其中auto可以识别中文、英文、日文、韩文、法文、西班牙文、葡萄牙文、俄文、越南文、德文、阿拉伯文、印尼文、意大利文,其他语种无法识别,为提高准确率,请指定语种。

错误代码列表

错误码含义
101缺少必填的参数,首先确保必填参数齐全,然后确认参数书写是否正确。
102不支持的语言类型
103翻译文本过长
104不支持的API类型
105不支持的签名类型
106不支持的响应类型
107不支持的传输加密类型
108应用ID无效,注册账号,登录后台创建应用和实例并完成绑定,可获得应用ID和应用密钥等信息
109batchLog格式不正确
110无相关服务的有效实例,应用没有绑定服务,可以新建服务,绑定服务。注:某些服务的翻译结果发音需要tts服务,需要在控制台创建语音合成实例绑定应用后方能使用。
111开发者账号无效
112请求服务无效
113q不能为空
201解密失败,可能为DES,BASE64,URLDecode的错误
202签名检验失败,如果确认应用ID和应用密钥的正确性,仍返回202,一般是编码问题。请确保翻译文本 q 为UTF-8编码.
203访问IP地址不在可访问IP列表
205请求的接口与应用的平台类型不一致,确保接入方式(Android SDK、IOS SDK、API)与创建的应用平台类型一致。如有疑问请参考入门指南
206因为时间戳无效导致签名校验失败
207重放请求
301辞典查询失败
302翻译查询失败
303服务端的其它异常
304会话闲置太久超时
401账户已经欠费,请进行账户充值
402offlinesdk不可用
411访问频率受限,请稍后访问
412长请求过于频繁,请稍后访问

常用语言 Demo

可参考文本翻译的示例demo。