メインコンテンツまでスキップ

Documents

Strapi 5 における document は API 上の概念です。document は、あるコンテンツタイプの 1 エントリーに対する複数のバリエーションをまとめたものです。

シングルタイプは 1 つの固有 document を持ち、コレクションタイプは複数の document を持てます。

管理パネル利用時は document という言葉は通常意識しません。ユーザーは コンテンツマネージャーentry を作成・編集します。例えば、特定ロケールの entry 一覧を見たり、特定ロケールの下書きを編集したりします。

ただし API レベルでは、entry のフィールド値は次のように複数状態を持ちます。

  • 英語ロケールとフランス語ロケールで内容が異なる
  • 各ロケールで draft 版と published 版が異なる

すべてのロケールにおける draft / published の内容をまとめる単位が document です。

Document Service API で document を操作すると、document 全体、またはその一部データを作成・取得・更新・削除できます。

次の図は、国際化(i18n)Draft & Publish の有効化状態ごとに、コンテンツがどのようなバリエーションを持つかを示します。

Loading diagram...
  • コンテンツタイプで i18n が有効な場合、document は複数の document locale を持てます。
  • コンテンツタイプで Draft & Publish が有効な場合、document は publisheddraft の 2 バージョンを持てます。
document データを扱う API

document またはその中のデータを扱うには次を使います。

  • バックエンドサーバー側(コントローラー、サービス、プラグインのバックエンド側など)では Document Service API を使う。
  • アプリのフロント側では REST API または GraphQL API でデータを取得する。

API 全体の説明は Content API の導入 を参照してください。

既定で返るバージョン

バックエンド API とフロント API では、パラメーター未指定時の既定バージョンが異なります。

  • Document Service API は既定で draft を返す
  • REST / GraphQL API は既定で published を返す