|
ドキュメント
デモを予約プラットフォーム
プラットフォームMCPCLIAPI
ワークフロー
ガイド変更履歴

ようこそ

  • 概要
  • 認証
  • エラーとステータスコード
  • Webhookシグネチャ

ローカライゼーション

  • 概要
  • ジョブを作成
  • 翻訳対象外のキーをロックする
  • ジョブグループを追跡
  • 単一ジョブを取得
  • ジョブ一覧
  • Webhook配信
  • リアルタイム進捗(WebSocket)

パイプライン

  • 概要
  • ローカライズ前のAI編集
  • 人によるレビュー
  • AI評価(ポストエディット)
  • 自然なコピーに言い換える
  • 逆翻訳チェック
  • パイプラインを設定
  • パイプライン実行を確認する

プロビジョニング

  • 概要
  • プロビジョニングジョブを作成
  • ソースの種類
  • AIが抽出するもの
  • Webhook配信
  • ライブ進行状況(WebSocket)

同期

  • Localize
  • Recognize

エンジン管理

  • エンジン提案

プロビジョニングジョブを作成

手元にあるソースを送れば、すぐにエンジンが返ってきます。POST /jobs/provisioning には新しいエンジン名と最大 10 件のソース(クロール対象のリンクまたは生テキスト)を渡し、レスポンスとしてエンジンIDを含む 202 Accepted を受け取ります。AI がコンテンツを読み終えるまで待つ必要はありません。呼び出しが返った瞬間にエンジンは作成されており、設定はジョブの進行に合わせて反映されます。

text
POST /jobs/provisioning

このページでは、作成リクエストのパラメータ、リクエスト形式、そして 202 レスポンスを扱います。非同期プロビジョニングが初めてなら、まずは Async Provisioning API overview で全体像をつかんでください。良いソースの条件は Source types、そこから AI が何を抽出するかは What the AI extracts で説明しています。

認証

API キーは X-API-Key ヘッダーで渡します。キーは組織スコープで、組織内のすべてのエンジンにアクセスできます。詳しくは Authentication をご覧ください。

パラメータ#

必須なのは engine.name だけです。それ以外はエンジンが何を学習するかを決める項目で、すべて省略すればデフォルト設定のままのクリーンなエンジンが作成されます。

パラメータ型説明
engine.namestring新しいローカライゼーションエンジンの名前。
engine.descriptionstring(任意)エンジンの説明を自由記述で指定します。
localesstring[](任意)設定対象となる BCP-47 のターゲットロケール。例: ["es", "ja", "de"]。
sourcesarray(任意)解析対象のソースを最大 10 件まで指定できます。各ソースは link(プラットフォームがクロールする URL)または content(生テキストまたは markdown)です。詳しくは Source types を参照してください。
callbackUrlstring(任意)完了結果の受信用 HTTPS webhook URL。HTTPS のみ対応しており、HTTP のコールバック URL は拒否されます。詳しくは Webhook delivery を参照してください。

リクエスト#

ソースは { type, payload } オブジェクトです。link ソースには、ブランドガイドライン、スタイルガイド、製品ドキュメントなど、十分な文脈があるページを指定してください。直接貼り付けられる用語ルールやトーンルールには content を使います。以下のリクエストはその両方を組み合わせた例で、クロール対象の 2 ページと明示的なルールの 1 ブロックが含まれています。

javascript
const response = await fetch("https://api.lingo.dev/jobs/provisioning", {
  method: "POST",
  headers: {
    "X-API-Key": process.env.LINGO_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    engine: {
      name: "Acme Corp Engine",
      description: "Production localization engine for acme.com",
    },
    locales: ["de", "fr", "ja", "es"],
    sources: [
      { type: "link", payload: "https://acme.com/brand-guidelines" },
      { type: "link", payload: "https://acme.com/docs/style-guide" },
      {
        type: "content",
        payload:
          "Brand name 'Acme' is never translated. Use formal tone in German (Sie-form). Product names: AcmeFlow, AcmeSync, AcmeVault - always keep in English.",
      },
    ],
    callbackUrl: "https://your-app.com/webhooks/provisioning",
  }),
});

const { jobId, engineId, status } = await response.json();
// 202 back right away.
// status: "in_progress" – the AI is reading your sources.
console.log(engineId); // "eng_X1y2Z3a4B5c6D7e8" – usable right now

レスポンス(202 Accepted)#

この呼び出しはクロールや解析の完了を待たずに返り、進行状況を追跡するためのジョブIDと、その時点ですでに有効なエンジンIDを受け取れます。

json
{
  "jobId": "pjb_A1b2C3d4E5f6G7h8",
  "engineId": "eng_X1y2Z3a4B5c6D7e8",
  "status": "in_progress"
}
フィールド説明
jobIdプロビジョニングジョブID(pjb_ プレフィックス)。進行状況は connecting a WebSocket でリアルタイムに追跡でき、完了時には webhook で結果を受け取ることもできます。
engineId新しいエンジンのID(eng_ プレフィックス)。すぐに利用でき、AI が抽出した設定はジョブの進行中にこのエンジンへ反映されます。
statusソースを指定した場合は in_progress、指定しない場合は completed です(下記参照)。

この非同期呼び出しの価値は、待たされないことにあります。engineId は同じ 202 の中で返され、その時点ですぐに使える実体のあるエンジンを指します。保存しておくことも、これを通して synchronous Localize リクエストを送ることも、AI がソースを 1 つも読み終えていない段階でアプリに組み込むこともできます。ブランドボイス、用語集項目、指示が抽出されるたびに、プラットフォームはそれらを同じエンジンへ順次反映していきます。つまり、設定が揃う前からエンジン自体は存在しています。ジョブによって実際に何が作成されるのかを正確に知りたい場合は、What the AI extracts をご覧ください。

ソースがなくても、待たずにエンジンを受け取れます。

sources を省略するとクロール対象がないため、エンジンはデフォルトのモデル設定で作成され、同じレスポンス内で status: "completed" と一緒に返されます。自分で設定する空のエンジンが欲しいときは、これが最短ルートです。1 回の呼び出しで、すぐ使える engineId が手に入り、追跡すべきバックグラウンドジョブも発生しません。

次のステップ#

Source types
link ソースと content ソースの違いと、解析に値するソースの条件を解説します。
What the AI extracts
ブランドボイス、用語集項目、指示事項に加え、ジョブが返す要約も紹介します。
Webhook delivery
コールバック URL で完了結果を受け取り、署名を検証する方法を説明します。

このページは役に立ちましたか?

Max PrilutskiyMax Prilutskiy·更新済み 約2か月前·2分で読めます