Belin Doc IconBelin Doc

Belin Doc · オープンプラットフォーム

翻訳 API ドキュメント

以下のエンドポイントは、Web 版で使っている機能をそのまま開放したものです。モデルもクォータも成果物も同じで、違いはログインセッションの代わりに API キーを使う点だけです。

ベース URL
https://belindoc.com/api
認証ヘッダー
X-Api-Key
メソッド
POST · application/json
エンドポイント数
21
最終更新
2026-09-04
目次
はじめに

クイックスタート

PDF から訳文まで 4 ステップ。動画翻訳も同じ流れで呼び出せます。

  1. 01

    API キーを作成する

    belindoc.com にログインし、右上のアイコンメニューから「デベロッパーセンター」を開いてキーを作成します。キーは ft_ で始まり、完全な値は作成直後の 1 回だけ表示されます。

  2. 02

    ファイルをアップロードする

    まず署名付き URL を取得し、そこへ PUT で直接アップロードします。URL の有効期限は 10 分で、返ってくる objectKey は次のステップで使います。

    bash
    # 1. 署名付きアップロード URL を取得(有効期限 10 分)
    curl -X POST https://belindoc.com/api/external/translate/batchPresignedUploadUrl \
      -H "X-Api-Key: $BELINDOC_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"fileNameList": ["contract.pdf"]}'
    
    # → data[0].persignedUploadUrl / data[0].objectKey
    
    # 2. PUT でファイルをその URL に直接アップロード
    curl -X PUT "<persignedUploadUrl>" --upload-file contract.pdf
  3. 03

    翻訳を送信する

    fileList・sourceLanguage・targetLanguage・model は必須です。原文言語に AnyLanguage を渡すと自動判定になります。モデル名はハードコードせず、getModelList の戻り値を正としてください。

    bash
    curl -X POST https://belindoc.com/api/external/translate/batchSubmitTranslateTask \
      -H "X-Api-Key: $BELINDOC_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "fileList": [{ "fileName": "contract.pdf", "fileObjectKey": "<objectKey>" }],
        "sourceLanguage": "AnyLanguage",
        "targetLanguage": "zh-CN",
        "model": "Gemini-2.5-Flash"
      }'
    
    # → { "code": "200", "data": { "batchNo": "...", "fileList": [ ... ] } }
  4. 04

    進捗を取得してダウンロードする

    batchNo で status が 3 になるまでポーリングし、その後ダウンロード URL を取得します。このエンドポイントは SSE で応答し、リンクは [DONE] イベントに含まれます。

    bash
    # タスクをポーリング:status = 3 なら訳文の準備完了
    curl -X POST https://belindoc.com/api/external/translate/searchTranslateFileByBatchNo \
      -H "X-Api-Key: $BELINDOC_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"batchNo": "<batchNo>"}'
    
    # 訳文のダウンロード URL を取得:SSE レスポンス、リンクは [DONE] イベントに入る
    curl -N -X POST https://belindoc.com/api/external/translate/getTranslateS3DownloadUrl \
      -H "X-Api-Key: $BELINDOC_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"translateOrderNo": "<translateOrderNo>", "urlType": 2}'
    
    # event:[DONE]
    # data:{"url":"https://..."}
はじめに

認証

公開エンドポイントは /external/ 配下にあり、キーだけで呼び出し元を識別します。それ以外のリクエスト本文・既定値・レスポンス構造は Web 版と同一です。

http
POST /api/external/translate/getModelList HTTP/1.1
Host: belindoc.com
Content-Type: application/json
X-Api-Key: ft_xxxxxxxxxxxxxxxxxxxxxxxx
language: zh

{}
json
{
  "code": "200",
  "msg": null,
  "requestId": "8f1c…",
  "data": { }
}
X-Api-Key ヘッダー
すべてのリクエストにキーを付与します。キーが無い、無効化済み、期限切れ、IP がホワイトリスト外のいずれかであれば、業務処理に入る前に弾かれます。
language ヘッダー
任意。レスポンスの msg の言語を指定します。未指定の場合は en。サイトが対応する 9 言語(en、zh、zh-Hant、ja、ko、fr、ru、de、ar)を受け付けます。
キーは個人アカウントに対して動作します
キーは常に、それを作成した個人アカウントとして解決されます。ファイルはプラットフォーム側のストレージに置かれ、クォータもそのアカウントのものから引かれます。組織の専用ワークスペースには API からアクセスできません。
共通レスポンス構造
すべてのエンドポイントが同じラッパーで応答します。code が 200 なら成功、それ以外は業務エラーで、msg に該当言語のメッセージが入ります。
JWT も署名も不要
Web 版を守っているトークン・署名フィルターは /external/ を素通しします。キーが唯一の資格情報なので、パスワードと同等に扱いサーバー側だけで保持してください。
/external/translate9 件

