Logo

Abestar API のすべてのエンドポイントを確認し、各機能の統合方法を学べます。

パブリックメタデータ

Public
4 件のエンドポイント

翻訳と ASR がサポートする言語・モデル一覧。認証不要。

翻訳モジュールが現在対応している全言語の code と表示名を返却。認証ヘッダ不要。code は BCP 47 形式(例:zh-TW、en-US)で、/api/v1/translations/text の source_lang / target_lang にそのまま渡せる。現在 26 言語に対応。

Authorization

パブリック(認証不要)

Request Examples

bash
curl https://abemono.abestar.com.tw/translations/languages

Responses

対応言語の完全リスト。

NameTypeDescription
languagesRequired
object[]

言語エントリの配列。各要素 `{ code: string, name: string }`。code は BCP 47 タグ、name は英語表示名。

json
{
  "languages": [
    { "code": "zh-TW", "name": "Traditional Chinese" },
    { "code": "en-US", "name": "English (US)" },
    { "code": "ja-JP", "name": "Japanese" }
  ]
}

Error Codes

internal_server_error

Notes

翻訳モジュールと ASR モジュールはそれぞれ独立した言語リストを保持。両方を利用する場合は /translations/languages と /audio/languages をそれぞれ呼び出し、各モジュールの実際の対応言語を確認してください。

翻訳モジュールで現在利用可能な全モデルの code、表示名、説明を返却。認証不要。code は /api/v1/translations/text の model フィールドにそのまま渡せる。

Authorization

パブリック(認証不要)

Request Examples

bash
curl https://abemono.abestar.com.tw/translations/models

Responses

利用可能モデルの完全リスト。

NameTypeDescription
modelsRequired
object[]

モデルエントリの配列。各要素 `{ code: string, name: string, description: string }`。code は翻訳エンドポイント呼び出し時の識別子。

json
{
  "models": [
    {
      "code": "PSSC-V1-251215",
      "name": "PSSC V1",
      "description": "第一代翻譯模型"
    },
    {
      "code": "PSSC-V2-251215",
      "name": "PSSC V2",
      "description": "第二代翻譯模型"
    },
    {
      "code": "PSSC-V3-251215",
      "name": "PSSC V3",
      "description": "第三代翻譯模型"
    }
  ]
}

Error Codes

internal_server_error

Notes

本エンドポイントは翻訳リクエストで現在利用可能な全モデルの一覧を返す。現時点で 3 件のモデルコードを公開(上記参照);`description` フィールドは繁体字中国語で記述。

音声認識モジュールが現在対応している全言語の code と表示名を返却。認証ヘッダ不要。code は BCP 47 形式(例:zh-TW、en-US)で、/api/v1/audio/transcriptions の language フィールドに渡す。現在 26 言語に対応。

Authorization

パブリック(認証不要)

Request Examples

bash
curl https://abemono.abestar.com.tw/audio/languages

Responses

対応言語の完全リスト。

NameTypeDescription
languagesRequired
object[]

言語エントリの配列。各要素 `{ code: string, name: string }`。code は BCP 47 タグ、name は英語表示名。

json
{
  "languages": [
    { "code": "zh-TW", "name": "Traditional Chinese" },
    { "code": "en-US", "name": "English (US)" },
    { "code": "ja-JP", "name": "Japanese" }
  ]
}

Error Codes

internal_server_error

Notes

/api/v1/audio/transcriptions が返す detected_language はこの一覧に含まれる code のいずれか。

音声認識モジュールで現在利用可能な全モデルの code、表示名、説明を返却。認証不要。code は /api/v1/audio/transcriptions の model フィールドにそのまま渡せる。

Authorization

パブリック(認証不要)

Request Examples

bash
curl https://abemono.abestar.com.tw/audio/models

Responses

利用可能モデルの完全リスト。

NameTypeDescription
modelsRequired
object[]

モデルエントリの配列。各要素 `{ code: string, name: string, description: string }`。code は ASR エンドポイント呼び出し時の識別子。

json
{
  "models": [
    {
      "code": "tranc-std-v1",
      "name": "Tranc Standard V1",
      "description": "標準語音辨識模型"
    },
    {
      "code": "tranc-pro-v1",
      "name": "Tranc Pro V1",
      "description": "進階語音辨識模型"
    }
  ]
}

