【Amazon Connect】SearchRules API で効率的にルールフィルターができるようになりました!
こんにちは、フニです。
本記事では、Amazon Connect に追加された SearchRules API についてご紹介します。
概要
Amazon Connect に、インスタンス内の「ルール(Rules)」を検索できる新しい API SearchRules が追加されました。
これまで Connect でルールを取得する方法は ListRules(一覧取得)や DescribeRule(単一ルールの詳細取得)が中心で、特定の条件でルールを絞り込みたい場合は、取得した一覧をクライアント側でフィルタする必要がありました。今回追加された SearchRules API では、サーバー側で条件に合致するルールだけを検索できるようになります。
フィルターの種類
詳しくは、以下のようなフィルターが可能になり、大規模なルール運用環境において、目的のルールを素早く見つけられるようになります。
複数条件に対して OR / AND の組み合わせや、SearchFilter でタグベースの絞り込み(TagKey / TagValue)にも対応しています。
StringCondition の比較方法
| 比較方法 | 説明 |
|---|---|
STARTS_WITH |
前方一致 |
CONTAINS |
部分一致 |
EXACT |
完全一致 |
検索対象フィールド
| フィールド名 | 説明 |
|---|---|
Name |
ルール名 |
PublishStatus |
公開状態 |
EventSourceName |
イベントソース名 |
RuleId |
ルールID |
IntegrationAssociationId |
統合連携ID |
ActionSummaries |
アクションの概要情報 |
RuleCapabilityTiers |
ルールが属する機能カテゴリー(例: GenerativeAI) |
やってみた
前提
- Amazon Connect インスタンスを作成済みであること
- AWS CLI がインストール・設定済みであること (aws-cli/2.35.24)
- 検証用のルールをあらかじめ 1〜3 件作成しておくこと(Connect 管理画面の「ルール」から作成可能)
本記事では、以下3つのルールを用意して検証します。

インスタンス ID の確認
AWS CLI で対象インスタンスの ID を確認します。
aws connect list-instances

ルール名の前方一致検索
STARTS_WITH を活用し、ルール名が blog- で始まる項目のみをフィルターします。
aws connect search-rules \
--instance-id <インスタンスID> \
--search-criteria '{
"StringCondition": {
"FieldName": "Name",
"Value": "blog-",
"ComparisonType": "STARTS_WITH"
}
}'
以下は結果の例です。ルール名が blog- で始まる項目のみが返ってきました。
{
"Rules": [
{
"Name": "blog-test-rule",
"RuleId": "XXXX",
"RuleArn": "XXXX",
"TriggerEventSource": {
"EventSourceName": "OnPostChatAnalysisAvailable"
},
"ActionSummaries": [
{
"ActionType": "ASSIGN_CONTACT_CATEGORY"
}
],
"RuleCapabilityTiers": [],
"PublishStatus": "PUBLISHED",
"CreatedTime": "2026-07-16T02:38:09.320000+00:00",
"LastUpdatedTime": "2026-07-16T02:38:09.320000+00:00",
"LastUpdatedBy": "XXXX",
"Tags": {}
}
],
"ApproximateTotalCount": 1
}
ルール名の部分一致検索
CONTAINS を活用し、ルール名に sample が含まれている項目のみをフィルターします。
aws connect search-rules \
--instance-id <インスタンスID> \
--search-criteria '{
"StringCondition": {
"FieldName": "Name",
"Value": "sample",
"ComparisonType": "CONTAINS"
}
}'
以下は結果の例です。ルール名に sample が含まれている項目のみが返ってきました。
{
"Rules": [
{
"Name": "sample-rule-chat",
"RuleId": "XXXX",
"RuleArn": "XXXX",
"TriggerEventSource": {
"EventSourceName": "OnRealTimeChatAnalysisAvailable"
},
"ActionSummaries": [
{
"ActionType": "ASSIGN_CONTACT_CATEGORY"
}
],
"RuleCapabilityTiers": [],
"PublishStatus": "PUBLISHED",
"CreatedTime": "2026-07-16T02:41:41.089000+00:00",
"LastUpdatedTime": "2026-07-16T02:41:41.089000+00:00",
"LastUpdatedBy": "XXXX",
"Tags": {}
},
{
"Name": "sample-rule-mail",
"RuleId": "XXXX",
"RuleArn": "XXXX",
"TriggerEventSource": {
"EventSourceName": "OnEmailAnalysisAvailable"
},
"ActionSummaries": [
{
"ActionType": "ASSIGN_CONTACT_CATEGORY"
}
],
"RuleCapabilityTiers": [
"GenerativeAI"
],
"PublishStatus": "PUBLISHED",
"CreatedTime": "2026-07-16T02:41:20.395000+00:00",
"LastUpdatedTime": "2026-07-16T02:41:20.395000+00:00",
"LastUpdatedBy": "XXXX",
"Tags": {}
}
],
"ApproximateTotalCount": 2
}
ルール属性の完全一致検索
EXACT で RuleCapabilityTiers 属性が GenerativeAI と完全一致する項目のみをフィルターしてみます。
aws connect search-rules \
--instance-id <インスタンスID> \
--search-criteria '{
"StringCondition": {
"FieldName": "RuleCapabilityTiers",
"Value": "GenerativeAI",
"ComparisonType": "EXACT"
}
}'
以下は結果の例です。RuleCapabilityTiers が GenerativeAI と完全一致する項目のみが返ってきました。
{
"Rules": [
{
"Name": "sample-rule-mail",
"RuleId": "XXXX",
"RuleArn": "XXXX",
"TriggerEventSource": {
"EventSourceName": "OnEmailAnalysisAvailable"
},
"ActionSummaries": [
{
"ActionType": "ASSIGN_CONTACT_CATEGORY"
}
],
"RuleCapabilityTiers": [
"GenerativeAI"
],
"PublishStatus": "PUBLISHED",
"CreatedTime": "2026-07-16T02:41:20.395000+00:00",
"LastUpdatedTime": "2026-07-16T02:41:20.395000+00:00",
"LastUpdatedBy": "XXXX",
"Tags": {}
}
],
"ApproximateTotalCount": 1
}
さいごに
今回は、Amazon Connect に追加された SearchRules API についてご紹介しました。
大規模なインスタンスでルールの数が増えてくると、ルールを探すのが大変になってきますので、SearchRules を使って運用を効率化してみてください。
この記事が誰かの助けになれば幸いです。
参考