文書翻訳

文書翻訳の主要導線を一式:アップロード、送信、進捗取得、ダウンロード。加えてモデルと言語の一覧も、ハードコードせずここから読んでください。

  • status:0 待機中 · 1 解析中 · 2 翻訳中 · 3 完了 · 4 失敗 · 5 キャンセル済み
  • urlType:1 原本 · 2 訳文 · 3 左右対訳 · 4 上下対訳 · -1 EPUB プレビュー
01

アップロード URL を取得

POST

/external/translate/batchPresignedUploadUrl

ファイルの署名付きアップロード URL をまとめて取得します。

リクエスト

項目必須説明
fileNameListarray[string]必須アップロード URL を取得したいファイル名

レスポンス · data

項目説明
persignedUploadUrlstring署名付き PUT URL。有効期限 10 分
objectKeystring送信時に渡すストレージキー
fileNamestring元のファイル名
storageTypenumberファイルの保管先種別
リクエスト
{
  "fileNameList": ["contract.pdf"]
}
レスポンス
{
  "code": "200",
  "data": [
    {
      "persignedUploadUrl": "https://s3.../contract.pdf?X-Amz-Signature=…",
      "objectKey": "translate/10086/2026/contract.pdf",
      "fileName": "contract.pdf",
      "storageType": 1
    }
  ]
}
02

スキャン文書を判定

POST

/external/translate/isOcr

送信前にアップロード済みのファイルがスキャン文書かどうかを判定します。必要なときだけ OCR を有効にするための下調べです。

リクエスト

項目必須説明
fileObjectKeystring必須署名付き URL 取得時に返る objectKey
storageTypenumber必須ファイルの保管先種別

レスポンス · data

項目説明
isOcrnumber1 ならスキャン文書
isDoubleDecknumber1 ならテキストレイヤー付きのスキャン
リクエスト
{
  "fileObjectKey": "translate/10086/2026/contract.pdf",
  "storageType": 1
}
レスポンス
{
  "code": "200",
  "data": { "isOcr": 1, "isDoubleDeck": 0 }
}
03

翻訳を送信

POST

/external/translate/batchSubmitTranslateTask

一括翻訳ジョブを送信し、batchNo とファイルごとの注文番号を返します。

リクエスト

項目必須説明
fileListarray必須翻訳するファイル
fileNamestring必須元のファイル名
fileObjectKeystring必須署名付き URL 取得時に返る objectKey
isOcrFilenumber1 でこのファイルをスキャン文書として扱う。isOcr の結果を渡します
sourceLanguagestring必須原文の言語コード。AnyLanguage で自動判定
targetLanguagestring必須訳文の言語コード
modelstring必須モデルのバージョン。getModelList から取得
isOcrnumber1 で OCR を実行。既定は 0
isMathnumber1 で数式レイアウトを維持。既定は 0
translateStylenumber翻訳スタイルのプリセット
terminologyCollectionIdstring適用する用語集の ID。用語集の作成・管理は現在ウェブ版のみで、API では提供していません

レスポンス · data

項目説明
batchNostring送信時に返るバッチ番号
fileListarray翻訳するファイル
balanceHintnumber1 は残クォータが少ないことの警告
リクエスト
{
  "fileList": [
    { "fileName": "contract.pdf", "fileObjectKey": "translate/10086/2026/contract.pdf" }
  ],
  "sourceLanguage": "AnyLanguage",
  "targetLanguage": "zh-CN",
  "model": "Gemini-2.5-Flash",
  "isOcr": 0,
  "terminologyCollectionId": "66f1c2a4b8d3e5f7a9c1b2d3"
}
レスポンス
{
  "code": "200",
  "data": {
    "batchNo": "B20260828173001",
    "fileList": [
      { "fileName": "contract.pdf", "fileObjectKey": "translate/10086/2026/contract.pdf" }
    ],
    "balanceHint": 0
  }
}
04

