Just to avoid confusion, I’ll talk about revisions (which uniquely identify a snap) instead of versions (which are descriptive).
Only somebody with developer access to the snap can install arbitrary revisions (and you need to have done snap login with the right user, of course). Otherwise you can only install the revisions that are listed in snap info, or any revisions that you might have installed but not active (i.e. what snap list --all <snap> shows). If you find yourself needing a revision that is not currently published to any channel you should reach out to the developer (they could create a branch, or even a track, for you — or they could give you the snap together with an assertion, that they can get with snap download --revision <revno> <snap>).