Package Exports
- n8n-nodes-service-desk-plus
- n8n-nodes-service-desk-plus/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (n8n-nodes-service-desk-plus) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
n8n ServiceDesk Plus Node - Enhanced Integration
A comprehensive n8n node for ManageEngine ServiceDesk Plus integration with advanced conversation management, reply functionality, and AI automation capabilities.
🚀 Features
Core Operations
- ✅ Create Ticket - Create new service desk tickets
- ✅ Update Ticket - Modify existing ticket properties
- ✅ Get Ticket - Retrieve detailed ticket information
- ✅ List Tickets - Browse tickets with filtering capabilities
- ✅ Add Reply - Reply to ticket conversations with advanced targeting
- ✅ Get Conversations - Retrieve complete conversation history
📎 Attachment Management (NEW!)
- ✅ Upload Attachment - Upload files to tickets with descriptions
- ✅ Download Attachment - Download attachments with configurable paths
- ✅ List Attachments - Retrieve all attachments for a ticket
- ✅ Delete Attachment - Remove attachments from tickets
- 🔒 Secure File Handling - Proper error handling and validation
Advanced Reply Features
- 🎯 Reply to First Message - Target initial web-created messages
- 🎯 Reply to Latest Message - Respond to most recent conversation
- 🎯 Reply to Specific Message - Target any message by ID
- 🔒 Public/Private Replies - Control reply visibility
AI Integration
- 🤖 10 AI-Accessible Tools for intelligent automation
- 🤖 Smart Ticket Triage - AI can categorize and assign tickets
- 🤖 Automated Status Updates - AI-driven progress monitoring
- 🤖 Intelligent Reply Generation - Context-aware responses
- 🤖 Attachment Intelligence - AI-powered file management
📦 Installation
Prerequisites
- n8n instance (self-hosted or cloud)
- ManageEngine ServiceDesk Plus with API access
- Valid API credentials (Base URL + Auth Token)
Install via npm
npm install n8n-nodes-service-desk-plusManual Installation
- Clone this repository
- Install dependencies:
npm install - Build the node:
npm run build - Link to your n8n installation
⚙️ Configuration
1. Create ServiceDesk Plus API Credentials
- Navigate to n8n → Credentials
- Create new "ServiceDesk Plus API" credential
- Configure the following:
{
"baseUrl": "https://your-domain.servicedeskplus.com/api/v3",
"authToken": "your-api-token-here"
}2. Add Node to Workflow
- Search for "ServiceDesk Plus" in the node palette
- Drag and drop into your workflow
- Select your configured credentials
- Choose your desired operation
🎯 Usage Examples
Create a New Ticket
{
"operation": "create",
"subject": "Laptop not starting",
"description": "User reports laptop won't boot after Windows update",
"email_id": "user@company.com",
"service_category": "01. PC/Laptop"
}Reply to First Message (Web-Created Ticket)
{
"operation": "addReply",
"ticketId": "12345",
"replyContent": "Thank you for reporting this issue. We are investigating and will provide an update within 2 hours.",
"replyToMessage": "first",
"isPublic": true
}Get Ticket Conversations
{
"operation": "getConversations",
"ticketId": "12345"
}List Open Tickets
{
"operation": "listTickets",
"limit": 20,
"statusFilter": "Open"
}🤖 AI Automation Examples
Intelligent Ticket Triage
// AI automatically categorizes and responds to new tickets
const ticket = await createServiceDeskTicket({
subject: "Email not working",
description: "Cannot send or receive emails since this morning",
email_id: "user@company.com",
service_category: "16. IT System and Mail" // AI determines category
});
// AI provides immediate acknowledgment
const reply = await addReplyToTicket({
ticketId: ticket.ticketId,
replyContent: "Thank you for reporting the email issue. Our team is investigating and will provide an update within 2 hours.",
replyToMessage: "first",
isPublic: true
});Automated Status Monitoring
// AI monitors and updates ticket progress
const tickets = await listServiceDeskTickets({
statusFilter: "In Progress",
limit: 50
});
for (const ticket of tickets.tickets) {
const conversations = await getTicketConversations({
ticketId: ticket.id
});
// AI determines if update is needed
if (shouldProvideUpdate(conversations)) {
await addReplyToTicket({
ticketId: ticket.id,
replyContent: "Status update: We are still working on your request and expect resolution by end of day.",
replyToMessage: "latest",
isPublic: true
});
}
}📋 Supported Service Categories
The node supports 21 predefined service categories:
- PC/Laptop
- Office Application
- Printer&Scanner
- IT Peripheral
- LED Monitor
- Television
- Merdeka System Apps
- File Server
- Network
- Radio HT
- Deskphone
- Access Card
- CCTV
- IT Service Request Form
- Other
- IT System and Mail
- IT Project Related to System
- IT Project Related to Network
- Preventive Maintenance Support
- Preventive Maintenance Network
- Document Control
🔧 API Operations
| Operation | Method | Endpoint | Purpose |
|---|---|---|---|
| Create Ticket | POST | /requests |
Create new ticket |
| Update Ticket | PUT | /requests/{id} |
Update ticket properties |
| Get Ticket | GET | /requests/{id} |
Retrieve ticket details |
| List Tickets | GET | /requests |
List tickets with filters |
| Add Reply | POST | /requests/{id}/conversations |
Add conversation reply |
| Get Conversations | GET | /requests/{id}/conversations |
Get ticket conversations |
| Add Resolution | POST | /requests/{id}/resolutions |
Add ticket resolution |
🛠️ Development
Prerequisites
- Node.js 16+
- TypeScript
- n8n development environment
Setup
# Clone the repository
git clone https://github.com/your-username/n8n-nodes-service-desk-plus.git
cd n8n-nodes-service-desk-plus
# Install dependencies
npm install
# Build the node
npm run build
# Run type checking
npm run type-checkProject Structure
n8n-nodes-service-desk-plus/
├── src/
│ ├── ServiceDeskPlus.node.ts # Main node implementation
│ ├── ServiceDeskPlus.node.json # Node metadata
│ ├── credentials/
│ │ └── ServiceDeskPlusApi.credentials.ts # Credential definition
│ ├── typings/
│ │ └── n8n-extensions.d.ts # Type definitions
│ └── serviceDeskPlus.svg # Node icon
├── docs/
│ └── journal.md # Development journal
├── package.json
├── tsconfig.json
└── README.md🔍 Troubleshooting
Common Issues
Connection Problems
- ✅ Verify base URL format:
https://your-domain.servicedeskplus.com/api/v3 - ✅ Check API token validity and permissions
- ✅ Ensure network connectivity to ServiceDesk Plus instance
Reply Issues
- ✅ Verify ticket exists and is accessible
- ✅ Check conversation history before replying
- ✅ Use "first" or "latest" for automatic message targeting
Service Category Errors
- ✅ Use exact category names from the predefined list
- ✅ Check for typos or extra spaces
- ✅ Refer to the supported categories section above
Error Response Format
All operations return consistent error responses:
{
"success": false,
"error": "Detailed error message",
"operation": "operationName"
}📚 Documentation
- Development Journal - Detailed development progress and technical notes
- ManageEngine ServiceDesk Plus API Documentation
- n8n Node Development Guide
🤝 Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Development Guidelines
- Follow TypeScript best practices
- Maintain backward compatibility
- Add comprehensive error handling
- Update documentation for new features
- Run
npm run type-checkbefore submitting
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- n8n - Workflow automation platform
- ManageEngine ServiceDesk Plus - IT service management solution
- Community contributors and testers
📞 Support
- 🐛 Bug Reports: GitHub Issues
- 💬 Discussions: GitHub Discussions
- 📧 Email: support@yourcompany.com
Made with ❤️ for the n8n community
Last Updated: August 8, 2025 | Version: 2.0.0 (Enhanced)