GET /tickets/escalation-rules/{id}
Get escalation rule
Retrieve a specific escalation rule by ID
Required Parameters
id
path string Try it out
Loading...
Output:
Responses
Description
Escalation rule retrieved successfully
{ "id": "string", "name": "string", "description": "string", "enabled": false, "priority": "string", "conditions": [ { "field": "string", "operator": "string", "value": null } ], "escalateAfterMinutes": 0, "escalateTo": "string", "escalateToUserId": "string", "escalateToTeamId": "string", "escalateToRotationId": "string", "notificationChannels": [ "string" ], "businessHoursOnly": false, "addInternalNote": false, "internalNoteTemplate": "string", "createdBy": "string", "createdAt": "string", "updatedAt": "string", "updatedBy": "string", "statistics": { "totalEscalations": 0, "lastEscalatedAt": "string", "averageEscalationTime": 0 }}Description
Insufficient permissions
Description
Rule not found
References
#/components/schemas/EscalationCondition#/components/schemas/EscalationRule#/components/schemas/EscalationRuleDetailed
#/components/schemas/EscalationCondition
type: objectrequired: - field - operator - valueproperties: field: type: string description: Ticket field to evaluate operator: type: string enum: - equals - not_equals - contains - not_contains - greater_than - less_than - greater_than_or_equal - less_than_or_equal - in - not_in value: description: Value to compare against|export interface EscalationCondition { /** Ticket field to evaluate */ field: string; operator: | "equals" | "not_equals" | "contains" | "not_contains" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in"; /** Value to compare against */ value: any;}#/components/schemas/EscalationRule
type: objectproperties: id: type: string name: type: string description: type: string nullable: true enabled: type: boolean priority: type: string enum: - urgent - high - medium - low - all conditions: type: array items: $ref: "#/components/schemas/EscalationCondition" escalateAfterMinutes: type: integer description: Time threshold in minutes escalateTo: type: string enum: - manager - team - specific_user - rotation escalateToUserId: type: string nullable: true escalateToTeamId: type: string nullable: true escalateToRotationId: type: string nullable: true notificationChannels: type: array items: type: string enum: - email - sms - slack - in_app businessHoursOnly: type: boolean addInternalNote: type: boolean internalNoteTemplate: type: string nullable: true createdBy: type: string createdAt: type: string format: date-time updatedAt: type: string format: date-time updatedBy: type: string nullable: true|export interface EscalationRule { id?: string; name?: string; description?: string; enabled?: boolean; priority?: "urgent" | "high" | "medium" | "low" | "all"; conditions?: EscalationCondition[]; /** Time threshold in minutes */ escalateAfterMinutes?: number; escalateTo?: "manager" | "team" | "specific_user" | "rotation"; escalateToUserId?: string; escalateToTeamId?: string; escalateToRotationId?: string; notificationChannels?: "email" | "sms" | "slack" | "in_app"[]; businessHoursOnly?: boolean; addInternalNote?: boolean; internalNoteTemplate?: string; createdBy?: string; createdAt?: Date; updatedAt?: Date; updatedBy?: string;}#/components/schemas/EscalationRuleDetailed
allOf: - type: object properties: id: type: string name: type: string description: type: string nullable: true enabled: type: boolean priority: type: string enum: - urgent - high - medium - low - all conditions: type: array items: $ref: "#/components/schemas/EscalationCondition" escalateAfterMinutes: type: integer description: Time threshold in minutes escalateTo: type: string enum: - manager - team - specific_user - rotation escalateToUserId: type: string nullable: true escalateToTeamId: type: string nullable: true escalateToRotationId: type: string nullable: true notificationChannels: type: array items: type: string enum: - email - sms - slack - in_app businessHoursOnly: type: boolean addInternalNote: type: boolean internalNoteTemplate: type: string nullable: true createdBy: type: string createdAt: type: string format: date-time updatedAt: type: string format: date-time updatedBy: type: string nullable: true fromRef: "#/components/schemas/EscalationRule" - type: object properties: statistics: type: object properties: totalEscalations: type: integer description: Total number of escalations triggered lastEscalatedAt: type: string format: date-time nullable: true description: Last escalation timestamp averageEscalationTime: type: number description: Average time to escalation in minutes|export interface EscalationRuleDetailed_AllOf_0 { id?: string; name?: string; description?: string; enabled?: boolean; priority?: "urgent" | "high" | "medium" | "low" | "all"; conditions?: EscalationCondition[]; /** Time threshold in minutes */ escalateAfterMinutes?: number; escalateTo?: "manager" | "team" | "specific_user" | "rotation"; escalateToUserId?: string; escalateToTeamId?: string; escalateToRotationId?: string; notificationChannels?: "email" | "sms" | "slack" | "in_app"[]; businessHoursOnly?: boolean; addInternalNote?: boolean; internalNoteTemplate?: string; createdBy?: string; createdAt?: Date; updatedAt?: Date; updatedBy?: string;}
export interface EscalationRuleDetailed_AllOf_1 { statistics?: { totalEscalations?: number; lastEscalatedAt?: Date; averageEscalationTime?: number; };}
export type EscalationRuleDetailed = EscalationRuleDetailed_AllOf_0 & EscalationRuleDetailed_AllOf_1;Route Source Code
Check out the source code for this route entrypoint here: /tickets/escalation-rules/[id]/route.ts
Or the swagger.yaml spec this documentation was generated from:
/tickets/escalation-rules/swagger.yaml