라우팅 규칙 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

작업에서 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."
}