• 语言列表
  • 错误码
  • Demo实例
  • 接入方式
  • 语言列表
  • 错误码
  • 接入方式
  • 语言列表
  • 错误码

API技术文档


通过HTTP协议提供多种语言与中文间的互译服务,您只需要向接口传递待翻译的内容,并且指定需要翻译的源语言和目标语言, 就可以得到对应的机器译文结果。

接入方式

基于HTTP协议的URL请求

请求地址

http://api.niutrans.vip/NiuTransServer/translation

请求方式

GET/POST

返回类型

JSON
您需要向该接口地址通过GET请求方式发送如下字段来获取译文结果:
字段名 类型 描述
from String 源语言:待翻译文本语种参数  支持语言列表
to String 目标语言:翻译目标语种参数  支持语言列表
apikey String API的密钥  可在控制台查看
src_text String 待翻译字符串 该字段必须为UTF-8编码
注意事项
1.翻译文本(src_text字段)必须为UTF-8编码。
2.在发送HTTP请求之前需要对src_text字段参数进行URL Encode
3.为保证服务质量,请将单次请求长度控制在2000字符以内。
4.如果请求字符串长度大于1500,请使用POST方式提交请求。
返回值json格式,会根据传递参数、任务处理返回不同的字段,具体字段说明如下:
字段名 描述
from 语言语种
to 语言语种
apikey API的密钥
src_text 待翻译字符串
tgt_text 翻译结果字符串
error_code 错误代码
error_msg 错误信息

成功示例

正常返回案例
1 {
2   "tgt_text": "hello \n",
3   "to": "en",
4   "from": "zh"
5 }

失败示例

失败返回案例
1 {
2   "to": null,
3   "result_code": "10000",
4   "from":null,
5   ""result_msg": "Input is empty",
6   ""src_text": null
7 }

支持语言列表

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

错误码列表

错误码 描述
10000 源语输入为空
10003 源语长度超标
10005 源语编码有问题,非UTF-8
13002 apikey为空
13003 内容过滤异常
13007 语言不支持
13008 时间超时
14001 分句异常
14002 分词异常
14003 后处理异常

Demo示例( Java / C# / PHP / Python )

请求示例
1 curl -i --get http: //api.niutrans.vip/NiuTransServer/translation?from=zh&to=uy&src_text='你好'&apikey='您的apikey'
1 public static String doGet(String input) throws Exception {
2     String result=null;
3     String apikey = "您的apikey";
4     String apiurl = "http://api.niutrans.vip/NiuTransServer/translation?from=zh&to=en&apikey=" + apikey + "&src_text=+URLEncoder.encode(input,"utf-8");
5     HttpClient client = new HttpClient();
6      GetMethod method = new GetMethod(apiurl);
7     if (null == apiurl || !apiurl.startsWith("http")) {
8       throw new Exception("请求地址格式不对");
9     }
10      //设置请求的编码方式
11     method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=" + "utf-8");
12     int statusCode = client.executeMethod(method);
13      if (statusCode != HttpStatus.SC_OK)
14       System.out.println("Method failed: " + method.getStatusLine());
15     }
16      //返回响应消息
17     byte[] responseBody = method.getResponseBodyAsString().getBytes(method.getResponseCharSet());
18      //在返回响应消息使用编码(utf-8)
19     String response = new String(responseBody, "utf-8");
20      //释放连接
21      method.releaseConnection();
22      JSONObject json = JSONObject.fromObject(response);
23     if (response.indexOf("tgt_text") != -1)
24     result = json.get("tgt_text").toString();
25     return result;
26      }
1   private const String host = "http://api.niutrans.vip";
2   private const String path = "/NiuTransServer/translation""/NiuTransServer/translation";
3   private const String method = "GET";
4   private const String apikey = "您的apikey";
5   static void Main(string[ ] args){
6     String querys = "from=zh&src_text=%E4%BD%A0%E5%A5%BD&to=en&apikey="+apikey;
7        String bodys = "";
8     String url = host + path;
9     HttpWebRequest httpRequest = null;
10     HttpWebResponse httpResponse = null;
11     if (0 < querys.Length)/index/niutrans/api.html
12      if (host.Contains("https://")){
13       ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
14       httpRequest = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
15     }else{ httpRequest = (HttpWebRequest)WebRequest.Create(url);}
16     httpRequest.Method = method;
17      if ( 0 < bodys.Length){
18       byte[] data = Encoding.UTF8.GetBytes(bodys);
19       using (Stream stream = httpRequest.GetRequestStream()){
21         stream.Write(data, 0, data.Length);
22     }
23     }try{httpResponse = (HttpWebResponse)httpRequest.GetResponse();}
24     catch ( WebException ex){httpResponse = (HttpWebResponse)ex.Response;}
25     Console.WriteLine(httpResponse.StatusCode);
26     Console.WriteLine(httpResponse.Method);
27     Console.WriteLine(httpResponse.Headers);
28     Stream st = httpResponse.GetResponseStream();
29     StreamReader reader = new StreamReader(st, Encoding.GetEncoding("utf-8"));
30     Console.WriteLine(reader.ReadToEnd());
31     Console.WriteLine("\n");
32     }
33     public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
34     { return true; }
1    < ?php
2     $host = "http://api.niutrans.vip";
3     $path = "/NiuTransServer/translation";
4     $method = "GET";
5     $apikey = "您的apikey";
6     $headers = array();
7     array_push($headers, "Authorization:APPCODE " . $apikey);
8     $querys = "from=zh&src_text=你好&to=en";
9     $bodys = "";
10     $url = $host . $path . "?" . $querys;
11     $curl = curl_init();
12     curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
13     curl_setopt($curl, CURLOPT_URL, $url);
14     curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
15     curl_setopt($curl, CURLOPT_FAILONERROR, false);
16     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
17     curl_setopt($curl, CURLOPT_HEADER, true);
18     if (1 == strpos("$".$host, "https://")){
19       curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
20       curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
21     }
22     var_dump(curl_exec($curl));
23     ?>
1    important urllib, urllib.request, sys
2    apikey = '您的apikey'
3    host = 'http://api.niutrans.vip'
4    path = '/NiuTransServer/translation'
5   method = 'GET'
6   querys = 'from=en&to=zh&src_text=hello&apikey='+apikey
7   bodys = {}
8    url = host + path + '?' + querys
9    request = urllib.request.Request(url)
10    response = urllib.request.urlopen(request)
11   content = response.read()
12    if (content):
13     print(content)

