ルーティングルール API リファレンス
フィールドに指定できる値
動作の種類
| 値 | 説明 |
|---|---|
NOTIFY_TEAM | 特定のチームに通知します |
NOTIFY_WORKSPACE_MEMBER | 特定のワークスペースのメンバーに通知します |
NOTIFY_CURRENT_ON_CALL_USER | 現在のオンコール担当者に通知します |
NOTIFY_NEXT_ON_CALL_USER | 次のオンコール担当者に通知します |
NOTIFY_ALL_ON_CALL_MEMBERS | 現在オンコール中のすべてのメンバーに通知します |
アサーションの種類
| 値 | 説明 |
|---|---|
IMPACT | イベントの影響を判定します |
TITLE | イベントのタイトルを判定します |
DESCRIPTION | イベントの説明を判定します |
AFFECTED_COMPONENTS | イベントの影響を受けるコンポーネントを判定します |
比較の種類
| 値 | 説明 |
|---|---|
EQUALS | 値が等しいかを判定します |
NOT_EQUALS | 値が等しくないかを判定します |
IS_EMPTY | 値が空かを判定します |
NOT_EMPTY | 値が空でないかを判定します |
GREATER_THAN | 値がより大きいかを判定します |
GREATER_THAN_OR_EQUALS | 値が以上かを判定します |
LESS_THAN | 値がより小さいかを判定します |
LESS_THAN_OR_EQUALS | 値が以下かを判定します |
CONTAINS | 値が指定した部分文字列を含むかを判定します |
NOT_CONTAINS | 値が部分文字列を含まないかを判定します |
HAS_KEY | オブジェクトが特定のキーを持つかを判定します |
NOT_HAS_KEY | オブジェクトが特定のキーを持たないかを判定します |
HAS_VALUE | オブジェクトが特定の値を持つかを判定します |
NOT_HAS_VALUE | オブジェクトが特定の値を持たないかを判定します |
IS_NULL | 値が null かを判定します |
NOT_NULL | 値が null でないかを判定します |
STARTS_WITH | 値が特定の部分文字列で始まるかを判定します |
ENDS_WITH | 値が特定の部分文字列で終わるかを判定します |
ルーティングルールを取得する
エンドポイント:
GET /:page_id/routing-rules
リクエストの例
GET /1/routing-rules
レスポンスの例
{"routingRules": [{"id": "1","siteId": "pageId","assertions": [{"id": "1","routingRuleId": "1","type": "TITLE","comparison": "CONTAINS","value": "value1"},{"id": "2","routingRuleId": "1","type": "TITLE","comparison": "CONTAINS","value": "value2"}],"actions": [{"id": "1","routingRuleId": "1","type": "NOTIFY_WORKSPACE_MEMBER","targetId": "value1"},{"id": "2","routingRuleId": "1","type": "NOTIFY_WORKSPACE_MEMBER","targetId": "member@platform.com"}],"createdAt": "2021-09-29T00:00:00.000Z","updatedAt": "2021-09-29T00:00:00.000Z","order": 1}]}
ルーティングルールを作成する
エンドポイント:
POST /routing-rules
actions の targetId は、動作の種類に応じてワークスペースのメンバーのメールアドレスにも、チームの ID にもなる点に注意してください。
リクエストの例
{"routingRule": {"assertions": [{"id": "1","routingRuleId": "1","type": "TITLE","comparison": "CONTAINS","value": "value1"},{"id": "2","routingRuleId": "1","type": "TITLE","comparison": "CONTAINS","value": "value2"}],"actions": [{"id": "1","routingRuleId": "1","type": "NOTIFY_WORKSPACE_MEMBER","targetId": "member2@platform.com"},{"id": "2","routingRuleId": "1","type": "NOTIFY_WORKSPACE_MEMBER","targetId": "member@platform.com"}],"order": 1,"siteId": "site-id-1"},"message": "Routing rule updated successfully"}
レスポンスの例
{"routingRule": {"id": "routing-rule-id-1","order": 1,"siteId": "site123","updatedAt": "2021-09-01T12:00:00Z","createdAt": "2021-09-01T12:00:00Z"},"message": "Routing rule created successfully."}
ルーティングルールを更新する
エンドポイント:
PUT /routing-rules/:id
リクエストの例
PUT /routing-rules/routing-rule-id-1
{"routingRule": {"id": "routing-rule-id-1","assertions": [{"id": "assertion-id-1","routingRuleId": "routing-rule-id-1","comparison": "CONTAINS","value": "Issue With X","type": "TITLE"}],"order": 1,"siteId": "site-id-1","updatedAt": "2021-09-01T12:00:00Z","createdAt": "2021-05-01T12:00:00Z"},"message": "Routing rule updated successfully"}
レスポンスの例
{"routingRule": {"id": "routing-rule-id-1","assertions": [{"id": "assertion-id-1","routingRuleId": "routing-rule-id-1","comparison": "CONTAINS","value": "Issue With X","type": "TITLE"}],"order": 1,"siteId": "site-id-1","updatedAt": "2024-08-09T12:00:00Z","createdAt": "2021-05-01T12:00:00Z"},"message": "Routing rule updated successfully"}
ルーティングルールを削除する
エンドポイント:
DELETE /routing-rules/:id
リクエストの例
DELETE /routing-rules/routing-rule-id-1
レスポンスの例
{"message": "Routing rule deleted successfully."}