---
title: "Get SLA Definition"
method: GET
path: "/v2/sla-definitions/{id}"
tags: ["SLA API"]
---

# Get SLA Definition

`GET /v2/sla-definitions/{id}`

Retrieve a single SLA definition by ID, including its conditions, attachment criteria, and action definitions.

## Path parameters

- `id` string, required

## Response `200`

Success

- SvhelpPublicapiGetSlaDefinitionResponse
  - `data` SvhelpModelsSlaDefinition — SlaDefinition represents a reusable SLA policy.
    - `id` string
    - `teamId` string
    - `name` string
    - `description` string
    - `targetDurationSeconds` integer
    - `useCalendarTime` boolean
    - `scheduleId` string — Optional, required if use_calendar_time is false
    - `conditions` SvhelpModelsSlaCondition[] — Pause/stop conditions
      - `id` string
      - `slaDefinitionId` string
      - `conditionType` 'SLA_CONDITION_TYPE_UNSPECIFIED' | 'SLA_CONDITION_TYPE_PAUSE' | 'SLA_CONDITION_TYPE_STOP' — SlaConditionType represents types of SLA conditions.
      - `conditionRule` SvhelpModelsSlaConditionRule — SlaConditionRule represents a condition rule for pausing/stopping SLAs.
        - `type` string — "ticket_status", "ticket_field", "waiting_on_reply", etc.
        - `field` string — Field name (for ticket_field type)
        - `op` string — Operator: "equals", "not_equals", "in", "not_in"
        - `value` string — Single value
        - `values` string[] — Multiple values for in/not_in
        - `logicOp` string — Logic operator connecting to previous rule: "AND" or "OR" (empty for first rule)
      - `resumePolicy` string — "condition_no_longer_matches" or "explicit_only"
      - `priority` integer
    - `createdAt` string, date-time — A timestamp in RFC 3339 format (e.g., "2025-01-15T01:30:15Z").
    - `updatedAt` string, date-time — A timestamp in RFC 3339 format (e.g., "2025-01-15T01:30:15Z").
    - `attachmentCriteria` SvhelpModelsSlaConditionRule[]
      - `type` string — "ticket_status", "ticket_field", "waiting_on_reply", etc.
      - `field` string — Field name (for ticket_field type)
      - `op` string — Operator: "equals", "not_equals", "in", "not_in"
      - `value` string — Single value
      - `values` string[] — Multiple values for in/not_in
      - `logicOp` string — Logic operator connecting to previous rule: "AND" or "OR" (empty for first rule)
    - `actionDefinitions` SvhelpModelsSlaActionDefinition[]
      - `id` string
      - `slaDefinitionId` string
      - `offsetSeconds` integer — Negative = before breach, 0 = at breach, positive = after breach
      - `workflowId` string
      - `createdAt` string, date-time — A timestamp in RFC 3339 format (e.g., "2025-01-15T01:30:15Z").
      - `updatedAt` string, date-time — A timestamp in RFC 3339 format (e.g., "2025-01-15T01:30:15Z").
    - `startingPoint` 'SLA_STARTING_POINT_UNSPECIFIED' | 'SLA_STARTING_POINT_FROM_ATTACHMENT' | 'SLA_STARTING_POINT_FROM_CREATION' — 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.
    - `metric` 'SLA_METRIC_UNSPECIFIED' | 'SLA_METRIC_RESOLUTION' | 'SLA_METRIC_FIRST_RESPONSE' — 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.
    - `archivedAt` string, date-time — A timestamp in RFC 3339 format (e.g., "2025-01-15T01:30:15Z").

## Other responses

- `default` — Error

---

[API](https://skmtc.net/serval/apis/serval-public-api.md) · [All operations](https://skmtc.net/serval/apis/serval-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/serval/serval-public-api/versions/0549515e9384/schema)
