I recently needed to change ticketing systems to Unfuddle and didn't want to loose all of the historical information we had in the old system. I found that Terrence Ryan had created a open source project to hit the Unfuddle API. If you take a look at his RiaForge project Unfuddlecfc, you will see that it executes a backup of the project. This project was a great first stepping stone for me.
If you look at the attached file to this posting you will see an updated version of his project. It allows you to do almost everything to write your own transfer script (tickets, milestones, users, custom fields, account, backups, projects, versions, severity, components). The one thing that I could not get working was the files attached to tickets.
UPDATE Thanks to Terrence for giving me admin access for the RiaForge project I have now updated the project with my code. Please go to unfuddlecfc.riaforge.org to get the latest code.