WSProxy を介した基本的な取得

WSProxy() オブジェクトは、ユーザーが必要とする複雑さのレベルに応じてさまざまな取得オプションを提供します。最も簡単なオプションでは、オブジェクトの種別 (最初のパラメーター) と、取得するオブジェクトプロパティ名の配列を使用します。

例: DataExtension の最初のページを取得する 

この例では、フィルターなしで DataExtension の最初のページを返します。ページごとのアイテムの数は、要求されているアイテム種別と、アカウント設定によって異なります。

1var prox = new Script.Util.WSProxy();
2var cols = [ "Name", "CustomerKey", "CategoryID", "IsSendable"];
3var data = prox.retrieve("DataExtension", cols);

応答の例 

応答は、APiObjects SOAP アイテムの 4 つのプロパティを含むオブジェクトです。取得の応答には、標準の応答プロパティに加えて HasMoreRows プロパティが含まれます。このプロパティを true に設定した場合、さらに多くのアイテムが返されます。データセット全体を取得するには、ページネーションを使用して 1 つ以上の要求を実行します。

1{
2    "Status": "OK",
3    "RequestID": "fb768ddc-6670-4183-8b9d-4f0d5518bb2e",
4    "Results": [...],
5    "HasMoreRows": false
6}

例: DataExtension のリストをフィルターする 

返されるデータエクステンションのリストをフィルターするには、取得フィルタークエリを含む 3 番目のパラメーターを関数に追加します。

このフィルターの仕様は、SSJS コアライブラリで使用するフィルターと同じです。

この例には、CustomerKey が「ArtistsDE」の DataExtension アイテムを検索する簡単なフィルターが含まれます。

1var prox = new Script.Util.WSProxy();
2var cols = ["Name","CustomerKey","CategoryID","IsSendable"];
3var filter = {
4    Property: "CustomerKey",
5    SimpleOperator: "equals",
6    Value: "ArtistsDE"
7};
8var desc = prox.retrieve("DataExtension", cols, filter);

この例には、CustomerKey が「ArtistsDE」か Name が「LikeCounter」の DataExtension アイテムを検索する複雑なフィルターが含まれます。

1var prox = new Script.Util.WSProxy();
2var cols = ["Name","CustomerKey","CategoryID","IsSendable"];
3var filter = {
4    LeftOperand: {
5        Property: "CustomerKey",
6        SimpleOperator: "equals",
7        Value: "ArtistsDE"
8    },
9    LogicalOperator: "OR",
10    RightOperand: {
11        Property: "Name",
12        SimpleOperator: "equals",
13        Value: "LikeCounter"
14    }
15};
16var desc = prox.retrieve("DataExtension", cols, filter);

例: すべてのアカウントから取得する 

この例では、queryAllAccounts というパラメーターを使用して、すべてのアカウントからデータを取得します。

1var prox = new Script.Util.WSProxy();
2var queryAllAccounts = true;
3var cols = ["Name","CustomerKey","CategoryID","IsSendable"];
4var filter = {
5    Property: "CustomerKey",
6    SimpleOperator: "equals",
7    Value: "ArtistsDE"
8};
9var desc = prox.retrieve("DataExtension", cols, filter, queryAllAccounts);