Content Type

最終更新: 2026年7月3日

CDA(Content Delivery API)は、公開済みリソースを公開訪問者に配信する読み取り専用の API です。このページでは、公開済みの Content Type、つまり Content が従う型(スキーマ)を取得する方法を扱います。この型がどのようなフィールドを持ち、各フィールドがどのような型・多言語対応の有無・必須の有無・バリデーションルールを持つかを CDA で読み取れば、その型に従う公開済み Content の形をあらかじめ把握できます。

CDA には取得(GET)エンドポイントのみがあり、Content Type を作成・修正・公開する操作は CMA Content Type が担います。認証や公開配信モデル(公開スナップショット・revision・公開されたものだけが見える)など CDA 共通の動作は CDA 概要 を参照してください。Content Type は型のスキーマであるため、取得時に locale パラメータを受け取りません。

リソース構造

以下は、デモ Space の公開済み Content Type "商品" を CDA が単一取得で配信する形です。sys(システム属性)とともに、namedisplayFieldpublishWithAuthorfields といった本文属性を持ちます。

{
  "sys": {
    "id": "3trmXRLdJF4GBlAjtcuoZ7Pnxj8dlA",
    "type": "ContentType",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "createdAt": "2026-06-14T17:04:46.846Z",
    "updatedAt": "2026-06-17T03:13:49.943Z",
    "revision": 7
  },
  "name": "商品",
  "displayField": "productName",
  "fields": [
    { "id": "5n06s7ocmwdi", "name": "商品名", "apiName": "productName", "type": "ShortText", "localized": true, "required": true, "validations": [], "disabled": false },
    { "id": "1gecyz8g4llwf", "name": "価格", "apiName": "price", "type": "Long", "localized": false, "required": false, "validations": [], "disabled": false },
    { "id": "3ow4popgz54zg", "name": "詳細説明", "apiName": "description", "type": "RichText", "localized": true, "required": false, "validations": [], "disabled": false },
    { "id": "2alxdptmdub1s", "name": "代表写真", "apiName": "photo", "type": "Refer", "localized": false, "required": false, "validations": [], "disabled": false, "targetType": "Media" },
    {
      "id": "2a80lehazfx3t",
      "name": "ブランド",
      "apiName": "brand",
      "type": "Refer",
      "localized": false,
      "required": false,
      "validations": [
        { "referContentType": [ { "sys": { "id": "3trmXRM3RqbgSnifyg7OveRYWnJWEG", "type": "Refer", "targetType": "ContentType" } } ] }
      ],
      "disabled": false,
      "targetType": "Content"
    }
  ],
  "publishWithAuthor": false
}

主要なキー:

  • sys.id: Content Type の一意な識別子です。単一取得パスの {contentTypeId} に入ります。
  • sys.revision: 公開された時点のバージョンです。CDA は管理用の version を含まないため、公開バージョンを指す値は revision 一つです。
  • name: Content Type の名前です(例: 商品)。
  • displayField: コンテンツスタジオの一覧で各 Content を代表して表示するフィールドの apiName です(例: productName)。
  • publishWithAuthor: Content の公開時に作成者情報を一緒に含めるかどうかです(例では false)。
  • fields: この型が定義するフィールドの一覧です。各項目の構造は下記 フィールド で説明します。

システム属性 (sys)

公開済み Content Typesys は、公開スナップショット用の属性のみを含みます。spacecreatedByupdatedByRefer の形({ "sys": { "id", "type": "Refer", "targetType" } })で入ります。

属性説明
idstringリソースの一意な識別子。
typestringリソースの種類。Content Type は常に "ContentType"
spaceRefer<Space>この Content Type が属する Space
createdAtstring (date-time)作成日時。
updatedAtstring (date-time)最終更新日時。
revisioninteger公開された時点のバージョン。公開するたびに、その時点のバージョンがここに入ります。
createdByRefer<User>作成したユーザー。Content TypepublishWithAuthor が有効なときのみ含まれます。
updatedByRefer<User>最後に修正したユーザー。publishWithAuthor が有効なときのみ含まれます。

公開スナップショットであるため、CMA の sys にある versionstatuspublisharchive は含まれません。公開バージョンを指す値は revision 一つだけです。

フィールド

fields は、この Content Type が定義するフィールドの一覧です。各項目は次の構造(FieldDefinition)を持ちます。

キー説明
idstringフィールドの一意な識別子。
namestringコンテンツスタジオに表示されるフィールド名(例: 商品名)。
apiNamestringAPI でこのフィールドを指すキー。公開済み Contentfields でも、このキーで値を読み取ります。
typestring (enum)フィールドの型。下記 フィールドの種類 (type) を参照。
localizedboolean多言語の値を持てるかどうか。
requiredboolean必須入力かどうか。
validationsarray値に適用されたバリデーションルールの一覧。ルールがなければ空の配列 []
disabledboolean無効化されているかどうか。
targetTypestring (enum)typeRefer のときのみ。参照先が ContentMedia か。
itemsobjecttypeArray のときのみ。配列要素の定義(Refer 要素または ShortText 要素)。

フィールドの種類 (type)

type は、値が保存・取得される方式を決定します。一部の型は検索動作が異なります。

type意味備考
ShortText短い単一行テキスト。正確なキーワード取得に適する。
LongText長い本文テキスト。全文(full-text)類似度検索をサポート。
RichText書式のある本文。検索対象ではなく、書式表現用。
Long整数。例: 価格 price
Number実数(小数を含む)。
Boolean真/偽。
Date日付・時刻。
Json任意の JSON 構造。
Location位置(座標)。
Refer他のリソースを指す参照。targetTypeContent または Media を指定。
Array複数の値を保持する配列。items で要素定義を伴う。

"商品" の例では、商品名ShortText価格Long詳細説明RichText代表写真Refer(targetType: Media)、ブランドRefer(targetType: Content)です。ブランド フィールドは validationsreferContentType で、特定の Content Type(ここでは "ブランド"、sys.id3trmXRM3RqbgSnifyg7OveRYWnJWEG)の Content のみを参照するよう制限します。

validations に使えるバリデーションルールの全キーカタログは CMA Content Type にまとめられています。CDA が配信する公開スナップショットも、同じ構造をそのまま含みます。

API

以下の二つのエンドポイントの基準 URL は https://cda.weegloo.com/v1 であり、Authorization ヘッダーに CDA を認証する Bearer トークンが必要です。Content Type は型(スキーマ)であり、言語を選ぶ対象ではないため、Content の取得とは異なり locale クエリパラメータを受け取りません。