Web SDKイベント
ユーザー属性の管理
ユーザーの特性や行動パターンをトラッキングすることで、パーソナライズされたサービスやターゲットマーケティングを実現できます。
🔍 ユーザーの識別
ユーザー属性で識別する
AdStage Web SDK は、ユーザー ID を設定する専用の API を提供していません。その代わりに、ユーザー属性(setUserProperties)でユーザーの特性を記録し、セグメントやファネル分析に活用します。
// ログイン時にユーザー属性を設定
AdStage.events.setUserProperties({
gender: 'male', // 'male' | 'female' | 'other' | 'unknown'
country: 'KR', // ISO 国コード
city: 'Seoul', // 都市名
age: '25-34', // 年齢層
language: 'ko-KR' // 言語コード
});
// 現在設定されているユーザー属性を確認
const userProperties = AdStage.events.getUserProperties();
console.log('現在のユーザー属性:', userProperties);匿名ユーザーのトラッキング
ログインしていないユーザーも、セッションベースで自動的にトラッキングされます。
// 匿名ユーザーのトラッキングは SDK が自動で管理します
// 個別の設定 API や照会 API は提供されていません
// セッションベースで自動的にトラッキングされます👤 ユーザー属性の設定
サポートされる標準属性
SDK がサポートする標準のユーザー属性です。
// 複数の属性を一度に設定(推奨)
AdStage.events.setUserProperties({
age: '25', // 年齢(文字列)
gender: 'female', // 'male' | 'female' | 'other' | 'unknown'
country: 'KR', // ISO 国コード(ISO 3166-1 alpha-2)
city: 'Seoul', // 都市名
language: 'ko-KR' // 言語コード(BCP 47)
});
// 属性を個別に設定する API は現在提供されていません
// すべての属性は setUserProperties() で設定してください自動収集される属性
SDK がブラウザから自動で収集する情報です。
// ブラウザの言語設定から自動抽出
// navigator.language → language、country を自動設定
// 例: 'ko-KR' → language: 'ko-KR', country: 'KR'
// 自動収集されたユーザー情報を確認
const userInfo = AdStage.events.getUserInfo();
console.log(userInfo);
// { language: 'ko-KR', country: 'KR' }
// タイムゾーンに基づく地域の推定は内部で行われ、
// 個別の API としては公開されていません属性の制限事項
現在、AdStage Web SDK は 標準属性のみをサポート しています。
// ✅ サポートされる標準属性
AdStage.events.setUserProperties({
gender: 'female', // 'male' | 'female' | 'other' | 'unknown'
country: 'KR', // ISO 国コード
city: 'Seoul', // 都市名
age: '25', // 年齢(文字列)
language: 'ko-KR' // 言語コード
});
// ❌ カスタム属性はサポートされていません
// 代わりにイベントパラメータを使用してください
AdStage.events.track('user_profile_updated', {
subscription_tier: 'premium', // イベントパラメータとして送信
account_type: 'business',
last_login: '2024-01-15'
});📊 ユーザー属性の管理
属性の照会と管理
// 現在設定されているユーザー属性を照会
const currentProperties = AdStage.events.getUserProperties();
console.log('現在のユーザー属性:', currentProperties);
// 属性の個別照会や初期化の API は現在提供されていません
// すべての属性は getUserProperties() で一括照会してください
// 属性を初期化するには空のオブジェクトを設定
AdStage.events.setUserProperties({});地域情報の活用
// ブラウザベースで自動収集された情報を確認
const userInfo = AdStage.events.getUserInfo();
console.log('自動収集されたユーザー情報:', userInfo);
// { language: 'ko-KR', country: 'KR' }
// 地域情報は内部で自動的に推定されて設定されます
// より正確な情報を手動で把握している場合は上書きできます
AdStage.events.setUserProperties({
country: 'KR',
city: 'Seoul',
language: 'ko-KR'
});🎯 パーソナライズへの活用
ユーザー属性に基づくパーソナライズ
// ユーザー属性に基づくコンテンツのレコメンド
function personalizeContent() {
const userProperties = AdStage.events.getUserProperties();
// 年齢層別のコンテンツ
if (userProperties.age && parseInt(userProperties.age) < 30) {
showYoungAdultContent();
}
// 地域別のコンテンツ
if (userProperties.country === 'KR') {
showKoreanContent();
}
// 言語別のコンテンツ
if (userProperties.language?.startsWith('ko')) {
setKoreanLanguage();
}
}
// 属性の変更時にパーソナライズを更新
AdStage.events.setUserProperties({
country: 'KR',
language: 'ko-KR',
age: '28'
});
personalizeContent();イベントとあわせて活用
// ユーザー属性はすべてのイベントに自動で含まれます
AdStage.events.track('page_view', {
page: 'product_detail',
product_id: 'prod_123'
});
// サーバーが受け取るデータには、設定したユーザー属性が含まれます:
// {
// eventName: 'page_view',
// user: {
// gender: 'female',
// country: 'KR',
// city: 'Seoul',
// age: '28',
// language: 'ko-KR'
// },
// params: { page: 'product_detail', product_id: 'prod_123' }
// }
