セグメント定義エンドポイント
Adobe Experience Platformでは、プロファイルのグループから特定の属性や行動のグループを定義するセグメント定義を作成できます。 セグメント定義は、Profile Query Language (PQL)で記述されたクエリをカプセル化するオブジェクトです。 セグメント定義は、オーディエンスを作成するためにプロファイルに適用されます。 このオブジェクト(セグメント定義)は、PQL述語とも呼ばれます。 PQLの述語は、Real-Time Customer Profileに提供する任意のレコードまたは時系列データに関連する条件に基づいて、セグメント定義のルールを定義します。 PQL クエリの記述について詳しくは、PQL ガイドを参照してください。
このガイドでは、セグメント定義をより深く理解するための情報を提供し、APIを使用して基本的なアクションを実行するためのAPI呼び出しの例を紹介します。
はじめに
このガイドで使用されているエンドポイントは、Adobe Experience Platform Segmentation Service APIの一部です。 続行する前に、必須ヘッダーやサンプル API呼び出しの読み取り方法など、APIへの呼び出しを正常に行うために知っておく必要がある重要な情報については、入門ガイド を確認してください。
セグメント定義のリストの取得 list
組織のすべてのセグメント定義のリストを取得するには、/segment/definitions エンドポイントにGET リクエストを実行します。
API 形式
/segment/definitions エンドポイントは、結果を絞り込むのに役立つ、複数のクエリパラメーターをサポートしています。 これらのパラメーターはオプションですが、高価なオーバーヘッドを減らすために使用することを強くお勧めします。 パラメーターなしで、このエンドポイントを呼び出すと、組織で使用可能なすべてのセグメント定義が取得されます。 複数のパラメーターを使用する場合は、アンパサンド(&)で区切ります。
GET /segment/definitions
GET /segment/definitions?{QUERY_PARAMETERS}
クエリパラメータ
| table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 | ||
|---|---|---|
| パラメーター | 説明 | 例 |
start |
返されるセグメント定義の開始オフセットを指定します。 | start=4 |
limit |
返される、1 ページあたりのセグメント定義の数を指定します。 | limit=20 |
page |
どのページからセグメント定義の結果を表示するかを指定します。 | page=5 |
sort |
結果を並べ替えるフィールドを指定します。 は次の形式で記述されます:[attributeName]:[desc/asc]。 |
sort=updateTime:desc |
evaluationInfo.continuous.enabled |
セグメント定義でストリーミングを有効にするかどうかを指定します。 | evaluationInfo.continuous.enabled=true |
リクエスト
次のリクエストは、組織内に投稿された最後の2つのセグメント定義を取得します。
| code language-shell |
|---|
|
応答
応答が成功すると、HTTP ステータス 200が返され、指定した組織のセグメント定義のリストがJSONとして返されます。
| code language-json |
|---|
|
新しいセグメント定義の作成 create
新しいセグメント定義を作成するには、/segment/definitions エンドポイントに POST リクエストを実行します。
API 形式
POST /segment/definitions
リクエスト
新しいセグメント定義を作成する場合は、pql/textまたはpql/json形式で作成できます。
| accordion | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| セグメント定義を作成するためのサンプルリクエスト。 | ||||||||||||||||||||||
|
| accordion | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| セグメント定義を作成するためのサンプルリクエスト。 | ||||||||||||||||||||||
|
応答
リクエストが成功した場合は、新しく作成したセグメント定義の詳細と HTTP ステータス 200 が返されます。
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| プロパティ | 説明 |
id |
新しく作成したセグメント定義のシステム生成ID。 |
evaluationInfo |
セグメント定義が受ける評価の種類を示すオブジェクト。 バッチ、ストリーミング(継続的とも呼ばれます)、エッジ(同期とも呼ばれます)の各セグメンテーションを使用できます。 |
特定のセグメント定義の取得 get
特定のセグメント定義に関する詳細な情報を取得するには、/segment/definitions エンドポイントにGET リクエストを行い、取得するセグメント定義のIDをリクエストパスに指定します。
API 形式
GET /segment/definitions/{SEGMENT_ID}
{SEGMENT_ID}id値。リクエスト
| code language-shell |
|---|
|
応答
リクエストが成功した場合は、特定のセグメント定義についての詳細情報と HTTP ステータス 200 が返されます。
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 | |
|---|---|
| プロパティ | 説明 |
id |
セグメント定義のシステム生成の読み取り専用ID。 |
name |
セグメント定義を参照する一意の名前。 |
schema |
セグメント内のエンティティに関連付けられたスキーマ。 id か name のどちらかのフィールドで構成されます。 |
expression |
セグメント定義に関するフィールド情報を含むエンティティ。 |
expression.type |
式タイプを指定します。 現時点では、「PQL」のみサポートされています。 |
expression.format |
値内の式の構造を示します。 現時点では、次の形式がサポートされています。
|
expression.value |
expression.format に指定されたタイプに適合する式です。 |
description |
人間にとってわかりやすい、定義の説明。 |
evaluationInfo |
評価、バッチ、ストリーミング(継続的とも呼ばれます)、エッジ(同期とも呼ばれます)のタイプを示すオブジェクトで、セグメント定義が実行されます。 |
セグメント定義の一括取得 bulk-get
指定された複数のセグメント定義に関する詳細情報を取得するには、/segment/definitions/bulk-get エンドポイントにPOST リクエストを行い、リクエスト本文にセグメント定義のid値を指定します。
API 形式
POST /segment/definitions/bulk-get
リクエスト
| code language-shell |
|---|
|
| table 0-row-2 1-row-2 | |
|---|---|
| プロパティ | 説明 |
ids |
取得するセグメント定義のIDを示すオブジェクトを含む配列。 |
応答
応答が成功すると、リクエストされたセグメント定義を含むHTTP ステータス 207が返されます。
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 | |
|---|---|
| プロパティ | 説明 |
id |
セグメント定義のシステム生成の読み取り専用ID。 |
name |
セグメント定義を参照する一意の名前。 |
schema |
セグメント内のエンティティに関連付けられたスキーマ。 id か name のどちらかのフィールドで構成されます。 |
expression |
セグメント定義に関するフィールド情報を含むエンティティ。 |
expression.type |
式タイプを指定します。 現時点では、「PQL」のみサポートされています。 |
expression.format |
値内の式の構造を示します。 現時点では、次の形式がサポートされています。
|
expression.value |
expression.format に指定されたタイプに適合する式です。 |
description |
人間にとってわかりやすい、定義の説明。 |
evaluationInfo |
評価、バッチ、ストリーミング(継続的とも呼ばれます)、エッジ(同期とも呼ばれます)のタイプを示すオブジェクトで、セグメント定義が実行されます。 |
特定のセグメント定義の削除 delete
/segment/definitions エンドポイントに対してDELETE リクエストを行い、削除するセグメント定義のIDをリクエストパスに指定することで、特定のセグメント定義の削除をリクエストできます。
API 形式
DELETE /segment/definitions/{SEGMENT_ID}
{SEGMENT_ID}id値。リクエスト
| code language-shell |
|---|
|
応答
リクエストが成功した場合、HTTP ステータス 200 が返され、メッセージは返されません。
特定のセグメント定義の更新
/segment/definitions エンドポイントに対してPATCH リクエストを行い、更新するセグメント定義のIDをリクエストパスで指定することで、特定のセグメント定義を更新できます。
API 形式
PATCH /segment/definitions/{SEGMENT_ID}
{SEGMENT_ID}id値。リクエスト
次のリクエストは、米国からカナダへの勤務先国を更新します。
| code language-shell |
|---|
|
応答
リクエストが成功した場合は、更新したセグメント定義の詳細と HTTP ステータス 200 が返されます。
| code language-json |
|---|
|
セグメント定義の変換
/segment/conversion エンドポイントにPOST リクエストを行うことで、pql/textからpql/jsonまたはpql/jsonからpql/textまでのセグメント定義を変換できます。
API 形式
POST /segment/conversion
リクエスト
次のリクエストは、セグメント定義の形式をpql/textからpql/jsonに変更します。
| code language-shell |
|---|
|
応答
応答が成功すると、HTTP ステータス 200が、新しく変換されたセグメント定義の詳細とともに返されます。
| code language-json |
|---|
|
次の手順
このガイドでは、セグメント定義の仕組みについて解説します。 セグメントの作成について詳しくは、 セグメントの作成 チュートリアルを参照してください。