バッチ内のタスクを取得

POST

/external/translate/searchTranslateFileByBatchNo

バッチ番号でそのバッチの全タスクを取得します。ポーリングはこれを使います。

リクエスト

項目必須説明
batchNostring必須送信時に返るバッチ番号

レスポンス · タスク

項目説明
translateOrderNostringタスクの注文番号
batchNostring送信時に返るバッチ番号
sourceFileNamestring元のファイル名
statusnumberタスクの状態(上の凡例参照)
textNumbernumberこのタスクの課金文字数
targetFileUrlstring訳文ファイルの URL
targetFileUrl2string中国本土向けの代替 URL
xComparisonS3Urlstring左右対訳ファイル
yComparisonS3Urlstring上下対訳ファイル
freeTranslateQuotanumber無料枠から消費したページ数
walletTranslateQuotanumber有料枠から消費したページ数
createTimenumber作成時刻(エポックミリ秒)
startTimenumber開始時刻(エポックミリ秒)
endTimenumber完了時刻(エポックミリ秒)
errorCodestringstatus が 4 のときの失敗コード
リクエスト
{
  "batchNo": "B20260828173001"
}
レスポンス
{
  "code": "200",
  "data": [
    {
      "translateOrderNo": "T20260828173002",
      "batchNo": "B20260828173001",
      "sourceFileName": "contract.pdf",
      "status": 3,
      "textNumber": 4820,
      "targetFileUrl": "https://s3.../contract_zh-CN.pdf?X-Amz-Signature=…"
    }
  ]
}
05

翻訳履歴を一覧

POST

/external/translate/searchTranslateFilePage

このアカウントの翻訳履歴をページングで取得します。

リクエスト

項目必須説明
pageNumnumber必須ページ番号。1 から
pageSizenumber必須1 ページあたりの件数
statusnumberタスクの状態(上の凡例参照)
fileTypestringファイル種別で絞り込み(例:PDF)
sourceFileNamestringファイル名で絞り込み

レスポンス · data

項目説明
recordsarrayこのページの行
totalnumber総件数
currentnumber現在のページ番号
pagesnumber総ページ数
06

タスク詳細を取得

POST

/external/translate/getTranslateFileDetail

注文番号で単一タスクの詳細を取得します。

リクエスト

項目必須説明
translateOrderNostring必須タスクの注文番号

レスポンス · タスク

項目説明
translateOrderNostringタスクの注文番号
batchNostring送信時に返るバッチ番号
sourceFileNamestring元のファイル名
statusnumberタスクの状態(上の凡例参照)
textNumbernumberこのタスクの課金文字数
targetFileUrlstring訳文ファイルの URL
targetFileUrl2string中国本土向けの代替 URL
xComparisonS3Urlstring左右対訳ファイル
yComparisonS3Urlstring上下対訳ファイル
freeTranslateQuotanumber無料枠から消費したページ数
walletTranslateQuotanumber有料枠から消費したページ数
createTimenumber作成時刻(エポックミリ秒)
startTimenumber開始時刻(エポックミリ秒)
endTimenumber完了時刻(エポックミリ秒)
errorCodestringstatus が 4 のときの失敗コード
07

ダウンロード URL を取得

POST

/external/translate/getTranslateS3DownloadUrl

原本・訳文・対訳ファイルのダウンロード URL を取得します(SSE 応答)。

リクエスト

項目必須説明
translateOrderNostring必須タスクの注文番号
urlTypenumber必須取得する成果物の種類(上の凡例参照)
isWatermarknumber0 で透かしを外す(プランが対応する場合)

レスポンス · SSE イベント

項目説明
urlstringダウンロードリンク。[DONE] イベントに含まれる
url2string中国本土向けの代替リンク(ある場合)
リクエスト
{
  "translateOrderNo": "T20260828173002",
  "urlType": 2,
  "isWatermark": 0
}
レスポンス
event:[PROCESS]
data:

event:[DONE]
data:{"translateOrderNo":"T20260828173002","url":"https://s3.../contract_zh-CN.pdf?X-Amz-Signature=…"}
08

利用できるモデルを取得

POST

/external/translate/getModelList

model に指定できる値と、それぞれのクォータ係数を取得します。

リクエスト