API技术文档


小牛翻译文档翻译通过WebAPI的方式提供给开发者一套通用的HTTP接口。包括文档翻译接口;文档翻译状态接口;下载文档接口。需要上传文件, 文件大小不超过2M。流程如下:

上传接口

接入方式:基于HTTP协议的URL请求

请求地址

http://apis.niutrans.vip/NiuTransServerOffice/upload

请求方式

POST

请求参数

字段名 类型 描述
from String 源语言:待翻译文本语种参数  支持语言列表
to String 目标语言:翻译目标语种参数  支持语言列表
apikey String API的密钥 可在 控制台查看
file String 待翻译文档Base64位编码
docType String 文档类型代码
docName String 文档名称(不需要文件后缀名;如果为空,则随机添加一个名称)

返回类型

JSON类型字符串 字段说明如下:
字段名 描述
from 语言语种
to 语言语种
apikey API的密钥
file_no 文件编号
result_code 结果代码
result_msg 结果码描述

成功示例

正常返回案例
1 {
2   "result_code":20200,
3   "result_msg":"success",
4   "file_no":"mt-180711****34",
5   "to":"en",
6   "apikey":"8653e055bb**************6df0e33b"
7 }

失败示例

失败返回案例
1 {
2   "result_code":13002,
3   "result_msg":"apikey is null",
4   "from":"zh",
5   "to":"en",
6   "apikey":"8653e055bb**************6df0e33b"
7 }

状态接口

接入方式

基于HTTP协议的URL请求

请求地址

http://apis.niutrans.vip/NiuTransServerOffice/getFileTransStatus

请求方式

POST

请求参数

字段名 类型 描述
fileNo String 文件编号

返回类型

JSON类型字符串
字段名 描述
fileNo 文件编号
status_code 状态码
status_msg 状态码描述
trans_status 翻译状态(1 为排队中,2 为翻译中,3为翻译完成,4为翻译异常)
trans_progress 翻译进度(数值0-1,保留两位小数,1为翻译完成)

成功示例

正常返回案例
1 {
2   "file_no":"mt-180711****34",
3   "status_code":30200,
4   "status_msg":"query success.",
5   "trans_status":"2",
6   "trans_progress":"0.56",
7 }

失败示例

正常返回案例
1 {
2   "file_no":"mt-180711****34",
3   "status_code":30202,
4   "status_msg":"文件编号为空",
5 }

下载接口

接入方式:基于HTTP协议的URL请求

请求地址

http://apis.niutrans.vip/NiuTransServerOffice/download

请求方式

GET

请求参数

字段名 类型 描述
fileNo String 文件编号
需要根据头部的Content-Type来确定下载是否成功
如果下载成功,具体header包含:
Content-Type:application/octet-stream
如果下载出现错误,则会返回json文本,具体header包含:
Content-Type:application/json
字段说明如下
字段名 描述
file_no 文件编号
result_code 错误码
result_msg 错误描述

语言列表

语言 参数代码
中文 zh
英文 en
日语 ja
韩语 ko
法语 fr
西班牙语 es
俄语 ru
藏语 ti
阿拉伯语 ar
保加利亚语 bg
葡萄牙语 pt
泰语 th

