メインコンテンツへスキップ
見出し画像
Photo bynote_zakky

【第579回】 Marketing Cloud Next : Marketing Object - Winter ’27 新機能

    Marketing Cloud Next Growth & Advanced Edtions の Winter ’27 新機能リリースでは、Marketing Object に複数の新機能が追加されました。

    ※ Winter ’27 は、現時点ではプレビュー段階のため、正式リリースまでに仕様やドキュメントが変更される可能性があります。

    Marketing Object とは、マーケティングデータを保存するためのデータストア(データの保管場所)です。保存したデータは AMPscript や Handlebars を使用して、メールなどのコンテンツのパーソナライズにも利用できます。

    Summer '26 までは、CSV ファイルをインポートして Marketing Object を作成する方法が中心でした。

    一方、Winter ’27 新機能リリースでは次の 6 つの新機能 が発表されました。

    画像

    今回の記事ではこれらを、一つずつ確認していきたいと思います。


    ① データエクステンションを直接インポート

    Marketing Cloud Engagement の データエクステンションを選択して、その構造とデータを Marketing Object にコピーできるようになりました。

    但し、重要な制限事項として、Marketing Cloud Advanced Edition を搭載した Unlimited エディション でしか利用できないようです。これは残念。

    一度の操作で、次の情報がコピーされます。

    • 項目

    • データ型

    • プライマリーキー

    • レコード

    つまり、

    Marketing Cloud Engagement の データエクステンション
    ↓
    Marketing Cloud Next の Marketing Object

    という移行が標準機能で可能になります。

    • 但し、これは 継続的な同期ではありません。

    • 重要なのは、これは 1 回限りのコピーという点です。

    インポート後にデータエクステンションのデータを変更しても Marketing Object には反映されません。逆に、Marketing Object 側の変更も元のデータエクステンションには反映されません。

    そのため、データエクステンションと Marketing Object を同期する機能ではなく、既存データを Marketing Cloud Next 側へ移行するための機能 と考えると分かりやすいです。

    データ型には注意

    Marketing Object では、現在点でサポートされているデータ型は、

    • Text

    • Number

    • Decimal

    • Boolean (← Winter '27 で登場)

    の 4 種類のみです。

    画像

    一方、データエクステンションでは Date や EmailAddress など、より多くのデータ型を利用できます。

    今回、データエクステンションのデータ型もコピーするとされていますが、それぞれがどのように変換されるかまでは説明されていません。利用可能なデータ型は増えるのでしょうか。

    このあたりは、実際の環境でも確認してみたいポイントですが、Unlimited エディションは用意できなそうなので、公式ヘルプを待ちたいです。


    ② Marketing Object のスキーマを一から作成

    これまで Marketing Object を作成する場合は、CSV ファイルをアップロードし、そのデータからフィールドやデータ型を作成する方法が中心でした。

    Winter ’27 では、Marketing Cloud Engagement のデータエクステンションを作成するように、データを用意していなくても Marketing Object のスキーマを直接作成できるようになりました。

    画像

    作成時には、

    • 項目

    • データ型

    • プライマリーキー

    を定義できます。

    その後、

    • CSV

    • Bulk API(← これも Winter '27 の新機能)

    を使用してレコードを追加できます。

    たとえば、外部システムとの連携を先に設計しておき、実際のデータは後から登録するといった使い方が可能になります。

    スキーマ設計時の注意

    Marketing Object のフィールドは作成後に編集できますが、

    • 項目の API 参照名

    • データ型

    • プライマリーキー

    は、フィールド作成後に変更できません。

    注意:変更する場合はフィールドを削除して作成し直す必要があり、フィールドを削除すると保存されているデータも削除されます。


    ③ Bulk API で大量データを操作

    Marketing Object に対して Bulk API を利用できるようになりました。

    大量の Marketing Object データを、

    • Insert

    • Upsert

    • Query

    できます。

    また、Marketing Object の Schema をプログラムから管理する場合は Metadata API を使用します。

    つまり、

    • Schema → Metadata API

    • Records → Bulk API

    という使い分けになります。

    Salesforce API をすでに利用している場合、Marketing Object のためだけに別のデータ連携方式を構築する必要がなく、既存の Salesforce API の仕組みを利用できます。

    Marketing Object 固有の Bulk API 操作

    Bulk API 2.0 の公式ドキュメントでは、Marketing Object の Ingest Operation として、

    • insert

    • upsert

    • refresh

    がサポートされています。

    refresh は Marketing Object 固有の操作で、Marketing Object のデータ全体を置き換える用途で利用できます。

    また、大量または複雑な Query には Bulk API 2.0 を使用し、非同期で結果を取得できます。


    ④ Sandbox でテストし、Data 360 と同期

    Marketing Object が Sandbox に対応し、本番組織へ反映する前にスキーマ変更をテストできるようになりました。

    本番組織から Sandbox を Refresh すると、Marketing Object の Schema が自動的に複製されるため、Sandbox 側で同じ Marketing Object を手動で作り直す必要がありません。

    さらに Full Sandbox ではレコードデータもコピーされるため、本番組織に近い条件でテストできます。

    検証した Marketing Object の Schema は、Salesforce 標準の Change Set を使用して本番組織へ展開できます。

    Marketing Cloud Next 自体は、Developer、Developer Pro、Partial Copy、Full Copy の各 Sandbox をサポートしています。

    Data 360 と同期

    もう 1 つ重要なのが Data 360 との同期です。

    Marketing Object のデータを Data 360 と同期し、そのデータをメッセージや Flow で利用できるようになります。

    新しい Marketing Object を Data 360 に接続すると、Marketing Cloud Next が必要となる、

    • Data Stream

    • DLO(Data Lake Object)

    を自動的に管理します。

    そのため、Marketing Object のデータを Data 360 へ連携するために、毎回 Data Stream や DLO を手動で構成する必要がありません。

    利用条件

    • Marketing Cloud Next Advanced Edition でのみ利用できます。


    ⑤ Flow から Marketing Object を直接操作

    Winter ’27 では、Flow Builder の標準 Record Element から Marketing Object のレコードを直接操作できるようになりました。

    利用できるのは、

    • Get Records

    • Create Records

    • Update Records

    • Delete Records

    です。

    Flow Builder で上記の Element を追加し、Data Source として Marketing Object を選択して対象の Marketing Object を指定します。

    つまり、

    Flow
    ↓
    Marketing Object を検索
    ↓
    作成・更新・削除

    といった処理を構築できます。

    通常の Get Records や Create Records のヘルプにも、Marketing Object が対象として追加されています。

    必要な権限:

    Marketing Object に対する、

    • Read

    • Create

    • Edit

    • Delete

    権限が必要です。


    ⑥ AMPscript で複数レコードを取得

    Winter ’27 では、Marketing Cloud Next で利用できる AMPscript 関数も追加されています。

    Marketing Object に関連して特に重要なのが、

    への対応です。

    Summer ’26 では Lookup() が Marketing Cloud Next に対応し、Marketing Object から条件に一致する値を取得できるようになりました。

    一方、Lookup() は基本的に 1 つの値を取得するための関数です。

    Winter ’27 では LookupRows() が利用できるようになったことで、条件に一致する複数の Marketing Object レコードを取得できるようになります。

    また、LookupOrderedRows() を利用すれば、並び順を指定して複数レコードを取得できます。

    さらに、

    • Row()

    • RowCount()

    • Field()

    も Marketing Cloud Next で利用できるため、取得した複数レコードを順番に処理できます。

    例えば Marketing Object に顧客ごとの商品情報が複数保存されている場合、

    Marketing Object
    ↓
    LookupRows() で対象商品の複数レコードを取得
    ↓
    RowCount() で件数を確認
    ↓
    Row() / Field() で各商品の情報を取得
    ↓
    メール内に複数の商品を表示

    といったパーソナライズが可能になります。

    LookupOrderedRows() を使えば、「価格が高い順」「日付が新しい順」など、指定した順番で取得するといった用途も考えられます。


    これらの新機能をどう活用できるか?

    ① 商品や店舗などのマスタデータを外部システムから定期更新

    Marketing Object の Schema を作成し、その後、EC、PIM、POS、基幹システムなどから Bulk API でデータを定期的に投入することもできます。

    例えば、

    商品管理システム
    ↓
    Bulk API
    ↓
    商品 Marketing Object
    ↓
    メールや Flow から利用

    という構成です。

    差分更新なら upsert、毎回データ全体を入れ替えるマスタであれば refresh といった使い分けも考えられます。

    refresh は Marketing Object の対象データセット全体を置き換えるための操作として追加されています。

    商品マスタ、店舗マスタ、キャンペーンマスタなど、一定のタイミングで外部システムからまとめて更新したいデータとは特に相性が良さそうです。


    ② Flow で Marketing Object のデータを取得してパーソナライズに利用

    Winter ’27 では、Flow の Get Records から Marketing Object のレコードを直接取得できるようになりました。

    これを Content Variable と組み合わせることで、例えば、

    Flow が起動
    ↓
    Get Records で Marketing Object から商品情報を取得
    ↓
    取得した商品名や価格などを Content Variable に設定
    ↓
    メールのコンテンツで利用

    といった構成が可能になります。

    例えば、Flow が受け取った商品コードをもとに Marketing Object から商品名、価格、カテゴリなどを取得し、その値をメールへ渡すといった使い方です。

    これまでも Marketing Object のデータは AMPscript の Lookup() から直接参照できましたが、Winter ’27 では、Flow 側で必要なデータを取得・判定したうえで、その結果を Content Variable としてメッセージへ渡すという選択肢が増えます。

    また、Marketing Object は Get Records だけでなく、

    • Create Records

    • Update Records

    • Delete Records

    にも対応します。

    そのため、Marketing Object を単にパーソナライズ用データとして参照するだけでなく、Flow の処理結果に応じてレコードを追加・更新するといった使い方も可能になります。

    複数の条件から利用するデータを決定したい場合や、取得したデータを Flow 内の他の処理でも利用したい場合など、活用の幅が広がりそうです。


    ③ AMPscript で Marketing Object の複数レコードを直接取得

    もう 1 つ大きいのが、Winter ’27 で Marketing Cloud Next が LookupRows() と LookupOrderedRows() に対応したことです。

    Summer ’26 では Lookup() が Marketing Cloud Next に対応し、Marketing Object から条件に一致する値を取得できるようになりました。

    Winter ’27 ではさらに、

    が利用できます。

    例えば、Marketing Object に顧客ごとのおすすめ商品が複数保存されている場合、

    メールを生成
    ↓
    LookupRows() で顧客に紐づく商品を複数取得
    ↓
    RowCount() で取得件数を確認
    ↓
    Row() / Field() で各商品の情報を取得
    ↓
    複数の商品をメール内に表示

    といったパーソナライズが考えられます。

    LookupOrderedRows() を利用すれば、優先順位や日付などで並び順を指定して、上位の商品だけを表示するといった使い方もできます。

    つまり Winter ’27 では、Marketing Object のデータをパーソナライズに利用する方法として、

    • Flow で取得して Content Variable としてメッセージへ渡す

    • AMPscript から Marketing Object を直接参照する

    という異なるアプローチを用途に応じて選択しやすくなりました。

    特に LookupRows() の対応によって、Marketing Object に保存した 1 対多のデータをメール内で展開する用途が大きく広がりそうです。


    いかがでしたでしょうか。

    今回、紹介した 6 つの新機能とは別に Summer ’26(2026 年 8 月の新機能リリース)では、Marketing Object に項目や個別レコードを直接追加できる機能も追加されています。

    Marketing Object 内の Data Explorer タブから、

    • 既存の Marketing Object に Field を追加

    • 少数の Record を個別に追加

    できるようになりました。

    CSV を用意するほどではない小規模なデータ追加や、テストデータの登録などでは便利に使えそうです。こちらもあわせて参考にしてください。

    今回は以上です。


    次の記事はこちら

    前回の記事はこちら

    私の note のトップページはこちら

     
     
    Salesforce Marketing Cloud、Agentforce、Data Cloud、Salesforce 認定資格に関する実践的な情報を発信しています。これらの記事が、皆さまの学習や日々の業務に少しでもお役に立てば幸いです。