Teambox Mantis Bridge - synchronizes tasks

These are some screenshots of what it looks like using the Teambox-Bugtracker-Bridge to synchronize tasks.

The software is coded in Python, and should be fairly easy to extend if want to have a different workflow. You can find the source code at

The bridge will synchronize all tasks from one or several specific tasklist in Teambox to Mantisbt (and back).
Any tasks in the other tasklists are ignored.

The python code uses the Mantisbt soap interface and the Teambox interface, so it does not have to run on the same server as either software.

Note that the project id in the configuration file should really be the numeric project id, but since it is hidden away in Teambox, you can simply enter the alphanumeric id from the url, and when starting the bridge it will look up what the numeric id is and asking you to enter that in the configuration file.
If you do not enter the numeric id, it would be an additional http request for every execution.

The bridge should be setup to run as a cron job every XXX minutes, where XXX is whatever you think makes sense (e.g. every 10 minutes).

What the bridge can do:

  • transfer tasks from any number of specific task lists in Teambox to Mantis
  • Transfer any notes / comments from/to Teambox/Mantis (in both directions)
  • Update any updated notes / comments on both sides
  • Tasks that are marked solves in Mantisbt will be moved to the "Resolved" task list in Teambox

  • In the screenshots below:
  • "Tom Thomson" is a normal user in Teambox
  • "Martin Moore" is a normal user in Mantis

  • We have four task lists:
  • "Needs to be investigated" - a task list that shall be ignored by the bridge
  • "High priority bugs" - another task list that we have configured the bridge to monitor
  • "Low priority bugs" - a task list that we have configured the bridge to monitor
  • "Resolved bugs" - when a bug is marked as resolved in Mantis, the teambox bug should automatically be moved over here
  • Original state of Teambox and Mantis

    The task in the none-tracked task list "Needs to be investigate" should be completly ignored, since we have only added the task list ids of "High priority bugs" and "Low priority bugs" to the configuration file.
    There is an existing task in Mantisbt that also should be ignored since it is not in any of the monitored lists in Teambox.

    Initial state of Teambox

    Initial state of the Mantis bugtracker

    First execution of the bridge, syncs all tasks from Teambox to Mantis

    Note that the bridge has added (mt:XXX) where XXX is the mantis bug number to the title of the Teambox tasks

    Teambox after initial execution of the bridge

    Mantis after first run of the bridge

    Viewing a single bug, note that it has added teambox id as description, and teambox id for each synced note from Teambox.
    The hash is used to determine if a note has been modified since last sync.

    Mantis, viewing a specific bug after first run of the bridge

    Adding a comment in Mantis to one of the tasks that were transferred

    Adding the comment:

    Adding a new comment to a bug in Mantis

    After executing the bridge:

    Teambox, what it looks like when the comment from Mantis was synchronized

    Adding another comment in Teambox as a reply to the comment from Mantis, and executing the bridge will transfer the comment over to Mantisbt:

    Mantisbt, when the note from Teambox has been synchronized

    Editing an old note / comment

    The mantis developer realizes his mistake and edits his old comment

    Mantisbt, the user edits an old note

    Synchronize it over to Teambox:

    Teambox, what it looks like when the edited comment from Mantis was synchronized

    The Teambox user also edits an old comment (note that you should have set in the Teambox preferences that notes should be able to edit even after the 15 minute limit)

    Teambox, editing an old note

    ... and after the bridge execution, the edited note is transferred from Teambox to Mantis:

    Mantisbt, synchronized the edited Teambox note

    Solving a task in Mantisbt

    The developer has made significant progress and actually solved the problem, and update the Mantis bug accordingly:

    Mantisbt, the task is solved

    when executing the bridge, the task is automatically transferred to the the "Resolved Bugs" task list in Teambox, note that it has added (mt:resolved) marker.

    Teambox, the solved mantis task is synced

    Re-opening a solved task in Teambox

    Unfortunately, the problem was not properly solved, the Teambox user moves it back to the bug list in Teambox and adds his comment:

    Teambox, task is moved from resolved back to the bug list

    and after execution the task has now changed status from "resolved" to "new":

    Mantisbt, status is changed from resolved to new

    See the github page for detailed information.