> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# エイリアス

> OneSignalでカスタムエイリアスを使用して、独自の一意の識別子を使用して異なるプラットフォームとデバイス間でユーザーを識別および追跡する方法を学びます。エイリアスは、複数のソースからのユーザーデータを統合するのに役立ち、統合、ユーザーデータ管理、トランザクションメッセージングに不可欠です。

カスタムエイリアスを使用すると、OneSignalのユーザーにカスタムキーと値の識別子を割り当てることができ、独自の内部IDを使用してクロスプラットフォームのユーザー追跡と識別が可能になります。

<Warning>
  **重要**: カスタムエイリアスを使用する**前に**、[External ID](./users)を設定する必要があります。

  OneSignalは、ユーザーを識別するために一意の`onesignal_id`を使用します。このIDは、同じ`external_id`を持つ場合にのみ[サブスクリプション](./subscriptions)間で一貫性を保ちます。

  カスタムエイリアスは、サブスクリプションをリンク**しません**—正しく機能するには`external_id`に依存します。これがないと、エイリアスはデバイスまたはプラットフォーム間で同じユーザーに関連付けられません。
</Warning>

***

## カスタムエイリアスとは？

カスタムエイリアスは`キー : 値`のペアです：

* `alias_label`（キー）は、すべてのユーザーに共通する一貫した静的な識別子です（例：`facebook_id`、`firebase_id`、`crm_user_id`）。
* `alias_id`（値）は、そのラベルに対する特定のユーザーのIDです（例：`facebook_id: 3453443`、`firebase_id: test3555`）。

これにより、OneSignalユーザーレコードを他のプラットフォームやデータベースからの識別子にリンクできます。

***

## エイリアスを使用する理由

1. 複数のプラットフォームとデータベース間でユーザーを識別します。
2. [Create Message REST API](/reference/create-message)を使用してターゲットを絞ったトランザクションメッセージを送信します。
3. User REST APIを介してユーザーを取得、更新、または削除します。

***

## エイリアスの設定方法

OneSignal SDKまたはREST APIを使用してエイリアスを設定できます。

### SDKを使用する

アプリで以下の手順に従ってください：

1. External IDを設定する
   `OneSignal.login(externalId)`を呼び出して、ユーザーレコードを関連付けます。

2. カスタムエイリアスを設定する
   `OneSignal.User.addAlias(label, id)`を使用して単一のエイリアスを追加するか、`OneSignal.User.addAliases({ label1: id1, label2: id2 })`を使用して複数を設定します。

3. ログアウト（オプション）
   `OneSignal.logout()`を使用して、そのデバイスまたはセッションのexternal IDと関連するエイリアスを削除します。

**例**：

```javascript theme={null}
OneSignal.login("user_123");

OneSignal.User.addAliases({
  facebook_id: "3453443",
  firebase_id: "test3555"
});

// 後で、ユーザーがログアウトする際
OneSignal.logout();
```

***

### REST APIを使用する

API経由でカスタムエイリアスを設定するには、[Create Alias](/reference/create-alias)エンドポイントを使用します。この方法は、通常、サーバー側のユーザー管理のためにバックエンドシステムで使用されます。

**リクエスト例**：

```json theme={null}
POST /aliases
{
  "subscription_id": "abc123",
  "aliases": {
    "facebook_id": "3453443",
    "crm_user_id": "XYZ789"
  }
}
```

***

## ベストプラクティス

* エイリアスを割り当てる前に、必ず`external_id`を設定してください。
* チーム間での混乱を避けるために、安定した説明的なラベル（例：`crm_user_id`、`legacy_user_id`）を使用してください。
* エイリアス値としてメールアドレスや電話番号などの機密情報を使用しないでください。
* デバイスのサインアウトやユーザー切り替えイベント時に`logout()`を使用してエイリアスをクリーンアップしてください。

***

<Check>
  カスタムエイリアスチュートリアル完了！
  次のステップ：

  * まだの場合は、[ユーザー](./users)と[サブスクリプション](./subscriptions)のドキュメントを確認してください。
  * APIを介してエイリアスを使用する詳細については、[REST API](/reference/create-alias)ドキュメントを探索してください。
  * [統合](./integrations)を設定して、システム間でユーザーデータを同期します。
</Check>

***