パラメーターなし。空の JSON ボディを送ってください。

レスポンス · data

項目説明
versionstringmodel に渡す値
modelTypenumber内部のモデル系列
vipTypenumber利用に必要なプラン
coefficientnumberこのモデルのクォータ係数
groupTypenumber所属グループ
09

対応言語を取得

POST

/external/translate/getLanguageEnum

対応する 79 の言語コードと各言語の表示名を取得します。

リクエスト

パラメーターなし。空の JSON ボディを送ってください。

レスポンス · data

項目説明
{locale}objectロケール → 言語コード → 表示名
レスポンス
{
  "code": "200",
  "data": {
    "en": {
      "AnyLanguage": "Any language",
      "zh-CN": "Simplified Chinese",
      "…": "…"
    },
    "zh": {
      "AnyLanguage": "任意语言",
      "zh-CN": "简体中文",
      "…": "…"
    },
    "…": {}
  }
}
/external/videoTranslate10 件

動画翻訳

動画翻訳のひと通り:クォータを試算し、送信して進捗を追い、字幕を編集して再生成するまで。

  • status:0 未開始 · 1 処理中 · 2 完了 · 3 失敗 · 4 キャンセル済み
  • step:1 音声認識 · 2 字幕翻訳 · 3 音声生成
  • stepStatus:0 未開始 · 1 処理中 · 2 完了 · 3 失敗
  • subtitleType:0 字幕なし · 1 訳文字幕 · 2 原文字幕 · 3 二カ国語字幕
01

アップロード URL を取得

POST

/external/videoTranslate/batchPresignedUploadUrl

動画の署名付きアップロード URL をまとめて取得します。

リクエスト

項目必須説明
fileNameListarray[string]必須アップロード URL を取得したいファイル名

レスポンス · data

項目説明
persignedUploadUrlstring署名付き PUT URL。有効期限 10 分
objectKeystring送信時に渡すストレージキー
fileNamestring元のファイル名
02

動画を送信

POST

/external/videoTranslate/submitVideoTranslate

動画翻訳ジョブを送信します。videoTaskParam に音声・字幕・フォント設定を含めます。

リクエスト

項目必須説明
sourceLanguagestring必須原文の言語コード。AnyLanguage で自動判定
targetLanguagestring必須訳文の言語コード
sourceFileObjectKeystring必須アップロード済み動画の objectKey
videoFileNamestring必須元の動画ファイル名
videoTaskParamobject必須音声・字幕・フォントの設定
voiceRolestring吹き替えの声。clone は元話者の再現
subtitleTypenumber焼き込む字幕(上の凡例参照)
videoTaskParam のその他の項目(25 件、すべて省略可)
項目説明
recognTypenumber音声認識エンジン。既定 12、変更不要
modelNamestring認識モデル。既定 tiny
splitTypestring分割方式。既定 all
isCudabooleanGPU アクセラレーションの有無。既定 false
translateTypenumber字幕翻訳エンジン。既定 14、変更不要
ttsTypenumber音声合成エンジン。既定 15、変更不要
voiceRatestring吹き替えの話速。例 +10%、既定 +0%
volumestring吹き替えの音量。例 +10%、既定 +0%
pitchstring吹き替えの音程。例 +5Hz、既定 +0Hz
voiceAutorateboolean吹き替えの長さを原音に自動で合わせる。既定 true
videoAutorateboolean映像の長さを吹き替えに自動で合わせる。既定 true
appendVideoboolean尺が足りないとき映像をループで補う。既定 true
isSeparateboolean人声と背景音を別々に出力する。既定 false
onlyVideoboolean動画のみ出力し字幕ファイルは作らない。既定 false
fontsizenumber字幕のフォントサイズ。既定 14
fontnamestring字幕のフォント名。未指定ならサーバー既定
fontcolorstring字幕の文字色。#RRGGBB または ASS 色値
fontboldboolean字幕を太字にするか
subtitlePosYnumber字幕の下端から画面下端までの割合。0-90、未指定なら下部
subtitlePosXnumber字幕の水平中心の左端からの割合。5-95、50 で中央
fontbordercolorstring字幕の縁取り色。#RRGGBB / #RRGGBBAA / ASS 色値
backgroundcolorstring字幕の背景ボックス色。#RRGGBB / #RRGGBBAA / ASS 色値
outlinenumber縁取りの太さ 0-10。0 で縁取りなし
shadownumber影の大きさ 0-10。0 で影なし
borderStylenumber枠線スタイル:1 通常の縁取り/影、3 行ごとの矩形背景

