Registered installation limit

I was trying to prepare a reproducible example for my other topic and I was deleting and recreating XMTP database files.

Later I’ve got this error:

[Error: Cannot register a new installation because the InboxID a2738a78475d2f874b100badd3b3c9c3c61e7dfcf278bcbc9159a630010d674a has already registered 5/5 installations. Please revoke existing installations first.] {

I know there is a limit for maximum concurrent installations (I already had an opened issue related with that) but the problem is now I cannot initialize a new client anymore which prevents me to call client.revokeAllOtherInstallations() method.

Is there any solutions for this? Thanks!

@mkaramuk sorry for the delay here. We are rolling out another release today to give you a static function for revoking installations. Will communicate once that release is out. :folded_hands:

Hey @nplasterer, thanks for the information. Could you also correct me; Is that error related with the GitHub issue that I’ve mentioned? Will it be possible to delete all the installations that are made for an account so I won’t be tackled again to this?

@mkaramuk Ahh sorry no this is a new issue that was implemented in the latest release Set max installation size · Issue #2041 · xmtp/libxmtp · GitHub to help manage group size limits by controlling the amount of active installations a member has at one time.

hey @mkaramuk, we just released 3.0.0 of our Node and Browser SDKs.

it contains 2 new client static methods to help with revoking installations without a client instance.

use Client.inboxStateFromInboxIds to access the installation bytes, then use Client.revokeInstallations to revoke them.

documentation updates are still in progress, but the units tests should help with implementation.

2 Likes

@nplasterer @rygine Thanks for the update! I’ll check it out and implement soon.

Another question; So now the hard limit for the installations that an account can have is 5 and if I constantly delete the database files (like I mentioned in the other issue), also need to delete the corresponding installation as well, right?

I’ve implemented XMTP as communication protocol in my service like I explained in my other topic. That means the user is a “bot”.

In that case do you think would it be ok to implement a workflow where on the startup of the service it revokes all the installations that are not matched with the one that is being currently in use by the service. Would it lead any other issues? Thanks!

1 Like

You will eventually reach the 256 limit for identity updates and have to rotate your inboxId. You can read more about that here: Manage XMTP inboxes and installations – Build with XMTP