This documentation always describes the latest published version.
Live Demo: Try all plugins for OXID eShop, Shopware and osTicket by Markus Michalski live — no installation, no risk. demo.markus-michalski.net
The plugin extends osTicket's REST API. You can create tickets with a message format and a target department, update and delete tickets, retrieve and search them, read statistics, download attachments and manage parent-child relationships between tickets. Each API key gets its own permissions.
It suits integrations that need more than osTicket's standard API offers, for example support portals, bug trackers, automation platforms and monitoring systems.
| Page | Content |
|---|---|
| Installation | ZIP or Git, folder name, enabling, Apache and NGINX configuration, update and removal |
| Configuration | Plugin settings, API key permissions, best practices |
| API Documentation | All 12 endpoints with paths, parameters, status codes and examples |
| Troubleshooting | Error messages, known limitations, FAQ |
| Technical Details | Architecture, structure, database columns, security, tests |
| Feature | Description |
|---|---|
| Extended ticket creation | format (text, html, markdown), departmentId by name or ID, parentTicketNumber |
| Ticket update | Status, department, help topic, SLA, staff, due date, parent, internal note with attachments |
| Retrieve and search | Single ticket with thread and attachment metadata, search by subject, status and department with pagination |
| Delete | Permanent deletion, disabled by default |
| Statistics | Totals, per department, per staff member, and the list of statuses |
| Attachment download | Base64 response with metadata |
| Subtickets | Parent, children, link and unlink, requires the Subticket Manager plugin |
| API key permissions | Seven permissions per API key: the six columns added by the plugin plus osTicket's own can_create_tickets, set on the plugin page |
| Lookup by name | Department, status, help topic and SLA by name instead of ID, staff by ID, username or email address |
| Formats | JSON or XML for endpoints with a path parameter |
The plugin patches no osTicket core files.
| Requirement | Version | Notes |
|---|---|---|
| osTicket | 1.18.x | |
| PHP | 8.1 or higher | |
| Web server | Apache or NGINX | Apache is configured automatically via .htaccess |
Optional plugins:
| Plugin | Purpose |
|---|---|
| Markdown Support | Rendering of format=markdown |
| Subticket Manager | Required for the four subticket endpoints |
| API Key Wildcard | Wildcard IP validation for API keys. When installed, the standalone endpoints and the update route use its key validation. The create route POST /api/tickets.json does not call it |
This plugin is released under the GNU General Public License v2, compatible with osTicket core. See LICENSE.
For questions or issues, please create an issue on GitHub:
Issue Tracker: https://github.com/markus-michalski/osticket-api-endpoints/issues
When reporting issues, please include:
php -v)Developed by Markus Michalski. Contributions are welcome: fork the repository, create a feature branch and submit a pull request.
git clone https://github.com/markus-michalski/osticket-api-endpoints.git
cd osticket-api-endpoints
composer install
composer test