メインコンテンツへスキップ

概要

Legitmark はタクソノミーデータのローカライズされた API レスポンスをサポートしています — カテゴリ、タイプ、サイド、サービス、ステージ、理由。Accept-Language ヘッダーを設定すると、翻訳可能なフィールドが英語ではなくリクエストされた言語で返されます。 ユーザーの希望言語でカテゴリ名、撮影手順、拒否理由を表示するのに役立ちます。

サポートされているロケール

ロケールコード言語Accept-Language
en英語(デフォルト)Accept-Language: en
zh中国語(簡体字)Accept-Language: zh
ja日本語Accept-Language: ja
ヘッダーが省略された場合、またはサポートされていないロケールが含まれている場合、API はデフォルトで英語を返します。

使用方法

翻訳可能なデータを返すリクエストに Accept-Language ヘッダーを追加します:
const response = await fetch('https://api.legitmark.com/api/v2/categories?active_only=true', {
  headers: {
    'Authorization': 'Bearer leo_xxxxxxxxx',
    'Accept-Language': 'ja'
  }
});
const { data } = await response.json();
// data[0].name → "バッグ"("Bags" の代わりに)
レスポンスには使用されたロケールを確認する Content-Language ヘッダーが含まれます:
Content-Language: ja

翻訳可能なエンドポイント

以下のエンドポイントがローカライズされたレスポンスをサポートしています:

カテゴリ

エンドポイント翻訳フィールド
GET /api/v2/categoriesname
GET /api/v2/categories/:uuidname
GET /api/v2/categories/:uuid/typesname(タイプ)
GET /api/v2/categories/treename(カテゴリとタイプ)

タイプ

エンドポイント翻訳フィールド
GET /api/v2/typesname
GET /api/v2/types/:uuidname

サイド(撮影要件)

エンドポイント翻訳フィールド
GET /api/v2/sidesnamedescription
GET /api/v2/sides/:uuidnamedescription
GET /api/v2/sr/:uuid/side-groupsnamedescription(ネストされたサイド)
サイドの翻訳は、ユーザーに撮影手順を表示するのに特に役立ちます。例えば、「正面」とその説明「アイテムの正面の鮮明な写真を撮影してください」をユーザーの言語で表示できます。

理由(拒否理由)

エンドポイント翻訳フィールド
GET /api/v2/reasonsnamedescription
GET /api/v2/reasons/:uuidnamedescription
GET /api/v2/reasons/groupednamedescription

サービス

エンドポイント翻訳フィールド
GET /api/services/:uuidnamedescription

ステージ

エンドポイント翻訳フィールド
ステージエンドポイントtitledescription

サービスリクエスト(V2)

エンドポイント翻訳フィールド
GET /api/v2/sr/:uuid埋め込まれたカテゴリ、タイプ、サイド、理由が翻訳されます

例:ローカライズされたタクソノミーフロー

ユーザーの言語でタクソノミー選択を提示する典型的な統合:
const userLocale = 'ja'; // ユーザー設定から

const headers = {
  'Authorization': 'Bearer leo_xxxxxxxxx',
  'Accept-Language': userLocale
};

// ステップ 1:日本語でカテゴリを取得
const categoriesRes = await fetch(
  'https://api.legitmark.com/api/v2/categories?active_only=true',
  { headers }
);
const { data: categories } = await categoriesRes.json();
// → [{name: "バッグ", uuid: "..."}, {name: "時計", uuid: "..."}, ...]

// ステップ 2:選択したカテゴリのタイプを取得(日本語)
const typesRes = await fetch(
  `https://api.legitmark.com/api/v2/categories/${selectedCategoryUuid}/types`,
  { headers }
);
const { data: types } = await typesRes.json();
// → [{name: "トートバッグ", uuid: "..."}, ...]

// ステップ 3:SR 作成後、ローカライズされた説明付きのサイドグループを取得
const sidesRes = await fetch(
  `https://api.legitmark.com/api/v2/sr/${srUuid}/side-groups`,
  { headers }
);
const { data: sideGroups } = await sidesRes.json();
// サイドには撮影ガイダンス用の翻訳された名前と説明があります

フォールバック動作

  • 特定のフィールドの翻訳が利用できない場合、英語の値が返されます
  • ロケールヘッダーの形式が不正またはサポート外の場合、英語が使用されます
  • ブランドとモデルは翻訳されません — グローバルにオリジナル名を使用します

次のステップ

  1. 確認 タクソノミー 分類システムを理解する
  2. 実装 ワークフロー サービスリクエストの完全なライフサイクル
  3. 設定 Webhooks リアルタイムのステータス更新