NinjaOne Ticket Management
Overview
NinjaOne includes a built-in ticketing system that integrates with device monitoring. Tickets can be manually created or auto-generated from alerts, providing a complete service desk solution.
API Endpoints
Create Ticket
POST /api/v2/ticketing/ticket
Content-Type: application/json
Authorization: Bearer {token}
{
"clientId": 123,
"subject": "Server disk space critical",
"description": "C: drive on SERVER-01 is at 95% capacity",
"priority": "HIGH",
"status": "OPEN",
"assignedTechnicianId": 456,
"deviceId": 789,
"tags": ["disk", "server", "critical"]
}
Update Ticket
PUT /api/v2/ticketing/ticket/{ticketId}
Content-Type: application/json
{
"status": "IN_PROGRESS",
"priority": "MEDIUM",
"assignedTechnicianId": 456
}
Get Ticket Log Entries
GET /api/v2/ticketing/ticket/{ticketId}/log-entry
Returns all log entries (comments, status changes, time entries) for a ticket.
Ticket Fields
Core Fields
| Field | Type | Required | Description |
|---|
id | integer | System | Auto-generated ID |
subject | string | Yes | Brief issue summary |
description | text | No | Detailed description |
clientId | integer | Yes | Organization ID |
deviceId | integer | No | Related device |
Status Fields
| Field | Type | Description |
|---|
status | string | Current ticket status |
priority | string | Urgency level |
assignedTechnicianId | integer | Assigned tech |
Metadata
| Field | Type | Description |
|---|
tags | array | Categorization tags |
createTime | datetime | Creation timestamp |
updateTime | datetime | Last modified |
Status Values
| Status | Description |
|---|
OPEN | New ticket, awaiting triage |
IN_PROGRESS | Actively being worked |
WAITING | Waiting for customer/vendor |
ON_HOLD | Paused pending action |
RESOLVED | Issue resolved |
CLOSED | Ticket complete |
Priority Levels
| Priority | Description | SLA Target |
|---|
CRITICAL | Business down | Immediate |
HIGH | Major impact | 1 hour |
MEDIUM | Moderate impact | 4 hours |
LOW | Minor issue | 24 hours |
NONE | No urgency | Best effort |
Log Entries
Log entries track all ticket activity:
Entry Types
| Type | Description |
|---|
COMMENT | Public or private comment |
STATUS_CHANGE | Status transition |
ASSIGNMENT | Technician assignment change |
TIME_ENTRY | Logged work time |
Log Entry Structure
{
"id": 123,
"type": "COMMENT",
"content": "Investigated and found corrupted index",
"public": false,
"createdBy": {
"id": 456,
"name": "John Tech"
},
"createTime": "2024-02-15T14:30:00Z"
}
Common Workflows
Create Ticket from Alert
- Receive alert notification
- Get device and organization context
- Create ticket with device linked
- Add alert details to description
- Set priority based on alert severity
- Assign to appropriate technician
Ticket Resolution Flow
- Update status to IN_PROGRESS
- Add log entries documenting work
- Log time entries for billing
- Update status to RESOLVED
- Add resolution notes
- Close ticket
Escalation Workflow
- Review ticket age and SLA
- Update priority if needed
- Reassign to senior tech
- Add escalation note
- Notify stakeholders
Integration with Devices
Link tickets to devices for context:
{
"subject": "Outlook crashes repeatedly",
"deviceId": 12345,
"description": "User reports Outlook crashes when opening attachments"
}
Benefits:
- Quick access to device details
- View device alerts in ticket context
- Run remote actions from ticket
Tags for Categorization
{
"tags": [
"email",
"outlook",
"crash",
"user-reported"
]
}
Common tag patterns:
- Issue type:
hardware, software, network
- Application:
outlook, office, vpn
- Source:
user-reported, alert, scheduled
- Priority override:
vip, urgent
Best Practices
- Link to devices - Provides context and quick actions
- Use descriptive subjects - Include who, what, where
- Log all work - Essential for billing and knowledge
- Update status promptly - Keeps queues accurate
- Use tags consistently - Enables better reporting
- Document resolution - Helps with future issues
Error Handling
| Code | Description | Resolution |
|---|
| 400 | Invalid request | Check required fields |
| 404 | Ticket not found | Verify ticket ID |
| 403 | Access denied | Check organization permissions |
| 422 | Validation error | Review field values |
Related Skills