收费标准 
API价格

马上免费试用

暗色

亮色

系统维护通知(9/14更新)

TEXT TRANSLATION
同步
同步文本翻译。系统会等待翻译结束后返回翻译结果。
此功能可与T-4OO引擎,即时翻译引擎和T-3MT引擎一起使用。
Endpoint
Request details
POST
https://translate.rozetta-api.io/api/v1/translate
Header
Header
Description
Content-Type
application/json
accessKey, nonce, signature
请参考「加密签名」章节
Body
Key
Required
Description
fieldId
O
领域ID。 恰当的指定领域可以使翻译结果更加精确。 请参考翻译领域 section. 使用T-3MT引擎时,请参阅「T-3MT领域」「mid」.
text
O
需要翻译的原文。 请指定为字符串数组形式。字符串不能为空。数组内的单个字符串字数上限:200字。 数组内字符串总大小上限:270KB(日语约9万字)。
sourceLang
O
原文的语言。 除个别语言外(zh-CN、zh-TW等)请使用ISO 639-1代码来指定。 若要自动侦测语言请输入auto,目前可支持日语、英文、中文。 若要取的所有支持语言的列表,请参照「语言列表」章节
targetLang
O
译文的语言。 除个别语言外(zh-CN、zh-TW等)请使用ISO 639-1代码来指定。 若要取的所有支持语言的列表,请参照「语言列表」章节
contractId
O
合同的ID。 请指定使用API所对应的合同ID。 若您保有复数合同,则须指定文本合同ID。 举例来说,使用文本翻译API的时候,请指定文本翻译合同ID,使用文件翻译API的时候,请指定文件翻译合同ID。 系统会根据合同ID判断使用哪个引擎。
autoSplit
需要将原文(1000字以上)自动断行时,请指定为true。目前支持英文(en)、日语(ja)、中文(zh-CN、zh-HK、zh-TW)。
Body (仅适用于T-4OO引擎)
Key
Required
Description
removeFakeLineBreak
仅利用T-4OO引擎时有效。 若指定为true (默认),翻译引擎将会判断原文中的几行句子是否是一句话,如果是,将会组合原文成句子后再进行翻译。 若指定为false,翻译引擎将不会组合原文,维持原文并个别翻译。
t4ooCategoryId
仅利用T-4OO引擎时有效。 对译ID。选择複数ID时以逗号串联。(例)101,252,301 若不指定,则按指定的领域自动取得用户绑定的对译ID。 若指定"-1",则不使用对译。 ※ID另行通知。 ※部分情况需结合isT4ooSplit使用。详细请参照isT4ooSplit的示例。
t4ooGlossaryId
仅利用T-4OO引擎时有效。 统一用语ID。选择複数ID时以逗号串联。(例)101,252,301 若不指定,则用户绑定的统一用语ID(个人统一用语、团体统一用语)会自动取得。 若指定"-1",则不使用统一用语。 ※ID另行通知。
isT4ooSplit
仅利用T-4OO引擎时有效。 不指定或指定为false时,将以原文的各要素为单位翻译。 指定为true时,会将原文的句子做分割,依分割后的句子为单位翻译。 您可以在以下的例子观察到,根据此参数值的不同,会产生不同的翻译结果。 【对译】”That is a dog.” “対訳試験” 【输入原文】”That is a bag.That is a dog.” 【译文(isT4ooSplit 为 false 时)】” あれはかばんです。あれは犬です。” 【译文(isT4ooSplit 为 true 时)】” あれはかばんです。対訳試験”
Request例文
{
    "fieldId": "1",
    "text": [
        "This is a pen.",
        "I like apple."
    ],
    "targetLang": "ja",
    "sourceLang": "en"
}
Response
Key
Description
status
成功为success,失败为failure。 ※一次请求含有複数个原文时,就算只有其中一个原文出错,请求也会返回错误。
taskId
任务ID。 因为各种原因需要联系本公司时,可提供此ID以便快速定位问题所在。
translationResult
翻译结果(列表)
sourceText
原文
translatedText
译文
wordCount
全部原文的合计单词数。
Response例文
{
  "status": "success",
  "data": {
    "taskId": "ae914ccc-8866-43bc-8a26-0a652c4f1819",
    "translationResult": [
      {
        "sourceText": "This is a pen.",
        "translatedText": "これはペンです。"
      },
      {
        "sourceText": "I like apple.",
        "translatedText": "私はりんごが好きです。"
      }
    ],
    "wordCount": 7
  }
}
Limitation
限制
仅利用T-4OO引擎时有效。每个Key(accessKey)每分钟仅能发送60个请求,超过则返回错误。返回此错误时,请隔60秒以后再發送请求。

api/v1/translate
将「This is a pen.」和「I have an apple.」两个句子从英文翻译成日文
package main

import (
  "encoding/json"
  "fmt"
  "net/http"
  "io/ioutil"
  "bytes"
  "strings"
)

type TranslateJson struct {
  FieldId string `json:"fieldId"`
  Text []string `json:"text"`
  TargetLang string `json:"targetLang"`
  SourceLang string `json:"sourceLang"`
  ContractId string `json:"contractId"`
}

// Post text and get translation results
func main() {
  url := "https://translate.classiii.io/api/v1/token"
  method := "POST"

  payload := strings.NewReader(`{
    "accessKey": "YOUR_ACCESS_KEY",
    "secretKey": "YOUR_SECRET_KEY",
    "duration": 10000
  }`)

  tokenClient := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")

  res, err := tokenClient.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }

  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }

  var jsondata map[string]interface{}
  json.Unmarshal([]byte(body), &jsondata)

  token := jsondata["data"].(map[string]interface{})["encodedJWT"].(string)


  testJson := &TranslateJson{
    FieldId: "1",
    Text: []string{"This is a pen.", "I have an apple."},
    TargetLang: "ja",
    SourceLang: "en",
    ContractId: "YOUR_CONTRACT_ID"}
  jsonValue, _ := json.Marshal(testJson)

  client := &http.Client{}
  translateReq, err := http.NewRequest(
    "POST",
    "https://translate.classiii.io/api/v1/translate",
    bytes.NewBuffer([]byte(jsonValue)),
  )
  translateReq.Header.Set("Content-Type", "application/json")
  translateReq.Header.Set("Authorization", "Bearer " + token)
  resp, err := client.Do(translateReq)

  if err != nil {
    fmt.Printf("The HTTP request failed with error %s
", err)
  } else {
    data, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(data))
  }
}
关于认证方法,请参考「加密签名」章节。
关于各语言完整的示例代码,请参考这裡
©️ 2019 Rozetta API  ・  Powered by Rozetta

Rozetta股份有限公司

^