レスポンス · タスク

項目説明
videoTranslateOrderNostring動画タスクの注文番号
videoFileNamestring元の動画ファイル名
videoDurationnumber動画の長さ(秒)
statusnumberタスクの状態(上の凡例参照)
stepnumber現在の処理ステップ(上の凡例参照)
stepStatusnumber現在のステップの状態(上の凡例参照)
targetFileUrlstring訳文ファイルの URL
sourceSubtitlesUrlstring原文字幕ファイルの URL
targetSubtitlesUrlstring訳文字幕ファイルの URL
freeTranslateQuotanumber無料枠から消費したページ数
walletTranslateQuotanumber有料枠から消費したページ数
errorMessagestring失敗時の理由
リクエスト
{
  "sourceLanguage": "ja",
  "targetLanguage": "zh-CN",
  "sourceFileObjectKey": "video/10086/2026/lecture.mp4",
  "videoFileName": "lecture.mp4",
  "videoTaskParam": { "voiceRole": "clone", "subtitleType": 1 }
}
03

動画の費用を試算

POST

/external/videoTranslate/videoTranslateQuotaCalculate

送信前に、長さ・声質・字幕種別からクォータ消費を試算します。

リクエスト

項目必須説明
videoDurationnumber必須動画の長さ(秒)
voiceRolestring必須吹き替えの声。clone は元話者の再現
subtitleTypenumber必須焼き込む字幕(上の凡例参照)

レスポンス · data

項目説明
translateQuotanumberこのジョブの総消費クォータ
videoDurationTranslateQuotanumber長さから算出したクォータ
thirtySecondQuotanumber30 秒あたりのクォータ
quotaCoefficientnumber基準に掛かる係数
04

動画履歴を一覧

POST

/external/videoTranslate/searchVideoTranslatePage

このアカウントの動画翻訳履歴をページングで取得します。

リクエスト

項目必須説明
pageNumnumber必須ページ番号。1 から
pageSizenumber必須1 ページあたりの件数
statusnumberタスクの状態(上の凡例参照)

レスポンス · data

項目説明
recordsarrayこのページの行
totalnumber総件数
currentnumber現在のページ番号
pagesnumber総ページ数
05

タスク詳細を取得

POST

/external/videoTranslate/getVideoTranslateDetail

単一の動画タスクを取得します(進捗と成果物 URL を含む)。

リクエスト

項目必須説明
videoTranslateOrderNostring必須動画タスクの注文番号

レスポンス · タスク

項目説明
videoTranslateOrderNostring動画タスクの注文番号
videoFileNamestring元の動画ファイル名
videoDurationnumber動画の長さ(秒)
statusnumberタスクの状態(上の凡例参照)
stepnumber現在の処理ステップ(上の凡例参照)
stepStatusnumber現在のステップの状態(上の凡例参照)
targetFileUrlstring訳文ファイルの URL
sourceSubtitlesUrlstring原文字幕ファイルの URL
targetSubtitlesUrlstring訳文字幕ファイルの URL
freeTranslateQuotanumber無料枠から消費したページ数
walletTranslateQuotanumber有料枠から消費したページ数
errorMessagestring失敗時の理由
06

動画タスクを取消

POST

/external/videoTranslate/cancelVideoTranslateHistory

未完了の動画タスクをキャンセルします。

リクエスト

項目必須説明
videoTranslateOrderNostring必須動画タスクの注文番号
07

字幕を取得

POST

/external/videoTranslate/getVideoTranslateSubtitles

編集用に原文字幕と訳文字幕を取得します。

リクエスト

項目必須説明
videoTranslateOrderNostring必須動画タスクの注文番号

レスポンス · data

項目説明
sourceSubtitlesUrlstring原文字幕ファイルの URL
targetSubtitlesUrlstring訳文字幕ファイルの URL
08

編集した字幕を送信

POST

/external/videoTranslate/submitVideoRewrite

編集した字幕を送信し、動画を再生成します。

リクエスト

