Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.
Gen1 DocsLegacy

Page updated Mar 26, 2026

パーソナライズされたレコメンデーション

AWS will end support for Amazon Pinpoint on October 30, 2026,, and is no longer accepting any new users as of May 20 (see the linked doc). The guidance is to use AWS End User Messaging for push notifications and SMS, Amazon Simple Email Service for sending emails, Amazon Connect for campaigns, journeys, endpoints, and engagement analytics. Pinpoint recommends Amazon Kinesis for event collection and mobile analytics.

Amazon Personalizeは、イベントデータ、履歴データ、またはその両方の組み合わせを使用してレコメンデーションを作成できます。イベントデータは、レコメンデーションを作成するために使用できます。

イベントデータを記録するには、以下が必要です:

詳細については、イベントの記録を参照してください。

インストールと設定

Amazon Personalizeデータセットグループを作成した後、AWS Identity and Access Management (IAM) ユーザーロールに personalize:PutEvents アクセス許可を追加する必要があります。

IAM ポリシーの例:

{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "personalize:PutEvents",
"Resource": "arn:aws:personalize:<your-aws-region>:<your-account-id>:event-tracker/<your-resource-name>"
}]
}

イベントトラッカーのトラッキング ID が必要です。詳細については、トラッキング ID の取得を参照してください。

Amazon Personalizeを設定します:

src/index.js
import { Amplify } from 'aws-amplify';
import outputs from '../amplify_outputs.json';
const amplifyConfig = parseAmplifyConfig(outputs);
Amplify.configure({
...amplifyConfig,
Analytics: {
Personalize: {
// REQUIRED - The trackingId to track the events
trackingId: '<tracking-id>',
// REQUIRED - Amazon Personalize service region
region: 'us-east-1',
// OPTIONAL - The number of events to be deleted from the buffer when flushed.
flushSize: 10,
// OPTIONAL - The interval in milliseconds to perform a buffer check and flush if necessary.
flushInterval: 5000 // 5s
}
}
});

API の使用

Identify イベントタイプを使用してユーザー ID を追跡できます。これにより、ユーザーをその操作に接続し、ユーザーに関する特性を記録できます。ユーザーを識別するには、userId プロパティに一意の識別子を指定します。 Identify eventTypeで record を呼び出す時期と頻度を選択する際には、以下のユーザーインタラクションを考慮してください:

  • ユーザーが登録した後。
  • ユーザーがログインした後。
  • ユーザーが自分の情報を更新したとき (例えば、住所を変更または追加する場合)。
  • ログイン済みユーザーがアクセスできるページを読み込むとき (オプション)。
import { record } from 'aws-amplify/analytics/personalize';
record({
eventType: 'Identify',
properties: {
userId: '<user-id>'
}
});

record 操作を呼び出すことで、Amazon Personalizeにイベントを送信できます。既に Identify を使用してエンドユーザーデータを追跡している場合は、userId をスキップできます。SDK は現在のブラウザセッションに基づいて userId をフェッチします。

properties フィールドの詳細については、Put Eventsを参照してください。

import { record } from 'aws-amplify/analytics/personalize';
record({
eventType: '<event-type>',
userId: '<user-id>', // optional
properties: {
itemId: '<item-id>',
eventValue: '<event-value>'
}
});

MediaAutoTrack イベントタイプを使用して、iframe と HTML5 メディアタイプを追跡できます。MediaAutoTrack は、バインドするメディア DOM 要素のすべてのメディアイベントを追跡します。MediaAutoTracker は自動的に eventTypePlayPauseEndedTimeWatched、および Resume を追跡します。イベント期間とメディアの全長の比較は、eventValue にパーセンテージ値として保存されます。

import { record } from 'aws-amplify/analytics/personalize';
record({
eventType: 'MediaAutoTrack',
userId: '<user-id>', // (optional)
properties: {
domElementId: 'media-dom-element-id',
itemId: '<item-d>'
}
});

イベントのフラッシュ

記録されたイベントはバッファに保存され、定期的にリモートサーバーに送信されます (flushInterval オプションでチューニングできます)。必要に応じて、'flushEvents' API を使用してバッファからすべてのイベントを手動でクリアするオプションがあります。

import { flushEvents } from 'aws-amplify/analytics/personalize';
flushEvents();