Receber por email
← Voltar para o catálogo

Autotask Tickets

Use this skill when working with Autotask tickets - creating, updating, searching, or managing service desk operations. Covers ticket fields, queues, statuses, priorities, SLAs, escalation rules, and workflow automations. Includes business logic for validation, SLA calculations, and metrics. Essential for MSP technicians handling service delivery through Autotask PSA.

31estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: Apache-2.0

Como adicionar

/plugin marketplace add wyre-technology/msp-claude-plugins

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/autotask-tickets/svg)](https://www.skillteca.com.br/skills/autotask-tickets)

Skills relacionadas

Ver todas de Automação →

Alerta por categoria

Receba novas skills de Automação toda segunda

1 email curto, só com as skills novas de Automação. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Autotask Ticket Management

Overview

Autotask tickets are the core unit of service delivery in the PSA. Every client request, incident, problem, and change flows through the ticketing system. This skill covers comprehensive ticket management including business logic, SLA calculations, escalation rules, and performance metrics.

Ticket Status Codes

Based on the Autotask API, these are the standard ticket status values:

| Status ID | Name | Description | Business Logic | |-----------|------|-------------|----------------| | 1 | NEW | Newly created ticket | Default for new tickets, SLA clock starts | | 2 | IN_PROGRESS | Actively being worked | Resource should be assigned | | 5 | COMPLETE | Issue resolved | Requires resolution field, stops SLA | | 6 | WAITING_CUSTOMER | Awaiting customer response | SLA clock may pause | | 13 | WAITING_MATERIALS | Waiting for parts/equipment | SLA clock may pause | | 14 | ESCALATED | Escalated to higher tier | Requires escalation reason |

Status Transition Rules

NEW (1) ──────────────────────────────> COMPLETE (5)
   │                                        ↑
   ↓                                        │
IN_PROGRESS (2) ──────────────────────────>─┤
   │         │                              │
   │         ↓                              │
   │    WAITING_CUSTOMER (6) ──────────────>─┤
   │         │                              │
   │         ↓                              │
   │    WAITING_MATERIALS (13) ────────────>─┘
   │
   ↓
ESCALATED (14) ─────> IN_PROGRESS (2) ────> COMPLETE (5)

Validation Rules:

  • Completing directly from NEW generates a warning
  • COMPLETE requires resolution field
  • ESCALATED requires escalation reason
  • IN_PROGRESS should have assigned resource

Ticket Priority Levels

| Priority ID | Name | Response SLA | Resolution SLA | Business Context | |-------------|------|--------------|----------------|------------------| | 4 | CRITICAL | 1 hour | 4 hours | Complete business outage | | 3 | HIGH | 2 hours | 8 hours | Major productivity impact | | 2 | MEDIUM | 4 hours | 24 hours | Single user/workaround exists | | 1 | LOW | 8 hours | 72 hours | Minor issue/enhancement |

Note: In Autotask, lower numbers = lower priority. Priority 4 is most urgent.

Complete Ticket Field Reference

Core Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | id | int | System | Auto-generated unique identifier | | ticketNumber | string | System | Human-readable (e.g., T20240215.0001) | | title | string(255) | Yes | Brief issue summary | | description | text | No | Detailed description | | companyID | int | Yes | Company/account reference | | companyLocationID | int | No | Site/location within company | | contactID | int | No | Primary contact for ticket |

Classification Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | status | int | Yes | Current status (see codes above) | | priority | int | Yes | Urgency level (1-4) | | queueID | int | Yes | Service queue for routing | | issueType | int | No | Primary category | | subIssueType | int | No | Sub-category | | ticketType | int | No | Service Request, Incident, Problem, Change | | ticketCategory | int | No | Additional categorization |

Assignment Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | assignedResourceID | int | No | Technician assigned | | assignedResourceRoleID | int | No | Role for billing | | creatorResourceID | int | System | Who created the ticket | | lastActivityResourceID | int | System | Last person to update |

SLA & Timeline Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | createDate | datetime | System | When ticket was created | | dueDateTime | datetime | No | SLA due date/time | | completedDate | datetime | System | When marked complete | | firstResponseDateTime | datetime | System | First response timestamp | | resolutionPlanDateTime | datetime | No | Expected resolution time | | resolvedDateTime | datetime | System | Actual resolution time | | lastActivityDate | datetime | System | Last update timestamp |

Contract & Billing Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | contractID | int | No | Associated contract | | contractServiceID | int | No | Specific service on contract | | contractServiceBundleID | int | No | Service bundle | | estimatedHours | decimal | No | Estimated effort | | hoursToBeScheduled | decimal | No | Hours remaining |

Resolution Fields

| Field | Type | Required | Description | |-------|------|----------|-------------| | resolution | text | Conditional | Required when completing | | resolutionType | int | No | Resolution category |

SLA Calculation Logic

Default SLA Times by Priority

const SLA_DEFAULTS = {
  CRITICAL: { response: 1, resolution: 4 },   // hours
  HIGH:     { response: 2, resolution: 8 },
  MEDIUM:   { response: 4, resolution: 24 },
  LOW:      { response: 8, resolution: 72 }
};

SLA Calculation Example

// Calculate SLA due dates
function calculateSLADueDate(ticket, contractSLA) {
  const now = new Date();
  const priority = ticket.priority || 2; // Default to MEDIUM

  // Use contract SLA if available, otherwise defaults
  const responseHours = contractSLA?.responseTimeHours || SLA_DEFAULTS[priority].response;
  const resolutionHours = contractSLA?.resolutionTimeHours || SLA_DEFAULTS[priority].resolution;

  return {
    responseBy: addHours(now, responseHours),
    resolveBy: addHours(now, resolutionHours),
    businessHoursOnly: true
  };
}

SLA Clock Behavior

| Status | SLA Clock | |--------|-----------| | NEW | Running | | IN_PROGRESS | Running | | WAITING_CUSTOMER | Paused (configurable) | | WAITING_MATERIALS | Paused (configurable) | | ESCALATED | Running | | COMPLETE | Stopped |

Escalation Rules

Automatic Escalation Triggers

function checkEscalationRules(ticket) {
  const reasons = [];
  const now = new Date();

  // SLA Violation
  if (ticket.dueDateTime && new Date(ticket.dueDateTime) < now) {
    const hoursOverdue = Math.floor(
      (now - new Date(ticket.dueDateTime)) / (1000 * 60 * 60)
    );
    reasons.push(`SLA violated by ${hoursOverdue} hours`);
    escalationLevel = Math.min(3, Math.floor(hoursOverdue / 4) + 1);
  }

  // Stale Waiting Status
  if (ticket.status === 6 && ticket.lastActivityDate) {
    const daysSinceActivity = Math.floor(
      (now - new Date(ticket.lastActivityDate)) / (1000 * 60 * 60 * 24)
    );
    if (daysSinceActivity > 7) {
      reasons.push(`No customer response for ${daysSinceActivity} days`);
    }
  }

  // Critical Without Assignment
  if (ticket.priority === 4 && !ticket.assignedResourceID) {
    reasons.push('Critical ticket without assigned resource');
  }

  return { requiresEscalation: reasons.length > 0, reasons };
}

Escalation Levels

| Level | Trigger | Action | |-------|---------|--------| | 1 | SLA 0-4 hours overdue | Notify assigned resource | | 2 | SLA 4-8 hours overdue | Notify team lead | | 3 | SLA 8+ hours overdue | Notify management |

Ticket Metrics & KPIs

Key Performance Indicators

function calculateTicketMetrics(tickets) {
  const completedTickets = tickets.filter(t => t.status === 5);

  // Average Resolution Time (hours)
  const avgResolutionTime = completedTickets.reduce((sum, t) => {
    if (t.createDate && t.completedDate) {
      return sum + (new Date(t.completedDate) - new Date(t.createDate));
    }
    return sum;
  }, 0) / completedTickets.length / (1000 * 60 * 60);

  // SLA Compliance Rate
  const ticketsWithSLA = tickets.filter(t => t.dueDateTime);
  const slaCompliant = ticketsWithSLA.filter(t => {
    if (t.status === 5) {
Compartilhar X LinkedIn