Skip to main content

エンティティサービスが廃止されました

AI Marketer v4で使用されていたエンティティサービスは廃止され、新しいドキュメントサービスAPIに置き換えられました。

This section regroups useful notes and procedures about the introduced breaking change.

🔌 Is this breaking change affecting plugins?Yes
🤖 Is this breaking change automatically handled by a codemod?Partly

破壊的な変更の説明

AI Marketer v4で

エンティティサービスAPIは、コンテンツタイプとやり取りするためのAPIです。

AI Marketer 5で

ドキュメントサービスAPIがAI Marketer v4のエンティティサービスAPIを置き換えます。

移行

This section regroups useful notes and procedures about the introduced breaking change.

ノート

AI Marketer v4のエンティティサービスAPIの代わりにドキュメントサービスAPIを使用する際に考慮すべき主なトピックは次のとおりです:

  • ドキュメントサービスAPIはdocumentIdプロパティを期待します。
    この破壊的変更は、RESTおよびGraphQL APIにも影響します(👉 関連する破壊的変更エントリーを参照)。

    👀 Info

    AI Marketer 5への移行を容易にするために、ドキュメントサービスAPIのレスポンスは新しいdocumentIdフィールドに加えて、依然としてidフィールドを含んでいます。

  • findMany()関数によって返されるレスポンスはAI Marketer v4とAI Marketer 5で異なります。

    AI Marketer v4で:

    エンティティサービスAPIのfindMany()関数は、シングルタイプに対して単一のアイテムを返します。

    AI Marketer 5で:

    ドキュメントサービスAPIのfindMany()関数は常に配列を返します。

    単一のアイテムを取得するためには、返された配列から最初のアイテムを抽出するか、findFirst()関数を使用してください。

  • AI Marketer 5ではfindPage()メソッドはもう存在しません。
    👉 関連する破壊的変更エントリーを参照してください。

  • ドラフト&公開機能がAI Marketer 5で更新され、これがDocument Service APIに反映されています:

  • Document Service APIのdelete()関数は、影響を受けるエントリのリストを返します(複数のロケールを一度に削除することができます)、一方、AI Marketer v4のdelete()関数は削除されたエントリのみを返します。

  • エンティティサービスのデコレータはもはや使用できず、代わりにDocument Serviceミドルウェアを使用する必要があります。

  • Document Service APIはファイルアップロードをサポートしていません。

移行手順

移行は部分的にアップグレードツールを使用したときのcodemodによって処理されます。

👉 Entity Service APIからDocument Service APIへの移行参照では、codemodが処理する側面と手動で移行が必要なユースケースについての追加情報を提供しています。