Amazon Connect Customerで事前定義済みの属性をセグメント属性として利用できるようになったため、各種属性の違いを整理してみた
はじめに
Amazon Connect Customer では、顧客 ID、注文番号、担当部門など、問い合わせに関する情報を属性として扱えます。属性はコンタクトフローでの分岐や、転送先への情報共有、コンタクト検索に利用できます。
2025 年 9 月 23 日、カスタム属性をインタラクションセグメントに関連付けられるようになりました。
この機能を調べると、「事前定義済みの属性」「セグメント属性」「カスタム問い合わせ属性」といった似た名前が出てきます。本記事では、それぞれが属性の定義、問い合わせに設定する値、検索のための設定のどれを指すのかを整理します。
なお、AWS の日本語ドキュメントでは主に「事前定義された属性」「コンタクトセグメント属性」と表記されています。本記事では、それぞれ「事前定義済みの属性」「セグメント属性」と表記します。
フローから参照できる属性の全体像
Amazon Connect Customer のフローでは、今回取り上げるもの以外にも、システム属性、Amazon Lex 問い合わせ属性、Lambda での問い合わせ属性、フロー属性などを参照できます。
フローで扱う属性の例
│
├─ システム属性
│ └─ Amazon Connect Customer が実行時に提供する
│ 例:ContactId、チャネル、顧客の電話番号
│
├─ ユーザー定義コンタクト属性
│ └─ コンタクトチェーン内で共有される任意のキーと値
│ 例:CRMCaseId、OrderId
│
├─ セグメント属性
│ └─ 事前定義済みの属性を使い、個々のコンタクトセグメントに設定する値
│ 例:BusinessUnit = Support
│
└─ その他の属性
例:Amazon Lex 問い合わせ属性、フロー属性
属性の種類とフロー内で参照する際の JSONPath は、以下の一覧で確認できます。
事前定義済みの属性
事前定義済みの属性は、属性名と値の候補をあらかじめ管理するための定義です。

事前定義済みの属性を一覧表示し、作成・管理する画面
例えば、担当部門を表す BusinessUnit に、Support、Sales、Billing という値の候補を用意できます。
事前定義済みの属性
└─ 属性名と値の候補を管理する
BusinessUnit
- Support
- Sales
- Billing
↓ フローで値を設定
セグメント属性
└─ 個々のコンタクトセグメントに関連付く
BusinessUnit = Support
コンタクトフローの「コンタクト属性の設定」ブロックで事前定義済みの属性を選び、コンタクトセグメントに値を設定すると、セグメント属性として扱われます。

BusinessUnit の属性名と値の候補を定義する例
事前定義済みの属性を作成しただけでは、コンタクトセグメントに BusinessUnit = Support は設定されません。定義を作ることと、問い合わせに値を設定することは別の操作です。
システムの事前定義済み属性
事前定義済みの属性には、Amazon Connect Customer が提供するものもあります。例えば、connect:Language と connect:Subtype です。
事前定義済みの属性
│
├─ システムの事前定義済み属性
│ ├─ connect:Language
│ └─ connect:Subtype
│
└─ 利用者が作成する事前定義済みの属性
└─ BusinessUnit など
connect:Language にはカスタム値を追加できます。一方、connect:Subtype の名前と値は変更できません。利用者が作成する属性名に connect: を使用することもできません。
ここでいうシステムの事前定義済み属性は、フローで参照する $.ContactId や $.Channel などの「システム属性」とは別の概念です。
事前定義済みの属性で設定できる項目
利用者が作成する事前定義済みの属性では、用途に応じて以下の設定を有効にできます。
| 設定 | 内容 |
|---|---|
| コンタクト検索フィルターとして使用 | セグメント属性の値をコンタクト検索の条件に使用する |
| 有効な値の強制 | セグメント属性に設定できる値を、定義済みの値に制限する |
| 詳細なインサイトを得るために分析で使用する | セグメント属性の値を問い合わせ関連メトリクスのフィルターに使用する |
例えば BusinessUnit に Support、Sales、Billing を定義し、「有効な値の強制」を有効にすると、未定義の Engineering は設定できません。部門名の表記ゆれを避けたい場合に検討できる設定です。
分析で使用する設定は、Amazon Connect 無制限 AI が有効なインスタンスで利用できます。また、分析に使う属性値には個人を特定できる情報を含めないよう、AWS ドキュメントで注意されています。
セグメント属性
セグメント属性は、個々のコンタクトセグメントに関連付く属性です。
コンタクトセグメントは、必ずしも「担当者が対応した時間」を意味しません。例えば、エージェントに接続せず、IVR で完結する問い合わせにもセグメント属性を設定できます。
違いが分かりやすいのは、担当者間で転送するケースです。
顧客から見た一連の問い合わせ
│
├─ サポート担当とのコンタクトセグメント
│ ContactId: C1
│ BusinessUnit = Support
│
└─ 請求担当とのコンタクトセグメント
ContactId: C2
BusinessUnit = Billing
この例では、C1 と C2 はそれぞれのコンタクトを識別する ID です。サポート担当から請求担当へ転送した後、後続のセグメントで BusinessUnit = Billing に変更しても、前のセグメントの BusinessUnit = Support は書き換わりません。
なお、セグメント属性は後続のコンタクトへ引き継がれます。後続のセグメントで異なる値にしたい場合は、そのセグメントで値を更新します。
コンタクト、コンタクトチェーン、セグメント属性の関係の詳細は、以下で説明されています。
フローで値を設定する
ユーザー独自のセグメント属性をフローで設定する順番は以下です。
- 事前定義済みの属性を作成する
- コンタクトフローに「コンタクト属性の設定」ブロックを配置する
- 名前空間に「セグメント属性」を指定する
- 作成した事前定義済みの属性をキーとして選択する
- 値を設定する
名前空間を「セグメント属性」にすると、キーの選択肢に作成済みの事前定義済み属性が表示されます。

