What automation with Redmine actually means
Redmine's core ships with configurable per-tracker, per-role workflows and status transitions, but it does not include a built-in automation engine, outbound webhooks, or an "if this, then that" rule builder. Any event-driven automation — auto-assignment beyond a workflow's default, routing to Slack or Teams, syncing with another system — is built externally against Redmine's REST API, or through one of a small number of third-party plugins, not shipped in core.
We say this plainly up front, because a lot of "Redmine automation" work is really scheduled polling, not true event triggers.
In practice, we use Redmine's REST API to poll for issue and time-entry changes, and its own configurable workflows — status transitions, required fields, role-based permissions — to constrain what any external automation is allowed to do. Where a maintained plugin already covers a gap, such as basic issue-update webhooks, we use it instead of writing custom polling code.
Who this is for - IT operations and PMO teams already running Redmine who need specific, well-scoped automations and want a clear answer to which ones are real-time versus scheduled.
- Reassigning idle tickets via the REST API when a status-specific SLA has passed
- Polling Redmine for new issues and routing summaries to Slack or Teams, since Redmine core only sends its own email notifications
- Feeding Redmine time-entry data into invoicing or payroll systems on a schedule
- Auto-populating custom fields from CI/CD pipeline results via the API when a commit references an issue
- Evaluating whether a maintained webhook plugin covers a use case before building a polling script for it
- Running bulk status transitions and version closures through the REST API, respecting the same per-tracker workflow Redmine enforces for human users
- Scheduling exports of issue and project data for external BI or reporting tools
- Syncing Redmine issues with an external helpdesk or ticketing system via matched-ID API calls in both directions
- Reading assignee and due-date fields to trigger on-call paging when thresholds are crossed
- Documenting which automations are scheduled jobs versus genuine event triggers, so operators aren't surprised by a delay
None of this ships inside Redmine, so every automation here is external, versioned, and reviewed against Redmine's own permission model — and we tell you plainly which pieces are polling jobs rather than instant triggers.
Use cases
We begin with a short introductory paragraph that sets the stage for Redmine-driven automation in your environment. The following use cases illustrate practical, implementable scenarios:
- Automatically assign new inbound issues to the most appropriate backlog owner based on tags and Redmine custom fields
- Trigger build and deployment tickets when a commit is pushed, updating status in Redmine and notifying stakeholders
- Route overdue issues to the right queues using Redmine workweek calendars and SLA rules
- Aggregate weekly status reports from Redmine data and deliver them to a management dashboard
- Synchronize time-tracking entries with external billing systems through Redmine triggers
- Enforce field validation and state transitions automatically at issue creation in Redmine
- Auto-close stale tasks after defined inactivity, with Redmine reminders sent to owners
- Queue and retry failed automation steps within Redmine’s workflow engine
- Trigger escalation paths in Redmine when issues remain blocked beyond threshold
- Coordinate test runs and defect tickets across linked projects using Redmine relations
Redmine remains the controlling system for visibility and governance throughout these scenarios, ensuring actions are traceable and auditable.