文档类型

文档类型 类型代码 后缀名 类型名称
docx 1 .docx Microsoft Office Word 2007之后版本
xls 2 .xls Microsoft Office Excel 97- 2003版本
xlsx 3 .xlsx Microsoft Office Excel 2007之后版本
ppt 4 .ppt Microsoft Office PPT 97- 2003版本
pptx 5 .pptx Microsoft Office PPT 2007之后版本
txt 6 .txt 记事本文件

错误码

错误码 描述
13001 APIkey错误或没有访问权限
13002 apikey为空
20200 翻译文档加入翻译队列成功
20501 语言方向异常
20502 文档类型为空
20503 文档类型不支持
20504 Base位不支持
20505 Base64位编码转换错误
20506 输入的Base64位编码有误
20507 系统异常
20601 文件未翻译完成或文件异常
20602 未找到该文件编号
20603 文件编号为空

状态码列表

结果码 描述
30200 查询成功
30201 文件编号异常
30202 文件编号错误
30203 文件编号为空

API技术文档


术语词典:如果系统对某个术语翻译结果不准确,可以通过“术语词典”重新定义术语译文,系统后续的翻译结果均会采用修改后的定义结果,保证同样的错误不会犯第二次!

接入方式

基于HTTP协议的URL请求

请求地址

http://apis.niutrans.vip/NiuTransServerAPI/addDictionary

请求方式

POST

请求参数

字段名 类型 描述
from String 源语言:待翻译文本语种参数  支持语言列表
to String 目标语言:翻译目标语种参数  支持语言列表
apikey String API的密钥 可在 控制台查看
srcText String 源语语言词汇
tgtText String 目标语语言词汇
注意事项:
1.所有字段必须为UTF-8编码。
2.在发生HTTP请求之前需要对srcText/tgtText字段参数进行URL Encode。
3.为保证服务质量,srcText/tgtText长度不能超过100字符。

返回类型

JSON类型字符串 字段说明如下
字段名 描述
error_code 错误码
error_msg 错误描述

成功示例

正常返回案例
1 {
2   "error_code":40300,
3   "error_msg":"add success."
4 }

失败示例

正常返回案例
1 {
2   "error_code":40201,
3   "error_msg":" source or target input is empty."
4 }

语言列表

语言 参数代码
中文 zh
英文 en
日语 ja
韩语 ko
法语 fr
西班牙语 es
俄语 ru
藏语 ti
阿拉伯语 ar
保加利亚语 bg
葡萄牙语 pt
泰语 th

错误码

结果码 描述
40104 系统错误
40201 源语或目标语输入为空
40202 输入语言方向为空
40203 语言方向不支持
40300 添加翻译记忆
49998 apikey为空
49999 apikey输入有误或apikey没有权限

API技术文档


翻译记忆:如果说术语词典是单词/词组级,那么翻译记忆就是从句子级的角度,将人工翻译的正确译文实时添加到小牛翻译系统中,帮助修改翻译结果,避免机器翻译重复犯错。此外,现有的高精度语料也可以添加至翻译记忆中,小牛翻译系统会优先选用记忆中的译文。

接入方式

基于HTTP协议的URL请求

请求地址

http://apis.niutrans.vip/NiuTransServerAPI/addMemoryStore

请求方式

POST

请求参数

字段名 类型 描述
from String 源语言:待翻译文本语种参数  支持语言列表
to String 目标语言:翻译目标语种参数  支持语言列表
apikey String API的密钥 可在 控制台查看
srcText String 源语语言词汇
tgtText String 目标语语言词汇
注意事项:
1.所有字段必须为UTF-8编码。
2.在发生HTTP请求之前需要对srcText/tgtText字段参数进行URL Encode。
3.为保证服务质量,srcText/tgtText长度不能超过500字符。

返回类型

JSON类型字符串 字段说明如下
字段名 描述
error_code 错误码
error_msg 错误描述

成功示例

正常返回案例
1 {
2   "error_code":40300,
3   "error_msg":"add success."
4 }

失败示例

正常返回案例
1 {
2   "error_code":40201,
3   "error_msg":" source or target input is empty."
4 }

语言列表

语言 参数代码
中文 zh
英文 en
日语 ja
韩语 ko
法语 fr
西班牙语 es
俄语 ru
藏语 ti
阿拉伯语 ar
保加利亚语 bg
葡萄牙语 pt
泰语 th

错误码

结果码 描述
40104 系统错误
40201 源语或目标语输入为空
40202 输入语言方向为空
40203 语言方向不支持
40300 添加翻译记忆
49998 apikey为空
49999 apikey输入有误或apikey没有权限

以上内容是否对您有帮助?

京ICP备18033082号  京公网安备 11010802027393号