Skip to main content
PATCH
/
v2
/
sla-definitions
/
{id}
Update SLA Definition
curl --request PATCH \
  --url https://public.api.serval.com/v2/sla-definitions/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "description": "<string>",
  "targetDurationSeconds": 123,
  "useCalendarTime": true,
  "scheduleId": "<string>",
  "attachmentCriteria": [
    {
      "type": "<string>",
      "field": "<string>",
      "op": "<string>",
      "value": "<string>",
      "values": [
        "<string>"
      ],
      "logicOp": "<string>"
    }
  ],
  "clearAttachmentCriteria": true
}
'
{
  "data": {
    "id": "<string>",
    "teamId": "<string>",
    "name": "<string>",
    "description": "<string>",
    "targetDurationSeconds": 123,
    "useCalendarTime": true,
    "scheduleId": "<string>",
    "conditions": [
      {
        "id": "<string>",
        "slaDefinitionId": "<string>",
        "conditionRule": {
          "type": "<string>",
          "field": "<string>",
          "op": "<string>",
          "value": "<string>",
          "values": [
            "<string>"
          ],
          "logicOp": "<string>"
        },
        "resumePolicy": "<string>",
        "priority": 123
      }
    ],
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z",
    "attachmentCriteria": [
      {
        "type": "<string>",
        "field": "<string>",
        "op": "<string>",
        "value": "<string>",
        "values": [
          "<string>"
        ],
        "logicOp": "<string>"
      }
    ],
    "actionDefinitions": [
      {
        "id": "<string>",
        "slaDefinitionId": "<string>",
        "offsetSeconds": 123,
        "workflowId": "<string>",
        "createdAt": "2023-11-07T05:31:56Z",
        "updatedAt": "2023-11-07T05:31:56Z"
      }
    ]
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

Body

application/json
name
string | null
description
string | null
targetDurationSeconds
integer<int32> | null
useCalendarTime
boolean | null
scheduleId
string | null
attachmentCriteria
SlaConditionRule · object[]
clearAttachmentCriteria
boolean | null
startingPoint
enum<string> | null

SlaStartingPoint controls when the SLA clock starts counting for auto-attached SLAs. Milestone-dependent starting points (e.g. "after escalation") are intentionally not modeled here — express them via attachment criteria (e.g. ticket.escalation_level = human) combined with FROM_ATTACHMENT.

Available options:
SLA_STARTING_POINT_UNSPECIFIED,
SLA_STARTING_POINT_FROM_ATTACHMENT,
SLA_STARTING_POINT_FROM_CREATION
metric
enum<string> | null

SlaMetric identifies what an SLA measures (i.e., what stops the clock). New metrics are added by extending this enum and registering a metric handler in backend/services/svhelp/src/internal/state/ticket/rule/sla/metric.

Available options:
SLA_METRIC_UNSPECIFIED,
SLA_METRIC_RESOLUTION,
SLA_METRIC_FIRST_RESPONSE

Response

Success

data
data · object

SlaDefinition represents a reusable SLA policy.