Locale
最終更新: 2026年6月22日
Locale は Space がサポートする言語の設定です。各 Locale は言語コード(code、例: ko-KR・en-US)を持ち、Content や Media のフィールド値はこの 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)。Content・Media 取得のlocaleパラメータにこの値を入れると、その言語の値を受け取れます。作成時に指定し、その後は変更できません。default: この Locale が Space のデフォルト Locale かどうかです。Space にはデフォルト Locale が 1 つあり、その Locale でのみdefaultがtrueになります。optional: 必須(required)フィールドを埋める際に、この Locale を空のままにできるかどうかです。上の例はfalseなので、空のままにはできません。fallbackCode: 値がないときに代わりに参照する別の Locale のcodeです(オプション)。設定したときのみ応答に現れます。上の例では設定されていないため、キーが表示されていません。
システム属性 (sys) と本体
space・createdBy・updatedBy は Refer 形式({ "sys": { "id", "type": "Refer", "targetType" } })で入ります。
| 属性 | 型 | 説明 |
|---|---|---|
id | string | リソース固有の識別子。 |
type | string | リソースの種類。Locale は常に "Locale"。 |
space | Refer<Space> | この Locale が属する Space。 |
name | string | 人が読む名前(例: "English (United States)")。code から自動的に生成されます。 |
default | boolean | Space のデフォルト Locale かどうか。Space で 1 つだけ true。 |
code | string | 言語コード(例: ko-KR)。Content・Media 取得の locale 値になります。 |
createdBy | Refer<User> | 作成したユーザー。 |
createdAt | string (date-time) | 作成日時。 |
updatedBy | Refer<User> | 最後に変更したユーザー。 |
updatedAt | string (date-time) | 最終変更日時。 |
version | integer | 現在のバージョン。変更するたびに 1 ずつ増えます。 |
本体属性:
| 属性 | 型 | 説明 |
|---|---|---|
optional | boolean | 必須(required)フィールドを埋める際に、この Locale を空のままにできるかどうか。デフォルト Locale は通常 false(必ず埋める)。 |
fallbackCode | string | 値がないときに代わりに参照する Locale の code(オプション、チェーン可能)。設定しなければキー自体が応答にありません。 |
name は code から自動的に算出されます(例: ja-JP → "Japanese (Japan)")。そのため、作成・変更の本体には name を入れません。
Locale は公開という概念のない設定リソースです。そのため Content・Media と異なり sys に publish・archive・status がなく、version のみを持ちます。version は Locale を変更するたびに増えます。
デフォルト Locale・optional・fallback
3 つの属性はそれぞれ次を定めます。
default: Space のデフォルト Locale かどうかです。1 つの Space にデフォルトは 1 つだけで、その Locale でのみdefaultがtrueになります。作成時にはdefaultを指定できません(新しく作った Locale はデフォルトではありません)。デフォルトを変更するには、変更(PUT)でdefaultをtrueにします。すると、その Locale が新しいデフォルトになり、既存のデフォルトは解除されます。optional: 必須(required)フィールドを埋める際に、この Locale を空のままにできるかどうかです。optionalがfalseならその言語の値を必ず埋める必要があり、trueなら空のままにできます。fallbackCode: 値がないときに代わりに参照する別の Locale のcodeです。要求した 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 の一覧を訪問者に配信(読み取り)。
- 多言語対応 (概念): デフォルト Locale・
optional・fallbackCodeのルール。 - Content: フィールド値を Locale ごとに保存する本体データ。