項目必須説明
videoTranslateOrderNostring必須動画タスクの注文番号
sourceSubtitlesTxtstring必須編集後の原文字幕
targetSubtitlesTxtstring必須編集後の訳文字幕
videoTaskParamobject音声・字幕・フォントの設定
videoTaskParam のその他の項目(25 件、すべて省略可)
項目説明
recognTypenumber音声認識エンジン。既定 12、変更不要
modelNamestring認識モデル。既定 tiny
splitTypestring分割方式。既定 all
isCudabooleanGPU アクセラレーションの有無。既定 false
translateTypenumber字幕翻訳エンジン。既定 14、変更不要
ttsTypenumber音声合成エンジン。既定 15、変更不要
voiceRatestring吹き替えの話速。例 +10%、既定 +0%
volumestring吹き替えの音量。例 +10%、既定 +0%
pitchstring吹き替えの音程。例 +5Hz、既定 +0Hz
voiceAutorateboolean吹き替えの長さを原音に自動で合わせる。既定 true
videoAutorateboolean映像の長さを吹き替えに自動で合わせる。既定 true
appendVideoboolean尺が足りないとき映像をループで補う。既定 true
isSeparateboolean人声と背景音を別々に出力する。既定 false
onlyVideoboolean動画のみ出力し字幕ファイルは作らない。既定 false
fontsizenumber字幕のフォントサイズ。既定 14
fontnamestring字幕のフォント名。未指定ならサーバー既定
fontcolorstring字幕の文字色。#RRGGBB または ASS 色値
fontboldboolean字幕を太字にするか
subtitlePosYnumber字幕の下端から画面下端までの割合。0-90、未指定なら下部
subtitlePosXnumber字幕の水平中心の左端からの割合。5-95、50 で中央
fontbordercolorstring字幕の縁取り色。#RRGGBB / #RRGGBBAA / ASS 色値
backgroundcolorstring字幕の背景ボックス色。#RRGGBB / #RRGGBBAA / ASS 色値
outlinenumber縁取りの太さ 0-10。0 で縁取りなし
shadownumber影の大きさ 0-10。0 で影なし
borderStylenumber枠線スタイル:1 通常の縁取り/影、3 行ごとの矩形背景

レスポンス · data

項目説明
videoTranslateRewriteOrderNostring字幕再生成の注文番号
statusnumberタスクの状態(上の凡例参照)
targetFileUrlstring訳文ファイルの URL
09

再生成の進捗を確認

POST

/external/videoTranslate/getVideoTranslateRewriteDetail

字幕再生成ジョブの進捗を取得します。

リクエスト

項目必須説明
videoTranslateRewriteOrderNostring必須字幕再生成の注文番号

レスポンス · data

項目説明
statusnumberタスクの状態(上の凡例参照)
targetFileUrlstring訳文ファイルの URL
targetSubtitlesUrlstring訳文字幕ファイルの URL
errorMessagestring失敗時の理由
10

再生成の費用を試算

POST

/external/videoTranslate/videoTranslateRewriteQuotaCalculate

字幕再生成にかかるクォータ消費を試算します。

リクエスト

項目必須説明
videoTranslateRewriteOrderNostring必須字幕再生成の注文番号

レスポンス · data

項目説明
translateQuotanumberこのジョブの総消費クォータ
quotaCoefficientnumber基準に掛かる係数
/external/user2 件

アカウント情報

キーに紐づくアカウントのクォータとプラン。送信前に残量を確認できるので、エラーで気づく必要がありません。

  • subscriptionStatus:1 処理待ち · 2 有効 · 3 解約済み · 4 キャンセル済み
  • interval:1 日 · 2 週 · 3 月 · 4 年
01

残クォータを確認

POST

/external/user/getMyWalletInfo

このキーのアカウントのウォレットを取得します。ページ数クォータ、OCR クォータ、透かし除去の残回数、紹介リワード残高。

リクエスト

パラメーターなし。空の JSON ボディを送ってください。

レスポンス · data