「コンタクト属性の設定」ブロックで BusinessUnit = Support をセグメント属性として設定する例
具体的な利用例として、IVR の入力結果を Disposition というセグメント属性に設定し、その値ごとのコンタクト数をダッシュボードで確認した記事もあります。エージェントに接続しないフローでもセグメント属性を使える例です。
コンタクト属性
コンタクト属性は、問い合わせに関する情報をキーと値のペアで扱う仕組みです。フローでは、Amazon Connect Customer が提供するシステム属性や、利用者が設定するユーザー定義コンタクト属性などを扱えます。
システム属性
システム属性は、Amazon Connect Customer が実行時に提供する属性です。フローでの参照例には、以下があります。
| 属性 | JSONPath の例 | 内容 |
|---|---|---|
| 問い合わせ ID | $.ContactId |
個々のコンタクトを識別する ID |
| イニシャル問い合わせ ID | $.InitialContactId |
一連のコンタクトの起点を追跡するための ID |
| チャネル | $.Channel |
VOICE、CHAT、TASK、EMAIL など |
| 顧客のメールアドレスまたは電話番号 | $.CustomerEndpoint.Address |
顧客側のメールアドレスまたは電話番号 |
例えば $.Channel を参照すれば、音声とチャットでフローの処理を分けられます。
エージェントのユーザー名などもフローで参照できる属性ですが、利用できるフローの種類には制限があります。個々の属性を設定に使う際は、JSONPath の一覧とあわせて適用範囲も確認してください。
ユーザー定義コンタクト属性
ユーザー定義コンタクト属性は、利用者が任意のキーと値を設定する属性です。コンタクト検索の画面やドキュメントでは「カスタム問い合わせ属性」とも呼ばれます。
フローの「コンタクト属性の設定」ブロックでは、名前空間に「ユーザー定義済み」を指定します。

「コンタクト属性の設定」ブロックで名前空間に「ユーザー定義済み」を指定する例
ユーザー定義コンタクト属性は、同じ InitialContactId を持つコンタクト間で共有されます。例えば、サポート担当から請求担当に転送しても、CRMCaseId を後続の対応で利用できます。
顧客から見た一連の問い合わせ
│
├─ サポート担当とのコンタクトセグメント
│ CRMCaseId = CASE-98765
│
└─ 請求担当とのコンタクトセグメント
CRMCaseId = CASE-98765
一方、転送先で共有される属性の値を更新すると、転送前のコンタクトにも変更が反映されます。転送前後で異なる値を個別に保持したい情報には、セグメント属性を使います。
検索可能なカスタムコンタクト属性
検索可能なカスタムコンタクト属性は、ユーザー定義コンタクト属性とは別の保存先ではありません。ユーザー定義コンタクト属性のうち、コンタクト検索で使うキーを指定する設定です。
例えば、フローで type = Claim を設定し、type を検索可能な属性キーとして追加すると、その値を条件にコンタクトを検索できます。

コンタクト検索で使用するカスタム問い合わせ属性のキーを指定する画面
ユーザー定義コンタクト属性は、フローで設定しただけでは検索用にインデックス付けされません。検索するキーを明示的に追加します。キー名は大文字と小文字が区別され、追加後の問い合わせで検索できます。
なお、セグメント属性を検索する場合は、この画面にキーを追加するのではなく、事前定義済みの属性で「コンタクト検索フィルターとして使用」を有効にします。
| 検索する属性 | 検索のための設定 |
|---|---|
| ユーザー定義コンタクト属性 | 検索可能なカスタム問い合わせ属性としてキーを追加する |
| セグメント属性 | 事前定義済みの属性で「コンタクト検索フィルターとして使用」を有効にする |
まとめ
事前定義済みの属性は、セグメント属性で使う名前と値の候補を管理する定義です。値を作成するだけでは問い合わせに設定されず、フローなどから個々のコンタクトセグメントに関連付けます。
設計時は、転送前後で同じ値を共有したいのか、それぞれのコンタクトセグメントの値を保持したいのかを先に決めると整理しやすくなります。コンタクト検索で使う場合は、属性の種類によって検索のための設定が異なる点も確認してください。







