Masters
カテゴリやタグなどの共通選択肢をマスタエンティティ+レコードで管理し、Form Set の select / radio 等から参照します。サイトへ公開すると公開 API から読めます。
できていること(完成形)
| 項目 | 状態 |
|---|---|
| エンティティ | key 付きマスタが 1 つ以上ある |
| レコード | value(言語共通)と label(表示)が入っている |
| サイト公開 | Console で サイトへ公開 済み(未公開は公開 API に出ない) |
| 公開 API | master-entities / .../records が 200 |
| (任意) | master.published Webhook を購読している |
いつ使うか
- ブログカテゴリ・都道府県など、複数 Form Set で共有する選択肢
- 公開サイトのフィルタ UI を API から組み立てたいとき
- Agents で Blueprint からマスタ定義を投入したいとき
確認チェックリスト
- [ ] Console → マスタデータ でエンティティとレコードを作成した
- [ ] サイトへ公開 した(空マスタは公開できない)
- [ ]
GET .../master-entities/{key}/records?locale=jaでvalue/labelが返る - [ ] Form Set の select がマスタ参照で、公開 snapshot の保存値は value
今すぐやる
- マスタを作成し、レコードを追加する(
valueは安定 ID、labelは表示名) - サイトへ公開 する
- 公開 API で確認する
bash
curl "https://api.luno.rest/public/p/{projectId}/v1/master-entities"
curl "https://api.luno.rest/public/p/{projectId}/v1/master-entities/category/records?locale=ja"ts
const BASE = 'https://api.luno.rest/public/p/{projectId}/v1'
const entities = await fetch(`${BASE}/master-entities`).then((r) => r.json())
const records = await fetch(
`${BASE}/master-entities/category/records?locale=ja`
).then((r) => r.json())bash
# 「category マスタを作ってサイト公開し、公開 records を確認して」- Form Set の select / radio にマスタを紐付け、エントリを公開する
次の一手
| 目的 | ページ |
|---|---|
| エンドポイント | 公開 API · マスタ |
| フィールド連携 | フォームビルダー |
master.published | Webhooks |
| Blueprint / MCP | AI Agents ガイド |