How to handle same bot for multiple companies in Production?

Hello all…! We have developed a bot for a B2B company which they would be handling over to their clients and each of their clients customers will be our Bots User. Now the issue we are facing is, the B2B company ,our client, is having multiple companies as their clients. So a bot made will be given to multiple companies.And each company will have their own user base. So should we build seperate bots for each company and deploy it on different instances? Or Can we use the same bot for N different companies ??keeping the rasa nlu instance same and different for each company?

What is the preferred way with Rasa? @Juste If you could help on this?

I am also curious about the answer to this question. As far as I understand you can only set one endpoint per channel. What is a good (hacky) way to serve multiple endpoints per channel?

1 Like

Hey @pranay_raj @Johan1us

Generally speaking, yes, you can enable > 1 connector at a time. But IMO opinion it’s a good idea to physically separate bot deployments for different target big-user bases.

I’d also think about the potential load on a system here. Have you tried rolling the bot into prod and checking the average response times?


Hey @degiz, Thanks a lot for your response.

How could we enable more than 1 connector at a time?? Currently the user base is not actually very huge but it may grow eventually.

We haven’t rolled out on production env yet(but we are on the edge for it), but for the staging env or lower env response time is within ms, If that helps.



Hi @degiz,

Yes, thank you for your quick response.

The use case I have in mind is as follows: I want to create a virtual assistant for multiple agents. Each agent has his own facebook page. The agents do roughly the same job, individually the services offered may differ slightly from each other, but the basis is the same.

The virtual assistant will help a maximum of 8 users per agent. This is not a huge workload. Therefore it is cheaper if all these agents can share the cpu and ram of a single server. Otherwise a separate server has to be set up for each agent, which is much more expensive.

What I hope for is that multiple facebook pages can be connected to the virtual agent via for example credentials.yml. The virtual assistant recognizes which facebook page the messages come from and acts accordingly.

For example for agent 1 the services A, B, C are offered and for agent 2 the services A, C, D are offered.

Two options I’m thinking about are:

  • one server has one virtual assistant with multiple agents or
  • one server has multiple virtual assists with one agent

What do you think is the most convenient approach?