API-Referenz für Routing-Regeln

Mögliche Werte für Felder

Aktionstyp

WertBeschreibung
NOTIFY_TEAMEin bestimmtes Team benachrichtigen
NOTIFY_WORKSPACE_MEMBEREin Workspace-Mitglied benachrichtigen
NOTIFY_CURRENT_ON_CALL_USERAktuelle Bereitschaftsperson benachrichtigen
NOTIFY_NEXT_ON_CALL_USERNächste Bereitschaftsperson benachrichtigen
NOTIFY_ALL_ON_CALL_MEMBERSAlle Bereitschaftsmitglieder benachrichtigen

Prüfungstyp

WertBeschreibung
IMPACTPrüft die Auswirkung eines Ereignisses
TITLEPrüft den Titel eines Ereignisses
DESCRIPTIONPrüft die Beschreibung eines Ereignisses
AFFECTED_COMPONENTSPrüft die betroffenen Komponenten

Vergleichstypen

WertBeschreibung
EQUALSPrüft, ob der Wert gleich ist
NOT_EQUALSPrüft, ob der Wert ungleich ist
IS_EMPTYPrüft, ob der Wert leer ist
NOT_EMPTYPrüft, ob der Wert nicht leer ist
GREATER_THANPrüft, ob der Wert größer ist
GREATER_THAN_OR_EQUALSPrüft, ob der Wert größer oder gleich ist
LESS_THANPrüft, ob der Wert kleiner ist
LESS_THAN_OR_EQUALSPrüft, ob der Wert kleiner oder gleich ist
CONTAINSPrüft, ob der Wert eine Zeichenfolge enthält
NOT_CONTAINSPrüft, ob der Wert eine Zeichenfolge nicht enthält
HAS_KEYPrüft, ob ein Objekt einen bestimmten Schlüssel hat
NOT_HAS_KEYPrüft, ob einem Objekt ein Schlüssel fehlt
HAS_VALUEPrüft, ob ein Objekt einen bestimmten Wert hat
NOT_HAS_VALUEPrüft, ob einem Objekt ein bestimmter Wert fehlt
IS_NULLPrüft, ob der Wert null ist
NOT_NULLPrüft, ob der Wert nicht null ist
STARTS_WITHPrüft, ob der Wert mit einer Zeichenfolge beginnt
ENDS_WITHPrüft, ob der Wert mit einer Zeichenfolge endet

Routing-Regeln abrufen

Endpunkt:

GET /:page_id/routing-rules

Beispielanfrage

GET /1/routing-rules

Beispielantwort

{
"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
}
]
}

Routing-Regel erstellen

Endpunkt:

POST /routing-rules

Beachten Sie: In Aktionen kann targetId je nach Aktionstyp eine E-Mail-Adresse eines Workspace-Mitglieds oder eine Team-ID sein.

Beispielanfrage

{
"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"
}

Beispielantwort

{
"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."
}

Routing-Regel aktualisieren

Endpunkt:

PUT /routing-rules/:id

Beispielanfrage

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"
}

Beispielantwort

{
"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"
}

Routing-Regel löschen

Endpunkt:

DELETE /routing-rules/:id

Beispielanfrage

DELETE /routing-rules/routing-rule-id-1

Beispielantwort

{
"message": "Routing rule deleted successfully."
}