Error Codes

internal_server_error

Notes

ASR と翻訳のモデル一覧は完全に独立しており、両エンドポイントで同じ code が使えるとは限らない。現時点で 2 件のモデルコードを公開(上記参照);`description` フィールドは繁体字中国語で記述。

エラーコード

エラーコード一覧

スコープとステータスで絞り込めるエラーコードの全一覧。

スコープ
ステータス
26 件のエラーコードを表示
コードHTTP ステータススコープ説明
validation_error
400
共通

リクエストボディの検証エラー。`details.issues` にフィールド別エラーが含まれ、各要素は `{ field: string; message: string }` の構造。

{ issues: object[] }
bad_request
400
共通

リクエストの構造または内容が仕様に合致しない。`details.reason` がサブ理由コードを保持し、他フィールドは reason により異なる。batch-create エンドポイントが返し得るのは:`body_not_array` / `empty_batch` / `batch_too_large`(3 種)。import エンドポイントが返し得るのは:`file_not_uploaded` / `file_too_large` / `empty_file` / `too_many_rows` / `too_many_columns` / `duplicate_header` / `invalid_header` / `missing_required_headers` / `unexpected_headers` / `csv_parse_failed` / `xlsx_parse_failed` / `sheet_not_found` / `unsupported_file_type`(13 種)。

{ "reason": "...", "...": "其他欄位依 reason 而異" }
unauthorized
401
共通

API キーが欠落または無効(X-API-Key ヘッダ欠落、形式不正、または取消済み)。4 つのサブ理由:`api_key_missing` / `api_key_invalid_format` / `api_key_invalid` / `api_key_revoked`。

forbidden
403
共通

リクエストが拒否されました。

resource_not_found
404
共通

ルートが存在しない。

conflict
409
共通

リクエストがリソースの現状と競合(例:重複作成、同一リソースの同時変更)。具体的なサブ理由は各エンドポイントの説明を参照。

internal_server_error
500
共通

サーバー内部エラー。

service_unavailable
503
共通

インフラ層の一時的な不可用。

dictionary_not_found
404
辞書管理

辞書が存在しない。他者所有の辞書も 403 forbidden ではなくこの code で応答する。

term_not_found
404
辞書管理

用語が存在しない。他者所有のリソースも 403 forbidden ではなくこの code で応答する。

duplicate_name
409
辞書管理

辞書名が重複。

duplicate_term
409
辞書管理

用語は同じ辞書に既に存在。

text_too_long
400
テキスト翻訳

入力テキストが 5000 文字の上限を超過。現在は `validation_error` で捕捉、将来の細分化に向け予約済み。

unsupported_language_pair
400
テキスト翻訳

非対応の言語ペア。現在は `validation_error` で捕捉、将来の細分化に向け予約済み。

content_policy_violation
400
テキスト翻訳

コンテンツが安全ポリシーにより拒否。

dictionary_type_mismatch
400
テキスト翻訳

vocabulary_dictionary_id が forced_replacement 辞書を指す(または逆)。

model_not_found
404
テキスト翻訳

指定モデルが存在しないか利用不可。

translation_failed
502
テキスト翻訳

翻訳バックエンドの失敗。

translation_timeout
504
テキスト翻訳

翻訳バックエンドのタイムアウト。

unsupported_audio_format
400
音声認識

マジックバイト検出失敗。対応: MP3 / WAV / M4A / FLAC / OGG / WEBM。

asr_audio_decode_error
400
音声認識

Base64 デコード失敗、または MIME と内容が不一致。

asr_model_not_found
400
音声認識

指定 ASR モデルが存在しないか利用不可。注意:translation の model_not_found とは別のエラーコード(asr_* 前綴)。現在は `validation_error` で捕捉、将来の細分化に向け予約済み。

asr_content_policy_violation
400
音声認識

音声コンテンツが安全ポリシーにより拒否。

audio_too_long
413
音声認識

音声データが 15 MiB の上限を超過。

asr_failed
502
音声認識

ASR バックエンドの失敗。

asr_timeout
504
音声認識

ASR バックエンドのタイムアウト。