---
title: "EngageServer.personalize(personalizationData, callback, timeout)"
slug: "engageserver-personalize"
abstract: "Sitecore Engage SDK(Sitecore PersonalizeストリームAPI)におけるサーバー側のpersonalize()機能について説明しています。"
---
# EngageServer.personalize(personalizationData, callback, timeout)

> !注これはサーバーサイドの [トラッキング](https://doc.sitecore.com/personalize/ja/developers/api/stream-api/sitecore-engage-sdk-reference/functions/server-side-tracking-with-the-engage-sdk-package.html "Server-side tracking with the Engage SDK package")実装に使われるサーバーサイド関数です。もしクライアント側トラッキングを実装したい場合は、[クライアントサイドの関数](https://doc.sitecore.com/personalize/ja/developers/api/stream-api/sitecore-engage-sdk-reference/functions/sending-events-using-the-engage-sdk.html "Sending events using the Engage SDK")を使いましょう。

personalize()関数は、現在稼働中のインタラクティブなフルスタック体験または、現在稼働中のフルスタック実験を実行しますSitecore Personalize。この関数は、実行したいライブ体験や実験のごfriendlyIdで呼び出さなければなりません。

> !注この関数を呼び出して、ライブのインタラクティブフルスタック体験またはライブのインタラクティブフルスタック実験のみを実行します。
> 
> ウェブ体験やウェブ実験はEngage SDKによって自動的に実行されます。

Sitecore Personalizeのライブインタラクティブなフルスタック体験や実験で、**サマリー**をクリックするとfriendlyIdを確認できます。friendlyIdは「**Details** > **Friendly ID**」にあります。

サイドバー。パラメータ

パラメータ

種類

概要

注記

[personalizationData](https://doc.sitecore.com/personalize/ja/developers/api/stream-api/sitecore-engage-sdk-reference/functions/personalization-data-object.html)

目的

イベントデータと実験データ。

このオブジェクトの friendlyId を指定します。

callback

機能

このコールバック関数が応答を処理します。

該当なし

timeout  
  
任意

整数  
  
最低限 0

関数がタイムアウトしてエラーを返すまでのミリ秒数です。  
  
timeoutを使う場合は、エラー処理にtry-catchブロックを使いましょう。

例えば、関数のタイムアウトが0.2秒になるように値を 200 に設定します。

体験や実験を実行してコンソールに記録する方法の例を紹介します。

export async function middleware(req) {
 const res = NextResponse.next();

 // Load Engage API
 const engageSettings = {
 clientKey: "<client\_key\_PLACEHOLDER>",
 targetURL: "<stream\_api\_target\_endpoint\_PLACEHOLDER>",
 pointOfSale: "<point\_of\_sale\_PLACEHOLDER>"
 };

 // Personalization data
 const personalizationData = {
 channel: "WEB",
 currency: "EUR",
 friendlyId: "running\_shoes\_popup\_02",
 // optional attributes:
 params: { key: "value" }
}

 const engageServer = await initServer(engageSettings);

 await engageServer.personalize(personalizationData, (res) => {console.log(res)}, 4000);
 return res;
};