項目説明
userIdnumberキーが属するアカウント ID
translateQuotanumber残りのページ数クォータ
advancedTranslateQuotanumber残りの上位モデル用クォータ
ocrTranslateQuotanumber残りの OCR クォータ
accelerationCardNumbernumber残りの高速化カード枚数
totalFreeTranslateQuotanumber今期に付与された無料ページ数
useFreeTranslateQuotanumber今期に使用した無料ページ数
totalFreeOcrTranslateQuotanumber今期に付与された無料 OCR ページ数
useFreeOcrTranslateQuotanumber今期に使用した無料 OCR ページ数
freeWatermarkQuotanumber残りの透かし除去回数
daysFreeWatermarkQuotanumber1 日あたりに付与される透かし除去回数
usedDaysFreeWatermarkQuotanumber本日使用した透かし除去回数
rewardBalancenumber紹介リワードの残高
rewardTotalnumber紹介リワードの累計獲得額
リクエスト
{}
レスポンス
{
  "code": "200",
  "data": {
    "userId": 10086,
    "translateQuota": 12000,
    "advancedTranslateQuota": 0,
    "ocrTranslateQuota": 800,
    "totalFreeTranslateQuota": 500,
    "useFreeTranslateQuota": 132
  }
}
02

プランを確認

POST

/external/user/getMySubscriptionInfo

このキーのアカウントのプランを取得します。区分と現在の期間、そして同時実行数・ファイルサイズ・動画長の上限。

リクエスト

パラメーターなし。空の JSON ボディを送ってください。

レスポンス · data

項目説明
vipNamestringプラン名
vipTypenumberプラン区分
subscriptionStatusnumberサブスクリプションの状態。上の凡例を参照
intervalnumber契約期間の単位。上の凡例を参照
startTimenumber今期の開始時刻(エポックミリ秒)
endTimenumber今期の終了時刻(エポックミリ秒)
translateQuotanumber1 期あたりに付与されるページ数
advancedTranslateQuotanumber1 期あたりに付与される上位モデル用ページ数
freeTranslateQuotanumber1 サイクルあたりに付与される無料ページ数
freeTranslateQuotaIntervalnumber無料ページのリセット周期:1 日 · 2 週 · 3 月
concurrenceTasknumber同時に実行できる文書タスク数
uploadFileSizenumberアップロード上限(MB)
videoDurationLimitnumber動画の長さ上限(分)
videoTranslateConcurrencynumber同時に実行できる動画タスク数
videoFileSizenumber動画ファイルの上限(MB)
付録

エラーコード

キーに関する失敗も HTTP 200 で返り、業務コードはレスポンス本文に入ります。連携側で必ず処理すべきものは次のとおりです。

コード意味対処
30306無効な API キーft_ を含めてキー全体をコピーできているか確認してください。削除済みのキーも同じコードを返します。
30307キーが無効化されていますデベロッパーセンターで再度有効化するか、別のキーに切り替えてください。
30308キーの有効期限切れ有効期限を延長するか、新しいキーを作成してください。
30309呼び出し元 IP がホワイトリスト外サーバーの送信元 IP をキーのホワイトリストに追加するか、ホワイトリストを空にしてください。
30312管理者によりキーがブロックされましたサポートへご連絡ください。デベロッパーセンターからは解除できません。

翻訳自体のエラー(クォータ不足、未対応ファイル、重複送信など)は個別のコードを持ち、msg は language ヘッダーの言語で返ります。分岐は msg ではなく code で判定してください。

付録

クォータと制限

API は入口が増えるだけで、別の製品ではありません。以下は Web 版から引き継がれる規則です。

同じクォータ、追加課金なし
API 呼び出しは Web 版と同じページ数・動画クォータを、同じモデル係数で消費します。API 専用の料金はありません。
透かしの扱いも同じ
無料枠では PDF の訳文に透かしが入ります。ブラウザで取得した場合とまったく同じで、API 経由でも外れません。
呼び出し回数は送信系のみ加算
キーの呼び出し回数は batchSubmitTranslateTask、submitVideoTranslate、submitVideoRewrite でのみ増えます。参照系はいくらポーリングしても加算されません。
アカウントごとに送信は直列
送信はアカウント単位でロックされます。前回の受付中に再送すると重複タスクのエラーコードが返るため、並列に投げず少し待って再試行してください。
OCR は既定でオフ
isOcr はスキャン文書のときだけ指定します。OCR はページ数クォータに加えて OCR 用サブクォータも消費するため、テキスト PDF で有効にすると二重消費になります。判断がつかないときは先に isOcr エンドポイントで確認してください。

HTTP を書かずに使いたい場合

同じ機能を MCP ツールとしても公開しています。AI エージェントから直接呼び出せるので、HTTP のコードは 1 行も書く必要がありません。