genko.meDocs

多言語コンテンツ

1つのAPIで言語版を作り、言語ごとの公開と配信を管理する手順。

多言語コンテンツでは、1つのAPIの原稿に複数の言語版を持たせます。コンテンツIDとフィールド構成は共通で、本文などの値と公開状態は言語ごとに管理します。リスト形式とオブジェクト形式の両方に対応します。

設定から公開まで

  1. オーナーがワークスペースの設定でメイン言語とサブ言語を設定します。Freeはサブ言語を1つ、Plus・Proは数の上限なく設定できます。
  2. 対象APIの「API設定」で多言語をオンにします。言語を追加しただけでは各原稿の翻訳版は作られません。
  3. コンテンツでサブ言語を選び、メイン言語から下書きをコピーして翻訳します。別APIから移す場合は言語別の取り込みを使います。
  4. 言語版を保存してプレビューし、その言語の公開状態を変更します。メイン言語と別のサブ言語の状態は変わりません。
  5. サイト側でlangを指定して取得します。指定しない場合は従来どおりメイン言語を返します。

サイトから取得する

英語版の記事を取得する例です。英語版が未作成、または非公開なら404になります。

bash
curl --get 'https://api.genko.me/v1/your-workspace/blog/abcDEF123456' \  -H "X-API-KEY: ${GENKO_API_KEY}" \  --data-urlencode 'lang=en'
json
{  "id": "abcDEF123456",  "title": "First article",  "body": "<p>Hello.</p>",  "createdAt": "2026-09-01T00:00:00.000Z",  "updatedAt": "2026-09-01T01:00:00.000Z",  "publishedAt": "2026-09-01T01:00:00.000Z"}

lang_fallback=trueを加えると、指定言語の公開版がないときだけ、公開中のメイン言語を返します。既定ではフォールバックしません。include=_langsを加えると、そのレスポンスで返した言語と公開中の言語一覧が_langsに付きます。言語切り替えリンクを作るときに使えます。

json
{ "_langs": { "current": "en", "available": ["ja", "en"] } }

一覧、単一取得、オブジェクト形式の詳細は配信API、SDKの書き方は検索と絞り込みを参照してください。参照先のAPIも多言語なら、同じ言語の公開版を展開します。参照先の翻訳がない場合の扱いを含め、クエリ仕様で確認してください。

管理するときの注意

  • サブ言語の原稿はメイン言語からコピーした時点の値です。元の原稿を変更しても自動では同期しません。
  • 言語ごとに公開予定と終了日時、プレビューキー、編集履歴を持ちます。
  • 公開中の各言語版で未公開の変更を別々に保存・公開・破棄できます。ほかの言語版の公開内容は変わりません。
  • サブ言語版の更新を知らせるWebhookには、トップレベルのlangが付きます。
  • 言語版の保存は原稿容量に含まれます。サブ言語をワークスペースから外すと、その言語の原稿と履歴がすべて削除されます。

最終更新: 2026年10月3日

目次