CDA (Content Delivery API)
最終更新: 2026年7月3日
CDA(Content Delivery API)は、公開された Content・Media などを訪問者に配信する読み取り専用 API です。Space を運用する側がコンテンツスタジオや CMA でコンテンツを作成して公開すると、Web サイトやアプリは CDA でその公開版を読み取って画面に表示します。作成・編集・公開は CDA ではなく CMA が担当します。
ベース URL は https://cda.weegloo.com/v1 です。認証には通常 least-privilege な DeliveryAccessToken を使います。公開ブラウザ配信でも安全なように、必要な範囲だけを持つトークンです。Weegloo User Bearer トークンでも読み取れますが、ブラウザ配信には権限が過剰なため DeliveryAccessToken を推奨します。
共通動作
以下は CDA リソース全般に適用されます。各リソースのページはこの動作を前提とし、自身固有の内容のみを扱います。
-
読み取り専用。 すべてのエンドポイントが取得(GET)です。書き込み・公開は CMA の管轄です。
-
公開されたものだけが見えます。 Content・Media・Content Type は公開されたスナップショットのみが配信されます。CMA の Draft や未公開の変更分は CDA には現れません。
-
公開スナップショットの
sys。 上記 3 リソースのsysには管理用のversion・status・publishがなく、公開された時点のバージョンを指すrevisionのみがあります。(Locale は公開対象ではなく設定リソースなのでversionをそのまま持ちます。) -
localeによる言語選択。 Content・Media の取得では、localeクエリパラメータでどの言語で受け取るかを指定します。3 通りの動作があります。locale=ko-KRのようにコードを指定すると、fieldsをそのロケールの単一の値として返します(ロケールマップではありません)。値がなく Fallback も届かない場合、そのフィールドは空またはnullになります。- 省略すると Space のデフォルト Locale で同じ方式で返します。
locale=*を指定すると、1 つの言語に絞らず、すべてのロケール値を含むマップ({ apiName: { locale: value } })をそのまま返します。
1 つの言語で受け取る前の 2 つのケースでは、応答に実際に使用したロケールを知らせる
x-weegloo-localeヘッダーが付きます(locale=*の場合は付きません)。(Content Type はテンプレートのスキーマなのでlocaleを受け取らず、Sync は言語を選ばずロケールマップをそのまま配信します。) -
作成者の公開。 Content の
createdBy・updatedByは、その Content Type のpublishWithAuthorが有効な場合にのみ配信されます。Media は作成者情報を常に省略します。
リソース
- Content Type: 公開された Content Type(コンテンツのテンプレートとフィールド定義)を取得します。
- Content: 公開された Content を全体一覧・単一・Content Type 別に取得します。
- Media: 公開された Media(ファイルアセット)と配信 URL を取得します。
- Locale: Space がサポートする言語設定(
code・デフォルト可否・fallbackCode)を取得します。設定リソースなのでsysにversionを持ちます。 - Sync: 最後の同期以降に変更・削除されたものだけを受け取る増分同期です。値はロケールマップをそのまま配信し、1 つの言語に絞りません。
関連ドキュメント
- CMA Content Type: コンテンツのテンプレートとコンテンツを作成・編集・公開する管理 API。
- ACDA: 同じ配信を会員(ServiceUser)の身元で実行するバージョン。
