---
title: "ゲストデータ拡張REST API v2(レガシー)"
slug: "guest-data-extension-rest-api-v2--legacy-"
abstract: "Sitecore CDPゲストデータ拡張REST APIで使用されるオブジェクト属性を記述します。"
---
# ゲストデータ拡張REST API v2(レガシー)

> !重要[このREST APIの新しいバージョン(v2.1)が利用可能です](https://doc.sitecore.com/cdp/en/developers/guest-rest-api/index.html)。ゲストREST APIが初めてなら、新しいバージョンを使いましょう。あるいは、すでに古いバージョンを使っている場合は、[v2とv2.1の違いについて読](https://doc.sitecore.com/cdp/ja/developers/api/rest-apis/legacy-rest-apis/differences-between-v2-and-v2-1-of-the-guest-and-guest-data-extension-rest-apis.html "Differences between v2 and v2.1 of the Guest and Guest data extension REST APIs") んでアップグレードしてみてください。

ゲストデータ拡張は、任意の名前や値の組み合わせ(属性)を指定できる配列です。ゲストデータ拡張は任意で、組織がゲストに関するより堅牢な情報を収集できるようにします。その後、ゲストデータをバッチセグメンテーションで使い、ゲストプロファイルで閲覧できます。

[ゲストデータ拡張機能を作成する](https://doc.sitecore.com/cdp/ja/developers/api/rest-apis/legacy-rest-apis/guest-data-extension-rest-api-v2--legacy-/create-a-guest-data-extension--legacy-.html "Create a guest data extension (legacy)")と、好きな属性のオブジェクトをSitecore CDPに送信します。

組織がすべてのゲストデータ拡張を単一のシステムから一つのリクエストで送信したい場合、以下のエンドポイントをご利用ください:

POST v2/guests/<guestRef>/extext

キーと値のペア内のキー名はゲストデータ拡張になります。Sitecore CDPはオブジェクトをゲストプロファイルに格納し、バッチセグメンテーションのUIで選択可能にします。

あるいは、組織が複数のソースシステムからゲストデータ拡張を送信したい場合は、他のソースシステムからのデータが各リクエストで上書きされないようにゲスト [データ拡張グループを使用する](https://doc.sitecore.com/cdp/ja/developers/api/rest-apis/legacy-rest-apis/guest-data-extension-rest-api-v2--legacy-.html#UUID-e858e5b5-0bc9-6ca6-724d-d72e80362942_section-idm4498060040064033569291335061 "Sending guest extension data from multiple source systems") 必要があります。

以下はゲストデータ拡張の使用に関するガイドラインの一覧です:

-   データ拡張データをオブジェクトの extensions 配列に配置します。
-   name属性はextでなければなりません。または、複数のソースからゲスト拡張データを送る場合は、ext1、ext2、ext3、ext4、またはext5でなければなりません。
-   key属性はdefaultでなければなりません。
-   ゲストデータ拡張には最大100の属性があります。

以下は、データ拡張で属性を使用する際のガイドラインの一覧です。

-   属性名は [JSON RFC 7159](https://www.rfc-editor.org/rfc/rfc7159) 仕様に従い、英数字\[A-Z,a-z,0-9\]でなければなりません。
-   データ拡張の属性名はキャメルケースで書かなければなりません。
-   属性名は一意でなければなりません。
-   属性名を意味のあるものにすることをおすすめします。

この例では、loyaltyTier、rewardBalance、vipMember、loyaltyNumberがゲストデータ拡張となります。

curl -X POST '<baseURL>/v2/guests/3bc77f6e-368a-4343-bb75-222f8d5e77a8/extext' \\
-u '<username>:<password>' \\
-H 'Accept: application/json' \\
--data-raw '
{
 "key": "default",
 "loyaltyTier": "level2",
 "rewardBalance": 5012.25,
 "vipMember": true,
 "loyaltyNumber": 3452
}'

## 複数のソースシステムからのゲスト拡張データの送信

組織は複数のソースシステムからゲスト拡張データをSitecore CDPに送信できます。各ゲストデータ拡張グループには最大100のカスタム属性を含めることができます。

例えば、組織はロイヤルティシステムからロイヤルティデータを取得するためにゲストデータ拡張機能を送信し、顧客関係管理(CRM)システムからメールの好みや代替郵送先住所などを取得したい場合もあります。

> !警告複数のソースシステムからデータを送信するには、各ソースシステムごとに異なる拡張グループ名を使用する必要があります。これをしないと、ソースシステムがゲスト拡張データをSitecore CDPに送るたびに、他のソースシステムから送信されたゲスト拡張データが上書きされます。これは、ゲストデータ拡張REST APIリクエストに含まれるすべてのキー-値ペアを上書きし、APIリクエストに含まれていないキー値を削除するためです。

組織は最大6つのゲストデータ拡張グループを使用できます。各グループ名は異なるソースシステムを表します。拡張グループ名は以下のように使用しなければなりません:

-   ext
-   ext1
-   ext2
-   ext3
-   ext4
-   ext5

エンドポイントにはゲストデータ拡張グループの名前を含める必要があります。リクエストの本文に必ずしも含める必要はありません。

以下のリクエストでは、ゲストデータ拡張グループ名としてext2を使用します。

POST\`\`v2/guests/guestRef/extext2

例えば、ロイヤルティシステムからSitecore CDPへデータを送信したい場合、組織はエンドポイントで常に同じゲスト拡張グループ名を使用しなければなりません。他のソースシステムからの拡張を送信するために同じゲスト拡張グループ名を使わないでください。

> !注キー-値ペアのキー名に一貫したプレフィックスを用いましょう。これにより、バッチセグメンテーションUI内の特定のソースシステムのすべてのゲストデータ拡張を素早く見つけやすくなります。例えば、memberをプレフィックスとして使うと、すべてのmemberゲストデータ拡張がアルファベット順にUI内で一緒に表示されます。これにより、他のソースシステムから送信されたキー-値ペアを上書きしないようにします。例えば、ロイヤルティメンバーシップやCRMシステム用のnumberキーが存在することがあります。

ユーザーは以下の例のようにバッチセグメンテーションでゲストデータ拡張にアクセスできます。

![Accessing guest data extensions in batch segmentation](https://doc.sitecore.com/api/markdown-image/cdp/ja/developers/api/images/guestDataExt.png)

この例では、memberCardBalance、memberCardCategory、memberCardTypeが組織のロイヤリティシステムから送信されるゲストデータ拡張となります。

curl -X POST '<baseURL>/v2/guests/3bc77f6e-368a-4343-bb75-222f8d5e77a8/extext2' \\
-u '<username>:<password>' \\
-H 'Accept: application/json' \\
--data-raw '
{
 "key": "default",
 "memberCardBalance": 8938,
 "memberCardCategory": "promoter",
 "memberCardType": "platinum"
}'