Hi,
I've seen this a few times but don't seem to have a definite answer. This is concerning exporting a bot from one tenant to another.
The Scenario
Aim:
- Tenant A is our development tenant (including testing etc). Tenant B is a customer's tenant.
- Want to move/recreate the bot currently in Tenant A, in Tenant B.
- The bot is part of a solution, along with the Power Automate flows.
Content:
- Bot in Tenant A has:
- 2 Topics
- 1 Custom Connector (used by one of the topics) via Power Automate (created in PA via Virtual Agents).
- Bot in Tenant B is empty (for the purpose of this example)
Issue:
Exporting from Tenant A and Importing to Tenant B causes issues with the connector. The issue being that when imported, the connector is broken as it appears to be looking for the reference ID of the connector in Tenant A, which does not exist in Tenant B. You cannot select an alternative connector during the import process. You cannot point it to an alternative connector after import.
Our Current Workaround:
- We are exporting from Tenant A
- We create a connector in Tenant B, with the same functionality of the connector in Tenant A.
- We are then opening the exported XML and JSON files in a text editor, searching for any reference ID's for the connectors from Tenant A, and altering them to be the ID of the relevant connector in Tenant B.
- We then import the solution and in theory it works, as it is now looking for a connector (via its ID) that exists in Tenant B already (rather than it looking for the connector ID that only exists in Tenant A).
Now, that's a bit of a pain in the above example. When the bot gets built out more it becomes a massive hurdle and more open to human error. We end up having to alter ID's in lots of different places within the XML and JSON files. For example, every topic/flow JSON file that uses a connector, requires it to be altered.
Is there an inherent/already built in way to do this that we've missed? Is there an alternative method? How can we successfully import a bot to another tenant that uses custom connectors with as little pain as possible? 🙂
Thanks,
Jase