Locale

最終更新: 2026年6月22日

LocaleSpace がサポートする言語の設定です。各 Locale は言語コード(code、例: ko-KRen-US)を持ち、ContentMedia のフィールド値はこの Locale ごとに別々に保存されます。韓国語の値と英語の値を同じフィールドに並べて格納しておき、取得時に必要な言語の値を選んで受け取る仕組みです。

このページは Locale を作成・変更する CMA(Content Management API)の管理操作を扱います。公開された Locale の一覧を訪問者に読み取り専用で配信する側は CDA Locale です。

リソース構造

以下はデモ Space のデフォルト Locale 1 件("English (United States)")です。sys(システム属性)とともに、Locale の本体属性である optional を持ちます。

{
  "sys": {
    "id": "4PXRRUpIqJ1sdcqujzO7lYJD1sReNG",
    "type": "Locale",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "name": "English (United States)",
    "default": true,
    "code": "en-US",
    "createdBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
    "createdAt": "2026-06-17T10:43:31.960Z",
    "updatedAt": "2026-06-17T10:43:31.960Z",
    "updatedBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
    "version": 1
  },
  "optional": false
}

主なキー:

  • code: この Locale の言語コードです(例: en-US)。ContentMedia 取得の locale パラメータにこの値を入れると、その言語の値を受け取れます。作成時に指定し、その後は変更できません。
  • default: この LocaleSpace のデフォルト Locale かどうかです。Space にはデフォルト Locale が 1 つあり、その Locale でのみ defaulttrue になります。
  • optional: 必須(required)フィールドを埋める際に、この Locale を空のままにできるかどうかです。上の例は false なので、空のままにはできません。
  • fallbackCode: 値がないときに代わりに参照する別の Localecode です(オプション)。設定したときのみ応答に現れます。上の例では設定されていないため、キーが表示されていません。

システム属性 (sys) と本体

spacecreatedByupdatedByRefer 形式({ "sys": { "id", "type": "Refer", "targetType" } })で入ります。

属性説明
idstringリソース固有の識別子。
typestringリソースの種類。Locale は常に "Locale"
spaceRefer<Space>この Locale が属する Space
namestring人が読む名前(例: "English (United States)")。code から自動的に生成されます。
defaultbooleanSpace のデフォルト Locale かどうか。Space で 1 つだけ true
codestring言語コード(例: ko-KR)。ContentMedia 取得の locale 値になります。
createdByRefer<User>作成したユーザー。
createdAtstring (date-time)作成日時。
updatedByRefer<User>最後に変更したユーザー。
updatedAtstring (date-time)最終変更日時。
versioninteger現在のバージョン。変更するたびに 1 ずつ増えます。

本体属性:

属性説明
optionalboolean必須(required)フィールドを埋める際に、この Locale を空のままにできるかどうか。デフォルト Locale は通常 false(必ず埋める)。
fallbackCodestring値がないときに代わりに参照する Localecode(オプション、チェーン可能)。設定しなければキー自体が応答にありません。

namecode から自動的に算出されます(例: ja-JP"Japanese (Japan)")。そのため、作成・変更の本体には name を入れません。

Locale は公開という概念のない設定リソースです。そのため ContentMedia と異なり syspublisharchivestatus がなく、version のみを持ちます。versionLocale を変更するたびに増えます。

デフォルト Locale・optional・fallback

3 つの属性はそれぞれ次を定めます。

  • default: Space のデフォルト Locale かどうかです。1 つの Space にデフォルトは 1 つだけで、その Locale でのみ defaulttrue になります。作成時には default を指定できません(新しく作った Locale はデフォルトではありません)。デフォルトを変更するには、変更(PUT)で defaulttrue にします。すると、その Locale が新しいデフォルトになり、既存のデフォルトは解除されます。
  • optional: 必須(required)フィールドを埋める際に、この Locale を空のままにできるかどうかです。optionalfalse ならその言語の値を必ず埋める必要があり、true なら空のままにできます。
  • fallbackCode: 値がないときに代わりに参照する別の Localecode です。要求した Locale に値がないと、fallbackCode が指す Locale に移って値を探します。移った先の Locale にも fallbackCode があれば、そのまま続くチェーンになります。設定しなければキー自体が応答にありません。

デフォルト Locale・必須の入力・fallback の詳細な動作は 多言語対応 (概念) で扱います。

API

以下のすべてのエンドポイントの基準 URL は https://cma.weegloo.com/v1 であり、Authorization ヘッダーに CMA を認証する Bearer トークンが必要です。変更・部分変更には楽観的並行性制御のために X-Weegloo-Version ヘッダー(現在のリソースの sys.version)を一緒に送る必要があります。作成と削除にはこのヘッダーはありません。

  • CDA Locale: 公開された Locale の一覧を訪問者に配信(読み取り)。
  • 多言語対応 (概念): デフォルト LocaleoptionalfallbackCode のルール。
  • Content: フィールド値を Locale ごとに保存する本体データ。