The file path for the .tde is contained in the XML definition of the tableau workbook, so it is conceivable that you could programatically change the XML to point to different files on the fly (though this would be a rather difficult process on Tableau Server). Or using a live connection, you could parameterize a custom SQL statement to point to different connections.
The simplest solution might be to have two duplicate versions of the workbook each pointing to a different data source. The portal could determine which workbook to use "on the fly".
Thanks Joshua. Unfortunately, we need to cover too many cases to just make alternate copies of the dashboards, but editing the XML file is an interesting possibility that I'm going to look into further. Either way you answered my main question, which was whether or not this was something the API would just handle for me, so huge thanks!